This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
Re: Internal compiler error (cygwin)
- To: gcc-bugs at gcc dot gnu dot org, henlich at mmers1 dot mw dot tu-dresden dot de, zacks at stanford dot edu
- Subject: Re: Internal compiler error (cygwin)
- From: Michael Elizabeth Chastain <chastain at cygnus dot com>
- Date: Sat, 31 Mar 2001 10:22:39 -0800
- Cc: cgf at cygnus dot com
Thomas Henlich wrote:
> I got an error message about 'Internal compiler error' using gcc 2.95.3-2
> on cygwin (1.1.8, Windows NT-4.0 i386)
> A preprocessed file *.i is not generated with "gcc -v -save-temps ..."
> ...
This looks a known bug in cygwin 1.1.8, in the implementation of mmap.
The bug is: a process opens a file, mmaps it, closes the file, opens
a second file, mmaps it, and closes the second file: the second file's
mmap is the same buffer as the first. This affects gcc-3_0-branch with
error messages similar to yours.
I'm puzzled though, because gcc 2.95.3 does not use mmap in the preprocessor.
There are two things you can do. You can upgrade your cygwin from 1.1.8
to a more recent snapshot (this bug was fixed in early February). Or,
you can move a header file:
mv /usr/include/sys/mman.h /usr/include/sys/HIDE-mman.h
If you hide the header file and then start over in a clean tree,
gcc will not use mmap anywhere and you will avoid the cygwin mmap bug.
(I'm still puzzled about whether this particular bug is causing your
particular problem ... the symptoms match, but there's no mmap in
gcc 2.95.3 cpp!)
Hope this helps,
Michael Elizabeth Chastain
<chastain@redhat.com>
"love without fear"