On Wed, May 28, 2003 at 10:12:02AM +0100, Simon Marlow wrote:
>
> > Objections?
>
> I wasn't aware of these problems with GCC 3.3. Could you give us a
> quick run down of the issues? Is there anything we can do about it?
There are case-expressions in IF_ARCH_foo-macros spanning mutliple lines.
When cpp strips the linefeeds, the syntax breaks (see bottom).
Shouldn't be too hard to fix, you could always fall back to explicit
{ ; }-syntax...I thought about looking into this, but only after WFLP in
two weeks.
[EMAIL PROTECTED] [11:20:52]> touch nativeGen/RegAllocInfo.lhs
Hsc static flags: -static -fignore-interface-pragmas -fomit-interface-pragmas
-fdo-lambda-eta-expansion -flet-no-escape
*** Literate pre-processor
/usr/local/lib/ghc-5.04.3/unlit -h nativeGen/RegAllocInfo.lhs
nativeGen/RegAllocInfo.lhs /tmp/ghc54695.lpp
*** C pre-processor
gcc -E -undef -traditional -v -I . -I . -I codeGen -I nativeGen -I parser -I
/usr/local/lib/ghc-5.04.3/include -D__HASKELL1__=5 -D__GLASGOW_HASKELL__=504
-D__HASKELL98__ -D__CONCURRENT_HASKELL__ -D'DEBUG' -DDONT_WANT_WIN32_DLL_SUPPORT -x c
/tmp/ghc54695.lpp -o /tmp/ghc54695.hscpp
Reading specs from /usr/local/lib/gcc-lib/i386-portbld-freebsd4.8/3.3/specs
Configured with: ./..//gcc-3.3/configure --disable-nls
--with-gxx-include-dir=/usr/local/lib/gcc-lib/i386-portbld-freebsd4.8/3.3/include/c++/3.3
--with-system-zlib --disable-shared --prefix=/usr/local i386-portbld-freebsd4.8
Thread model: posix
gcc version 3.3 [FreeBSD]
/usr/local/lib/gcc-lib/i386-portbld-freebsd4.8/3.3/cc1 -E -traditional-cpp -quiet -v
-I . -I . -I codeGen -I nativeGen -I parser -I /usr/local/lib/ghc-5.04.3/include
-D__GNUC__=3 -D__GNUC_MINOR__=3 -D__GNUC_PATCHLEVEL__=0 -D__HASKELL1__=5
-D__GLASGOW_HASKELL__=504 -D__HASKELL98__ -D__CONCURRENT_HASKELL__ -DDEBUG
-DDONT_WANT_WIN32_DLL_SUPPORT /tmp/ghc54695.lpp -o /tmp/ghc54695.hscpp -undef
ignoring nonexistent directory "/usr/local/i386-portbld-freebsd4.8/include"
ignoring duplicate directory "."
#include "..." search starts here:
#include <...> search starts here:
.
codeGen
nativeGen
parser
/usr/local/lib/ghc-5.04.3/include
/usr/local/include
/usr/local/lib/gcc-lib/i386-portbld-freebsd4.8/3.3/include
/usr/include
End of search list.
nativeGen/RegAllocInfo.lhs:228: warning: extra tokens at end of #endif directive
nativeGen/RegAllocInfo.lhs:337: warning: extra tokens at end of #endif directive
nativeGen/RegAllocInfo.lhs:389: warning: extra tokens at end of #endif directive
nativeGen/RegAllocInfo.lhs:437: warning: extra tokens at end of #endif directive
nativeGen/RegAllocInfo.lhs:563: warning: extra tokens at end of #endif directive
nativeGen/RegAllocInfo.lhs:585: warning: extra tokens at end of #endif directive
nativeGen/RegAllocInfo.lhs:607: warning: extra tokens at end of #endif directive
nativeGen/RegAllocInfo.lhs:618: warning: extra tokens at end of #endif directive
nativeGen/RegAllocInfo.lhs:689: warning: extra tokens at end of #endif directive
nativeGen/RegAllocInfo.lhs:780: warning: extra tokens at end of #endif directive
nativeGen/RegAllocInfo.lhs:823: warning: extra tokens at end of #endif directive
nativeGen/RegAllocInfo.lhs:869: warning: extra tokens at end of #endif directive
*** Checking old interface for hs = Just "nativeGen/RegAllocInfo.lhs", hspp = Just
"/tmp/ghc54695.hscpp":
*** Parser:
nativeGen/RegAllocInfo.lhs:917: parse error on input `->'
[EMAIL PROTECTED] [11:22:35]> tail /tmp/ghc54695.hscpp
loadReg vreg_to_slot_map delta vreg dyn
| isVirtualReg vreg
= let slot_no = vregToSpillSlot vreg_to_slot_map (getVRegUnique vreg)
off = spillSlotToOffset slot_no
in
let off_w = (off-delta) `div` 4 in case regClass
vreg of RcInteger -> MOV L (OpAddr (spRel off_w)) (OpReg
dyn) _ -> GLD F80 (spRel off_w) dyn --
RcFloat/RcDouble
# 968 "nativeGen/RegAllocInfo.lhs"
--
"Gemischte Materialien // Fr�her: Restm�ll"
Aufschrift auf einem Container, Informatik-Parkplatz
http://lambda.foldr.org/~vs/ * PGP * S/MIME
_______________________________________________
Cvs-ghc mailing list
[EMAIL PROTECTED]
http://www.haskell.org/mailman/listinfo/cvs-ghc