remove Sparse from dispatch for now, will add dispatch variants later
diff --git a/aten/src/ATen/dispatch_macros.py b/aten/src/ATen/dispatch_macros.py
index 1fb0b45..2bb9061 100644
--- a/aten/src/ATen/dispatch_macros.py
+++ b/aten/src/ATen/dispatch_macros.py
@@ -15,6 +15,8 @@
     -> decltype(F<double>::CPU(the_type,std::forward<Args>(args)...)) {
     switch(the_type.ID()) {
         ${cases}
+        default:
+            runtime_error("dispatch() not implemented for '%s'",the_type.toString());
     }
 }
 
@@ -25,7 +27,8 @@
 def create_dispatch(all_types):
     cases = []
     for typ in all_types:
-        cases.append(CASE_TEMPLATE.substitute(typ))
+        if typ['Density'] != 'Sparse':
+            cases.append(CASE_TEMPLATE.substitute(typ))
     return MACRO_TEMPLATE.substitute(cases=cases)
 
 
diff --git a/aten/src/ATen/test/scalar_test.cpp b/aten/src/ATen/test/scalar_test.cpp
index 861df10..ea03e38 100644
--- a/aten/src/ATen/test/scalar_test.cpp
+++ b/aten/src/ATen/test/scalar_test.cpp
@@ -18,8 +18,6 @@
   }
   static void CUDA(const Type & t, Tensor a, Tensor b) {
   }
-  static void SparseCUDA(const Type & t, Tensor a, Tensor b) {}
-  static void SparseCPU(const Type & t, Tensor a, Tensor b) {}
 };
 template<>
 struct Foo<Half> {