Stefan Westmeier writes:
> When compiling the ghc-2.04-src.tar.gz (without hi and hc files) with
> ghc-2.02 "gmake boot" gives the following error. It does not appear
> when removing the "," from withing the SLIT of this piece of code from
> TcSimplify.lhs from line 728:
>
> \begin{code}
> reduceErr insts sty
> = hang (ptext (SLIT("Context required by inferred type but missing on a type
>signature")))
> 4 (vcat (map (pprInst sty) (bagToList insts)))
> \end{code}
>
Hi,
thanks for the report, this one must not have been trivial to track
down (judging by the error msg you were given!). Could you try the
following in ghc/compiler and report back the output?
make depend EXTRA_MKDEPENDHS_OPTS="-v -optdep-v" HS_SRCS=typecheck/TcSimplify.lhs
I'll workaround the problem, but just want to know what/who's causing it?
(AFAIK, cpp should treat string literals as single tokens when
scanning a macro argument list, and therefore ignore commas embedded
in them).
>
> What does also not work is the following piece of code with Linux:
>
> "#!/bin/sh -- # to stop perl from looping "
>
> It is from target.mk and is put at front of some of the scripts like
> mkdependC ... replacing it with just
>
> "#!/usr/bin/perl"
>
> helped comming throught "gmake boot". The original version complained
> about the "--".
>
Sigh, this is a bug/feature (you pick) of the bash shell on your linux
box (which I'm guessing is doubling up as your /bin/sh), it just allows
one cmd-line option to be given on the #! line. This has been "fixed"
in bash-2.x, but it means that our way-cool scheme of invoking
perl (snaffled from the perlrun man page) is somewhat un-cool :-(
I'll put out a patch over the weekend to fix this.
--Sigbjorn