summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIan Lynagh <ian@well-typed.com>2012-09-16 13:40:22 +0100
committerIan Lynagh <ian@well-typed.com>2012-09-16 13:40:22 +0100
commit7f5af24fb2af9b0469c79180c72d78cb12e7358f (patch)
tree620b92de17d2df87d62dbba44b97c2d62f8ba602
parentc3f4c6fa3228102eaada6efde8049724461a3bb0 (diff)
downloadhaskell-7f5af24fb2af9b0469c79180c72d78cb12e7358f.tar.gz
Windows build fix
-rw-r--r--compiler/ghci/ByteCodeGen.lhs14
1 files changed, 8 insertions, 6 deletions
diff --git a/compiler/ghci/ByteCodeGen.lhs b/compiler/ghci/ByteCodeGen.lhs
index 59dfbc896e..e400d7afb7 100644
--- a/compiler/ghci/ByteCodeGen.lhs
+++ b/compiler/ghci/ByteCodeGen.lhs
@@ -22,7 +22,10 @@ import ByteCodeAsm
import ByteCodeLink
import LibFFI
+import Constants
+import DynFlags
import Outputable
+import Platform
import Name
import MkId
import Id
@@ -40,7 +43,6 @@ import TyCon
import Util
import VarSet
import TysPrim
-import DynFlags
import ErrUtils
import Unique
import FastString
@@ -1032,8 +1034,9 @@ generateCCall d0 s p (CCallSpec target cconv safety) fn args_r_to_l
void marshall_code ( StgWord* ptr_to_top_of_stack )
-}
-- resolve static address
- get_target_info
- = case target of
+ get_target_info = do
+ dflags <- getDynFlags
+ case target of
DynamicTarget
-> return (False, panic "ByteCodeGen.generateCCall(dyn)")
@@ -1044,11 +1047,10 @@ generateCCall d0 s p (CCallSpec target cconv safety) fn args_r_to_l
return (True, res)
where
stdcall_adj_target
-#ifdef mingw32_TARGET_OS
- | StdCallConv <- cconv
+ | OSMinGW32 <- platformOS (targetPlatform dflags)
+ , StdCallConv <- cconv
= let size = fromIntegral a_reps_sizeW * wORD_SIZE in
mkFastString (unpackFS target ++ '@':show size)
-#endif
| otherwise
= target