diff options
author | Andrew Hsieh <andrewhsieh@google.com> | 2013-08-07 14:07:56 +0800 |
---|---|---|
committer | Andrew Hsieh <andrewhsieh@google.com> | 2013-08-07 14:10:19 +0800 |
commit | 3cbd714aa558ccb83ed8294779d9dcd4399dd24f (patch) | |
tree | 4fb3cd936d88cc6a8f6f96871f341af7e6c6580e /gcc-4.6/gcc/testsuite/g++.dg | |
parent | 34cef20a1108ff399ecbe13f42e1f6bc8c909b27 (diff) | |
download | toolchain_gcc-3cbd714aa558ccb83ed8294779d9dcd4399dd24f.tar.gz toolchain_gcc-3cbd714aa558ccb83ed8294779d9dcd4399dd24f.tar.bz2 toolchain_gcc-3cbd714aa558ccb83ed8294779d9dcd4399dd24f.zip |
[4.6,4.7] Always enable --eh-frame-hdr for static executable
See 23e3137ee2897464b051599b85a09f130d3ad05d for the reason why.
backport 4.8 patch from http://gcc.gnu.org/ml/gcc-patches/2012-09/msg00969.html
Change-Id: I9496e11f314e5e2ec9359b993016723ab6366dad
Diffstat (limited to 'gcc-4.6/gcc/testsuite/g++.dg')
-rw-r--r-- | gcc-4.6/gcc/testsuite/g++.dg/eh/spec3-static.C | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/gcc-4.6/gcc/testsuite/g++.dg/eh/spec3-static.C b/gcc-4.6/gcc/testsuite/g++.dg/eh/spec3-static.C new file mode 100644 index 000000000..15408effa --- /dev/null +++ b/gcc-4.6/gcc/testsuite/g++.dg/eh/spec3-static.C @@ -0,0 +1,25 @@ +// PR c++/4381 +// Test that exception-specs work properly for classes with virtual bases. + +// { dg-do run } +// { dg-options "-static" } + +class Base {}; + +struct A : virtual public Base +{ + A() {} +}; + +struct B {}; + +void func() throw (B,A) +{ + throw A(); +} + +int main(void) +{ + try { func(); } + catch (A& a) { } +} |