diff --git a/compiler/main/DriverPipeline.hs b/compiler/main/DriverPipeline.hs index 33c2ca06b961..d688d370e1bb 100644 --- a/compiler/main/DriverPipeline.hs +++ b/compiler/main/DriverPipeline.hs @@ -1200,6 +1200,10 @@ runPhase (RealPhase cc_phase) input_fn dflags output_fn <- phaseOutputFilename next_phase + -- we create directories for the object file, because it + -- might be a hierarchical module. + liftIO $ createDirectoryIfMissing True (takeDirectory output_fn) + let more_hcc_opts = -- on x86 the floating point regs have greater precision diff --git a/rts/RtsSymbols.c b/rts/RtsSymbols.c index 68f7a11c2bd1..f90fdedbae16 100644 --- a/rts/RtsSymbols.c +++ b/rts/RtsSymbols.c @@ -1038,6 +1038,6 @@ RtsSymbolVal rtsSyms[] = { // lazy pointers as nonlazy. { "dyld_stub_binding_helper", (void*)0xDEADBEEF, false }, #endif -#endif /* wasm32_HOST_ARCH */ +#endif /* __wasm__ */ { 0, 0, false } /* sentinel */ };