diff options
author | Matt Austern <austern@apple.com> | 2003-12-10 06:34:46 +0000 |
---|---|---|
committer | Matt Austern <austern@gcc.gnu.org> | 2003-12-10 06:34:46 +0000 |
commit | facef326df0c41371da002b8d5e7716346750f17 (patch) | |
tree | e430472ee9dc43efc31173fbf8f2e7bc2d14a17c /gcc/testsuite/lib/gcc-dg.exp | |
parent | 5ec3f5662c13c44e04e4f7e6a79ee050d0ba6884 (diff) | |
download | gcc-facef326df0c41371da002b8d5e7716346750f17.zip gcc-facef326df0c41371da002b8d5e7716346750f17.tar.gz gcc-facef326df0c41371da002b8d5e7716346750f17.tar.bz2 |
re PR c/13134 (Visibility attribute is ignored)
PR c/13134
* c--decl.c (duplicate_decls): Copy visibility flag when appropriate.
* cp/decl.c (duplicate_decls): Copy visibility flag when appropriate.
* testsuite/lib/gcc-dg.exp (dg-require-visibility): Define.
* testsuite/lib/target-supports (check_visibility_available): Define.
* testsuite/gcc.dg/visibility-1.c: New test.
* testsuite/gcc.dg/visibility-2.c: Likewise.
* testsuite/gcc.dg/visibility-3.c: Likewise.
* testsuite/gcc.dg/visibility-4.c: Likewise.
* testsuite/gcc.dg/visibility-5.c: Likewise.
* testsuite/gcc.dg/visibility-6.c: Likewise.
* testsuite/g++.dg/ext/visibility-1.C: Likewise.
* testsuite/g++.dg/ext/visibility-2.C: Likewise.
* testsuite/g++.dg/ext/visibility-3.C: Likewise.
* testsuite/g++.dg/ext/visibility-4.C: Likewise.
* testsuite/g++.dg/ext/visibility-5.C: Likewise.
* testsuite/g++.dg/ext/visibility-6.C: Likewise.
From-SVN: r74487
Diffstat (limited to 'gcc/testsuite/lib/gcc-dg.exp')
-rw-r--r-- | gcc/testsuite/lib/gcc-dg.exp | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/gcc/testsuite/lib/gcc-dg.exp b/gcc/testsuite/lib/gcc-dg.exp index ee1d4d8..7fd52a9 100644 --- a/gcc/testsuite/lib/gcc-dg.exp +++ b/gcc/testsuite/lib/gcc-dg.exp @@ -267,6 +267,23 @@ proc dg-require-weak { args } { } } +# If this target does not support the "visibility" attribute, skip this +# test. + +proc dg-require-visibility { args } { + upvar dg-do-what dg-do-what + upvar name name + + set visibility_available [ check_visibility_available ] + if { $visibility_available == -1 } { + unresolved "$name" + } + if { $visibility_available != 1 } { + set dg-do-what [list [lindex ${dg-do-what} 0] "N" "P"] + return + } +} + # If this target does not support the "alias" attribute, skip this # test. |