This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [PATCH] Fix PR33608, bootstrap failure with ia64 and ada
- From: Eric Botcazou <ebotcazou at adacore dot com>
- To: Richard Guenther <rguenther at suse dot de>
- Cc: gcc-patches at gcc dot gnu dot org
- Date: Mon, 22 Oct 2007 16:00:47 +0200
- Subject: Re: [PATCH] Fix PR33608, bootstrap failure with ia64 and ada
- References: <Pine.LNX.4.64.0710221455240.4086@zhemvz.fhfr.qr>
> The following fixes PR33608 where we end up installing an unwind.h header
> that contains a call to abort () which we re-define inside gcc. It
> happens that ada somewhere includes this re-define without linking to
> an object that provides fancy_abort, so we'll fail bootstrap with
>
> gcc -static-libgcc -o gnatbind ... ../libcpp/libcpp.a
> ../libiberty/libiberty.a ../libdecnumber/libdecnumber.a
> -lmpfr -lgmp
> ada/tracebak.o: In function `_Unwind_GetTextRelBase':
> /usr/lib/gcc/ia64-suse-linux/4.3.0/include/unwind.h:229: undefined
> reference to
> `fancy_abort'
> collect2: ld returned 1 exit status
> make[3]: *** [gnatbind] Error 1
>
> fixed by avoiding macro-expansion in unwind-generic.h.
Thanks for investigating this. I think that we can get away on the Ada side
by using the same kludge in tb-gcc.c as in raise-gcc.c:
/* We don't want fancy_abort here. */
#undef abort
If that works for you, please install it.
--
Eric Botcazou