This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: GCC 4.1.2 RC3 Cancelled
On Tue, 13 Feb 2007, Mark Mitchell wrote:
> Kaveh R. GHAZI wrote:
>
> > What I need to work out is what combinations of target and flags this
> > problem occurs under. E.g. is this problem sparc-solaris only or does it
> > occur on any target using pic? Or is it some subset of all platforms?
> > What about targets that default to pic without any extra flags? Etc.
>
> It will occur on any target where binds_local_p is false for the
> function that does not throw exceptions. That is target-dependent, but,
> in general, it will fail with -fpic of -fPIC. The reason is that the
> default implementation of binds_local_p considers global functions not
> to be locally bound in shared libraries (which it determines by checking
> flag_shlib) and flag_shlib is generally set if flag_pic is true.
How about this patch for mainline/4.2? I can add it to 4.1 after the
release.
Tested via "make check" on the current 4.1.x svn on sparc-sun-solaris2.10
using four passes: generic, -fpic, -fPIC and -m64. I verified in the
g++.sum file that the nothrow-1.C test is skipped in the -fpic/-fPIC cases
but not in the others.
2007-02-13 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
* g++.dg/tree-ssa/nothrow-1.C: Skip test if -fpic/-fPIC is used.
diff -rup orig/egcc-SVN20070211/gcc/testsuite/g++.dg/tree-ssa/nothrow-1.C egcc-SVN20070211/gcc/testsuite/g++.dg/tree-ssa/nothrow-1.C
--- orig/egcc-SVN20070211/gcc/testsuite/g++.dg/tree-ssa/nothrow-1.C 2006-01-23 00:09:00.000000000 -0500
+++ egcc-SVN20070211/gcc/testsuite/g++.dg/tree-ssa/nothrow-1.C 2007-02-13 21:58:10.160212524 -0500
@@ -1,5 +1,6 @@
/* { dg-do compile } */
/* { dg-options "-O1 -fdump-tree-cfg" } */
+/* { dg-skip-if "" { "*-*-*" } { "-fpic" "-fPIC" } { "" } } */
double a;
void t()
{