- do {
- outputForeignStubs c_code h_code ;
- case opt_OutputLanguage of {
- Nothing -> return () -- No -olang=xxx flag; so no-op
- ; Just "asm" -> outputAsm flat_abstractC ncg_uniqs
- ; Just "C" -> outputC flat_abstractC
- ; Just "java" -> outputJava mod_name tycons core_binds
- ; Just foo -> pprPanic "Don't understand output language" (quotes (text foo))
- } }
-
+ -- Dunno if the above comment is still meaningful now. JRS 001024.
+
+ do { showPass dflags "CodeOutput"
+ ; let filenm = dopt_OutName dflags
+ ; stub_names <- outputForeignStubs dflags c_code h_code
+ ; case dopt_HscLang dflags of
+ HscInterpreted -> return stub_names
+ HscAsm -> outputAsm dflags filenm flat_abstractC
+ >> return stub_names
+ HscC -> outputC dflags filenm flat_abstractC
+ >> return stub_names
+ HscJava -> outputJava dflags filenm mod_name tycons core_binds
+ >> return stub_names
+#ifdef ILX
+ HscILX -> outputIlx dflags filenm mod_name tycons stg_binds
+ >> return stub_names
+#endif
+ }