This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: committed: Ada updates
- From: Rainer Orth <ro at TechFak dot Uni-Bielefeld dot DE>
- To: Arnaud Charlet <charlet at act-europe dot fr>
- Cc: gcc-patches at gcc dot gnu dot org, Olivier Hainque <hainque at act-europe dot fr>
- Date: 17 Feb 2004 23:19:50 +0100
- Subject: Re: committed: Ada updates
- References: <20040212142858.A26677@dublin.act-europe.fr>
Arnaud Charlet <charlet@ACT-Europe.FR> writes:
> Tested on x86-linux
> --
> 2004-02-12 Olivier Hainque <hainque@act-europe.fr>
[...]
> * init.c (__gnat_error_handler for alpha-tru64): Arrange to clear the
> sc_onstack context indication before raising the exception to which
> the signal is mapped. Allows better handling of later signals possibly
> triggered by the resumed user code if the exception is handled.
This change broke Ada bootstrap on alpha-dec-osf*:
/vol/gnu/src/gcc/gcc-dist/gcc/ada/init.c: In function `__gnat_error_handler':
/vol/gnu/src/gcc/gcc-dist/gcc/ada/init.c:486: warning: dereferencing type-punned pointer will break strict-aliasing rules
make[2]: *** [ada/init.o] Error 1
It cannot have been tested at all ;-(
As a workaround, I've used this patch:
Tue Feb 17 23:17:29 2004 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
* config/alpha/t-osf4: Ignore ada/init.o warnings.
Index: t-osf4
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config/alpha/t-osf4,v
retrieving revision 1.7
diff -u -p -r1.7 t-osf4
--- t-osf4 31 Jul 2003 12:01:06 -0000 1.7
+++ t-osf4 17 Feb 2004 22:17:13 -0000
@@ -24,3 +24,5 @@ SHLIB_LINK = $(GCC_FOR_TARGET) $(LIBGCC2
SHLIB_INSTALL = $(INSTALL_DATA) $(SHLIB_NAME) $$(DESTDIR)$$(slibdir)/$(SHLIB_SONAME); \
rm -f $$(DESTDIR)$$(slibdir)/$(SHLIB_NAME); \
$(LN_S) $(SHLIB_SONAME) $$(DESTDIR)$$(slibdir)/$(SHLIB_NAME)
+
+ada/init.o-warn = -Wno-error
It gets me past this error (although with two additional warnings):
/vol/gnu/src/gcc/gcc-dist/gcc/ada/init.c: In function `__gnat_error_handler':
/vol/gnu/src/gcc/gcc-dist/gcc/ada/init.c:387: warning: variable 'exception' might be clobbered by `longjmp' or `vfork'
/vol/gnu/src/gcc/gcc-dist/gcc/ada/init.c:390: warning: variable 'msg' might be clobbered by `longjmp' or `vfork'
only to fail later on with another error:
/vol/gnu/src/gcc/gcc-dist/gcc/sdbout.c: In function `sdbout_finish':
/vol/gnu/src/gcc/gcc-dist/gcc/sdbout.c:1465: warning: comparison between signed and unsigned
Rainer
--
-----------------------------------------------------------------------------
Rainer Orth, Faculty of Technology, Bielefeld University