diff mbox

[C++] PR 58846

Message ID yddy51r5hj0.fsf@lokon.CeBiTec.Uni-Bielefeld.DE
State New
Headers show

Commit Message

Rainer Orth Feb. 4, 2014, 9:55 a.m. UTC
Paolo Carlini <paolo.carlini@oracle.com> writes:

> a very minor ICE on invalid regression, but since we explicitly allow for
> redeclarations (also see comments in declare_global_var) we may as well
> avoid crashing, at least in mainline. Tested x86_64-linux.

The test FAILs on Solaris which doesn't have __cxa_atexit:

FAIL: g++.dg/init/dso_handle2.C -std=c++98  (test for errors, line 10)
FAIL: g++.dg/init/dso_handle2.C -std=c++11  (test for errors, line 10)

Fixed like dso_handle1.C does by forcing -fuse-cxa-atexit.

Tested with the appropriate runtest invocations on i386-pc-solaris2.11
and x86_64-unknown-linux-gnu.  Ok for mainline?

	Rainer


2014-02-04  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>

	* g++.dg/init/dso_handle2.C: Compile with -fuse-cxa-atexit.

Comments

Paolo Carlini Feb. 4, 2014, 10:17 a.m. UTC | #1
Hi,

On 02/04/2014 10:55 AM, Rainer Orth wrote:
> Paolo Carlini <paolo.carlini@oracle.com> writes:
>
>> a very minor ICE on invalid regression, but since we explicitly allow for
>> redeclarations (also see comments in declare_global_var) we may as well
>> avoid crashing, at least in mainline. Tested x86_64-linux.
> The test FAILs on Solaris which doesn't have __cxa_atexit:
>
> FAIL: g++.dg/init/dso_handle2.C -std=c++98  (test for errors, line 10)
> FAIL: g++.dg/init/dso_handle2.C -std=c++11  (test for errors, line 10)
>
> Fixed like dso_handle1.C does by forcing -fuse-cxa-atexit.
>
> Tested with the appropriate runtest invocations on i386-pc-solaris2.11
> and x86_64-unknown-linux-gnu.  Ok for mainline?
I think it qualifies at obvious. Thanks!

Paolo.

PS: At some point I had it, when I adapted the testcase from an existing 
one, then I tried to minimize it ;-/
diff mbox

Patch

# HG changeset patch
# Parent 944218077f384619dcc391f55c51e5ba477dd022
Fix g++.dg/init/dso_handle2.C on Solaris

	gcc/testsuite:
	* g++.dg/init/dso_handle2.C: Compile with -fuse-cxa-atexit.

diff --git a/gcc/testsuite/g++.dg/init/dso_handle2.C b/gcc/testsuite/g++.dg/init/dso_handle2.C
--- a/gcc/testsuite/g++.dg/init/dso_handle2.C
+++ b/gcc/testsuite/g++.dg/init/dso_handle2.C
@@ -1,4 +1,5 @@ 
 // PR c++/58846
+// { dg-options "-fuse-cxa-atexit" }
 
 extern "C" { char* __dso_handle; }