This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
Re: ../../gcc/fixproto[275]: 25412 Memory fault(coredump)
- To: dave at hiauly1 dot hia dot nrc dot ca (John David Anglin)
- Subject: Re: ../../gcc/fixproto[275]: 25412 Memory fault(coredump)
- From: "John David Anglin" <dave at hiauly1 dot hia dot nrc dot ca>
- Date: Tue, 6 Mar 2001 19:36:43 -0500 (EST)
- Cc: gcc-bugs at gcc dot gnu dot org
> The following build error occurs with todays cvs 3.0 branch source building
> under hpux 10.20:
>
> if [ -f include/fixed ] ; then true; \
> else \
> : This line works around a 'make' bug in BSDI 1.1.; \
> FIXPROTO_DEFINES="-D_HPUX_SOURCE -D_HIUX_SOURCE"; export FIXPROTO_DEFINES; \
> mkinstalldirs="/bin/sh ../../gcc/mkinstalldirs"; \
> export mkinstalldirs; \
> if [ -d /usr/include ] ; then \
> /bin/sh ../../gcc/fixproto include include /usr/include; \
> if [ $? -eq 0 ] ; then true ; else exit 1 ; fi ; \
> else true; fi; \
> touch include/fixed; \
> fi
> fixproto: populating `include'
> Internal error: No prototype for box
> Internal error: No prototype for waddch
> Internal error: No prototype for winsch
> ../../gcc/fixproto[275]: 25412 Memory fault(coredump)
Following up, the segfault occurs in a call to memcpy in cppfiles.c:
/* Search directory path for the file. */
name = (char *) alloca (strlen (fname) + pfile->max_include_len
+ 2 + INCLUDE_LEN_FUDGE);
for (path = search_start; path; path = path->next)
{
memcpy (name, path->name, path->len);
It appears that this is fallout from Zack's alloca patch (ie.,
__builtin_alloca in the version of gcc used for the initial
bootstrap doesn't work on the PA). I tried defining USE_C_ALLOCA
to force the use of C_alloca. However, now I have a malloc problem:
fixproto: populating `include'
Internal error: No prototype for box
Internal error: No prototype for waddch
Internal error: No prototype for winsch
Cannot allocate 989908761 bytes after allocating 98280 bytes
:-(
--
J. David Anglin dave.anglin@nrc.ca
National Research Council of Canada (613) 990-0752 (FAX: 952-6605)