This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [PATCH][C++] Fix PR29323, wrong-code with weak functions and exceptions
- From: "Kaveh R. GHAZI" <ghazi at caip dot rutgers dot edu>
- To: Mark Mitchell <mark at codesourcery dot com>
- Cc: Richard Guenther <rguenther at suse dot de>, gcc-patches at gcc dot gnu dot org
- Date: Mon, 16 Oct 2006 21:17:40 -0400 (EDT)
- Subject: Re: [PATCH][C++] Fix PR29323, wrong-code with weak functions and exceptions
- References: <Pine.LNX.4.64.0610091803300.29394@nyjnma.fhfr.qr> <452B091B.2000403@codesourcery.com>
On Mon, 9 Oct 2006, Mark Mitchell wrote:
> Richard Guenther wrote:
>
> > 2006-10-09 Richard Guenther <rguenther@suse.de>
> >
> > PR rtl-optimization/29323
> > * except.c (set_nothrow_function_flags): For functions
> > that do not bind local bail out early.
> >
> > * decl.c (finish_function): Set TREE_NOTHROW only for
> > functions that bind local.
I'm getting an error using cc for stage1, which I believe is due to this
patch:
cc -c -g -DENABLE_CHECKING -DENABLE_ASSERT_CHECKING -DIN_GCC
-DHAVE_CONFIG_H -I. -I. -I../../egcc-4.1-SVN20061015/gcc
-I../../egcc-4.1-SVN20061015/gcc/.
-I../../egcc-4.1-SVN20061015/gcc/../include -I./../intl
-I../../egcc-4.1-SVN20061015/gcc/../libcpp/include
-I/caip/u12/kishgcc/gcc-testing/new/_gmp/include
../../egcc-4.1-SVN20061015/gcc/except.c -o except.o
"../../egcc-4.1-SVN20061015/gcc/except.c", line 2705: void function cannot return value
cc: acomp failed for ../../egcc-4.1-SVN20061015/gcc/except.c
make[2]: *** [except.o] Error 2
make[2]: *** Waiting for unfinished jobs....
This occurs because the return type of set_nothrow_function_flags is void
on the branches, wheres it's unsigned int on mainline. I suspect using
gcc for stage 1, and all later stages issue some type of warning, but on
branches we don't use -Werror so it won't hard error.
--Kaveh
--
Kaveh R. Ghazi ghazi@caip.rutgers.edu