diff --git a/ghc/compiler/nativeGen/PprMach.lhs b/ghc/compiler/nativeGen/PprMach.lhs
index eddbe80d8f57739cd6d4888db4500c4ff9b57d76..22d74af17e26187ae92fbfc021b3599e222e27e3 100644
--- a/ghc/compiler/nativeGen/PprMach.lhs
+++ b/ghc/compiler/nativeGen/PprMach.lhs
@@ -477,12 +477,25 @@ pprInstr (DATA s xs)
   = vcat (concatMap (ppr_item s) xs)
     where
 #if alpha_TARGET_ARCH
+            ppr_item = error "ppr_item on Alpha"
+#if 0
             This needs to be fixed.
 	    B  -> SLIT("\t.byte\t")
 	    BU -> SLIT("\t.byte\t")
 	    Q  -> SLIT("\t.quad\t")
 	    TF -> SLIT("\t.t_floating\t")
 #endif
+#endif
+#if sparc_TARGET_ARCH
+            ppr_item = error "ppr_item on Sparc"
+#if 0
+            This needs to be fixed.
+	    B  -> SLIT("\t.byte\t")
+	    BU -> SLIT("\t.byte\t")
+	    W  -> SLIT("\t.word\t")
+    	    DF -> SLIT("\t.double\t")
+#endif
+#endif
 #if i386_TARGET_ARCH
 	ppr_item B  x = [text "\t.byte\t" <> pprImm x]
 	ppr_item L  x = [text "\t.long\t" <> pprImm x]
@@ -522,13 +535,6 @@ pprInstr (DATA s xs)
              )
 
 #endif
-#if sparc_TARGET_ARCH
-            This needs to be fixed.
-	    B  -> SLIT("\t.byte\t")
-	    BU -> SLIT("\t.byte\t")
-	    W  -> SLIT("\t.word\t")
-    	    DF -> SLIT("\t.double\t")
-#endif
 
 -- fall through to rest of (machine-specific) pprInstr...
 \end{code}