Hi
I just tried to upgrade to the latest Head which has a Windows
installer,
http://www.haskell.org/ghc/dist/current/dist/ghc-6.7.20070709-i386-unknown-mingw32.exe
First, it appears that GHC.Prim no longer exists, I can't :m it. I was
using it as the import location for RealWorld and State# - I've now
moved to using GHC.Base.
Second, when compiling the attached program (which is probably
familiar to you by now ;-) ), I get the thing at the bottom of this
message. -fasm works fine, but -fvia-C seems to have been broken.
Thanks
Neil
-----------------
C:\Neil\supero\test\charcount>ghc --make -O2 -fvia-C -o viac.exe 4.hs
[1 of 1] Compiling Main ( 4.hs, 4.o )
In file included from C:/ghc/ghc-6.7.20070709/include/Stg.h:150,
from C:\DOCUME~1\nj\LOCALS~1\Temp\ghc3836_0\ghc3836_0.hc:3:
C:/ghc/ghc-6.7.20070709/include/Regs.h:28:45: gmp.h: No such file or directory
In file included from C:/ghc/ghc-6.7.20070709/include/Stg.h:150,
from C:\DOCUME~1\nj\LOCALS~1\Temp\ghc3836_0\ghc3836_0.hc:3:
C:/ghc/ghc-6.7.20070709/include/Regs.h:119: error: syntax error before "MP_INT"
C:/ghc/ghc-6.7.20070709/include/Regs.h:119: warning: no semicolon at end of stru
ct or union
C:/ghc/ghc-6.7.20070709/include/Regs.h:120: warning: type defaults to `int' in d
eclaration of `rmp_tmp2'
C:/ghc/ghc-6.7.20070709/include/Regs.h:120: warning: data definition has no type
or storage class
C:/ghc/ghc-6.7.20070709/include/Regs.h:121: error: syntax error before "rmp_resu
lt1"
C:/ghc/ghc-6.7.20070709/include/Regs.h:121: warning: type defaults to `int' in d
eclaration of `rmp_result1'
C:/ghc/ghc-6.7.20070709/include/Regs.h:121: warning: data definition has no type
or storage class
C:/ghc/ghc-6.7.20070709/include/Regs.h:122: error: syntax error before "rmp_resu
lt2"
C:/ghc/ghc-6.7.20070709/include/Regs.h:122: warning: type defaults to `int' in d
eclaration of `rmp_result2'
C:/ghc/ghc-6.7.20070709/include/Regs.h:122: warning: data definition has no type
or storage class
C:/ghc/ghc-6.7.20070709/include/Regs.h:125: error: syntax error before '}' token
C:/ghc/ghc-6.7.20070709/include/Regs.h:125: warning: type defaults to `int' in d
eclaration of `StgRegTable'
C:/ghc/ghc-6.7.20070709/include/Regs.h:125: warning: data definition has no type
or storage class
C:/ghc/ghc-6.7.20070709/include/Regs.h:334: error: syntax error before "StgRegTa
ble"
C:/ghc/ghc-6.7.20070709/include/Regs.h:334: warning: no semicolon at end of stru
ct or union
C:/ghc/ghc-6.7.20070709/include/Regs.h:353: error: syntax error before '*' token
C:/ghc/ghc-6.7.20070709/include/Regs.h:353: warning: type defaults to `int' in d
eclaration of `BaseReg'
C:/ghc/ghc-6.7.20070709/include/Regs.h:353: error: register name given for non-r
egister variable 'BaseReg'
C:/ghc/ghc-6.7.20070709/include/Regs.h:353: warning: data definition has no type
or storage class
In file included from C:/ghc/ghc-6.7.20070709/include/Stg.h:162,
from C:\DOCUME~1\nj\LOCALS~1\Temp\ghc3836_0\ghc3836_0.hc:3:
C:/ghc/ghc-6.7.20070709/include/RtsExternal.h:45: error: syntax error before '*'
token
C:/ghc/ghc-6.7.20070709/include/RtsExternal.h:62: error: syntax error before '*'
token
C:/ghc/ghc-6.7.20070709/include/RtsExternal.h:63: error: syntax error before '*'
token
C:/ghc/ghc-6.7.20070709/include/RtsExternal.h:63: warning: type defaults to `int
' in declaration of `resumeThread'
C:/ghc/ghc-6.7.20070709/include/RtsExternal.h:63: warning: data definition has n
o type or storage class
C:/ghc/ghc-6.7.20070709/include/RtsExternal.h:66: error: syntax error before '*'
token
C:/ghc/ghc-6.7.20070709/include/RtsExternal.h:124: error: syntax error before '*
' token
C:\DOCUME~1\nj\LOCALS~1\Temp\ghc3836_0\ghc3836_0.hc: In function `rF0_entry':
C:\DOCUME~1\nj\LOCALS~1\Temp\ghc3836_0\ghc3836_0.hc:27: error: request for membe
r `rSpLim' in something not a structure or union
C:\DOCUME~1\nj\LOCALS~1\Temp\ghc3836_0\ghc3836_0.hc: In function `r1uj_entry':
C:\DOCUME~1\nj\LOCALS~1\Temp\ghc3836_0\ghc3836_0.hc:110: error: request for memb
er `rSpLim' in something not a structure or union
C:\DOCUME~1\nj\LOCALS~1\Temp\ghc3836_0\ghc3836_0.hc: In function `r1ul_entry':
C:\DOCUME~1\nj\LOCALS~1\Temp\ghc3836_0\ghc3836_0.hc:202: error: request for memb
er `rSpLim' in something not a structure or union
C:\DOCUME~1\nj\LOCALS~1\Temp\ghc3836_0\ghc3836_0.hc: In function `r1up_entry':
C:\DOCUME~1\nj\LOCALS~1\Temp\ghc3836_0\ghc3836_0.hc:249: error: request for memb
er `rHpLim' in something not a structure or union
C:\DOCUME~1\nj\LOCALS~1\Temp\ghc3836_0\ghc3836_0.hc:260: error: request for memb
er `rHpAlloc' in something not a structure or union
C:\DOCUME~1\nj\LOCALS~1\Temp\ghc3836_0\ghc3836_0.hc: In function `r1ur_entry':
C:\DOCUME~1\nj\LOCALS~1\Temp\ghc3836_0\ghc3836_0.hc:305: error: request for memb
er `rSpLim' in something not a structure or union
C:\DOCUME~1\nj\LOCALS~1\Temp\ghc3836_0\ghc3836_0.hc:307: error: request for memb
er `rHpLim' in something not a structure or union
C:\DOCUME~1\nj\LOCALS~1\Temp\ghc3836_0\ghc3836_0.hc:318: error: request for memb
er `rHpAlloc' in something not a structure or union
C:\DOCUME~1\nj\LOCALS~1\Temp\ghc3836_0\ghc3836_0.hc: In function `s1A4_ret':
C:\DOCUME~1\nj\LOCALS~1\Temp\ghc3836_0\ghc3836_0.hc:356: error: request for memb
er `rHpLim' in something not a structure or union
C:\DOCUME~1\nj\LOCALS~1\Temp\ghc3836_0\ghc3836_0.hc:365: error: request for memb
er `rHpAlloc' in something not a structure or union
C:\DOCUME~1\nj\LOCALS~1\Temp\ghc3836_0\ghc3836_0.hc:366: error: request for memb
er `rR9' in something not a structure or union
C:\DOCUME~1\nj\LOCALS~1\Temp\ghc3836_0\ghc3836_0.hc: In function `r1uv_entry':
C:\DOCUME~1\nj\LOCALS~1\Temp\ghc3836_0\ghc3836_0.hc:386: error: request for memb
er `rSpLim' in something not a structure or union
C:\DOCUME~1\nj\LOCALS~1\Temp\ghc3836_0\ghc3836_0.hc: In function `r1uB_entry':
C:\DOCUME~1\nj\LOCALS~1\Temp\ghc3836_0\ghc3836_0.hc:417: error: request for memb
er `rSpLim' in something not a structure or union
C:\DOCUME~1\nj\LOCALS~1\Temp\ghc3836_0\ghc3836_0.hc:419: error: request for memb
er `rHpLim' in something not a structure or union
C:\DOCUME~1\nj\LOCALS~1\Temp\ghc3836_0\ghc3836_0.hc:431: error: request for memb
er `rHpAlloc' in something not a structure or union
C:\DOCUME~1\nj\LOCALS~1\Temp\ghc3836_0\ghc3836_0.hc: In function `r1uD_entry':
C:\DOCUME~1\nj\LOCALS~1\Temp\ghc3836_0\ghc3836_0.hc:448: error: request for memb
er `rSpLim' in something not a structure or union
C:\DOCUME~1\nj\LOCALS~1\Temp\ghc3836_0\ghc3836_0.hc:450: error: request for memb
er `rHpLim' in something not a structure or union
C:\DOCUME~1\nj\LOCALS~1\Temp\ghc3836_0\ghc3836_0.hc:462: error: request for memb
er `rHpAlloc' in something not a structure or union
C:\DOCUME~1\nj\LOCALS~1\Temp\ghc3836_0\ghc3836_0.hc: In function `s1xw_entry':
C:\DOCUME~1\nj\LOCALS~1\Temp\ghc3836_0\ghc3836_0.hc:566: error: request for memb
er `rSpLim' in something not a structure or union
C:\DOCUME~1\nj\LOCALS~1\Temp\ghc3836_0\ghc3836_0.hc: In function `s1xu_entry':
C:\DOCUME~1\nj\LOCALS~1\Temp\ghc3836_0\ghc3836_0.hc:592: error: request for memb
er `rHpLim' in something not a structure or union
C:\DOCUME~1\nj\LOCALS~1\Temp\ghc3836_0\ghc3836_0.hc:600: error: request for memb
er `rHpAlloc' in something not a structure or union
C:\DOCUME~1\nj\LOCALS~1\Temp\ghc3836_0\ghc3836_0.hc: In function `s1x0_ret':
C:\DOCUME~1\nj\LOCALS~1\Temp\ghc3836_0\ghc3836_0.hc:671: error: request for memb
er `rHpLim' in something not a structure or union
C:\DOCUME~1\nj\LOCALS~1\Temp\ghc3836_0\ghc3836_0.hc:683: error: request for memb
er `rHpAlloc' in something not a structure or union
C:\DOCUME~1\nj\LOCALS~1\Temp\ghc3836_0\ghc3836_0.hc: In function `s1AX_ret':
C:\DOCUME~1\nj\LOCALS~1\Temp\ghc3836_0\ghc3836_0.hc:710: error: request for memb
er `rR2' in something not a structure or union
C:\DOCUME~1\nj\LOCALS~1\Temp\ghc3836_0\ghc3836_0.hc: In function `Main_a_entry':
C:\DOCUME~1\nj\LOCALS~1\Temp\ghc3836_0\ghc3836_0.hc:831: error: request for memb
er `rSpLim' in something not a structure or union
C:\DOCUME~1\nj\LOCALS~1\Temp\ghc3836_0\ghc3836_0.hc: In function `Main_a1_entry'
:
C:\DOCUME~1\nj\LOCALS~1\Temp\ghc3836_0\ghc3836_0.hc:880: error: request for memb
er `rSpLim' in something not a structure or union
-------
{-# OPTIONS_GHC -fffi -fglasgow-exts -cpp #-}
module Main(main) where
import System.IO.Unsafe
import System.IO
import Foreign.C.Types
import GHC.Base (realWorld#,State#,RealWorld)
import GHC.IOBase (IO(IO), unIO, unsafePerformIO)
main = IO main_generated
overlay_get_char = unIO $ do
c <- getchar
return $ fromIntegral c
system_IO_hPutChar h c = unIO $ hPutChar h (toEnum c)
foreign import ccall unsafe "stdio.h getchar" getchar :: IO CInt
foreign import ccall unsafe "ctype.h iswspace" isspace :: CInt -> CInt
typeRealWorld :: State# RealWorld -> State# RealWorld
typeRealWorld x = x
prelude_seq = seq
prelude_error x = error (map toEnum x)
aDD_W = (+) :: Int -> Int -> Int
eQ_W = (==) :: Int -> Int -> Bool
gT_W = (>) :: Int -> Int -> Bool
lT_W = (<) :: Int -> Int -> Bool
qUOT = quot :: Int -> Int -> Int
rEM = rem :: Int -> Int -> Int
nEG_W = negate :: Int -> Int
int_ x = x :: Int
chr_ x = fromEnum x
str_ x = map chr_ x
system_IO_stdin = stdin
system_IO_stdout = stdout
data_Char_isSpace c = isspace (toEnum c) /= 0
{- OLD PREFIX
inlinePerformIO :: IO a -> a
inlinePerformIO (IO m) = case m realWorld# of (# _, r #) -> r
main = main_generated `seq` (return () :: IO ())
overlay_get_char = unIO $ do
c <- getchar
return $ fromIntegral c
overlay_token = 0 :: Int
overlay_put_char h c = inlinePerformIO (hPutChar h (toEnum c) >>
overlay_get_char h = inlinePerformIO (getCharIO h)
-# NOINLINE getCharIO #-
getCharIO h = do
c <- getchar
return $ if c == (-1) then h `seq` (-1) else fromIntegral c
-}
prelude_1111_showPosInt v26421 v26422 =
let v6 = qUOT v26421 (int_ 10)
in case (eQ_W v6 (int_ 0)) of
True -> f29 v26421 v26422
False -> prelude_1111_showPosInt v6 (f29 v26421 v26422)
prelude_1111_showPosInt4 =
prelude_1111_showPosInt (int_ 0) prelude__LAMBDA6
prelude_942_ll24 v1 v2 =
case (overlay_get_char (typeRealWorld (typeRealWorld v2))) of
(# v5 :: State# RealWorld , v6 #) ->
case (eQ_W v6 (int_ (-1))) of
True -> v1
False ->
let v10 = aDD_W v1 (int_ 1)
in seq v10 (prelude_942_ll24 v10 (typeRealWorld v5))
prelude__LAMBDA6 = str_ ""
f15 v1 v2 =
case (str_ "") of
[] -> f7 v1
(:) v5 v6 -> f8 v2 v5 v6 v1
f16 v1 v2 v3 v4 =
case (system_IO_hPutChar v1 v2 (typeRealWorld v4)) of
(# v9 :: State# RealWorld , v10 #) ->
case v3 of
[] -> f15 v9 v1
(:) v10 v11 -> f16 v1 v10 v11 v9
f29 v1 v2 = (:) (aDD_W (int_ 48) (rEM v1 (int_ 10))) v2
f7 v1 = system_IO_hPutChar system_IO_stdout (chr_ '\n') v1
f8 v1 v2 v3 v4 =
case (system_IO_hPutChar v1 v2 (typeRealWorld v4)) of
(# v9 :: State# RealWorld , v10 #) ->
case v3 of
[] -> f7 v9
(:) v10 v11 -> f8 v1 v10 v11 v9
main_generated real =
case (overlay_get_char (typeRealWorld (typeRealWorld real))) of
(# v5 :: State# RealWorld , v6 #) ->
case (eQ_W v6 (int_ (-1))) of
True ->
case prelude_1111_showPosInt4 of
[] -> f7 (typeRealWorld v5)
(:) v3 v4 -> f8 system_IO_stdout v3 v4 (typeRealWorld v5)
False ->
let v7 = typeRealWorld v5
in let v8 =
let v8 = aDD_W (int_ 0) (int_ 1)
in seq v8 (prelude_942_ll24 v8 v7)
in case (lT_W v8 (int_ 0)) of
True ->
let v11 = system_IO_stdout
in case (system_IO_hPutChar
v11
(chr_ '-')
(typeRealWorld (typeRealWorld v7))) of
(# v9 :: State# RealWorld , v10 #) ->
case (eQ_W v8 (int_ (-2147483648))) of
True ->
case (str_ "2147483648") of
[] -> f15 v9 v11
(:) v7 v8 -> f16 v11 v7 v8 v9
False ->
case (prelude_1111_showPosInt
(nEG_W v8)
prelude__LAMBDA6) of
[] -> f7 v9
(:) v10 v12 -> f8 v11 v10 v12 v9
False ->
case (prelude_1111_showPosInt v8 prelude__LAMBDA6) of
[] -> f7 (typeRealWorld v7)
(:) v9 v10 -> f8 system_IO_stdout v9 v10 (typeRealWorld v7)
_______________________________________________
Cvs-ghc mailing list
[email protected]
http://www.haskell.org/mailman/listinfo/cvs-ghc