diff options
author | jsm28 <jsm28@138bc75d-0d04-0410-961f-82ee72b054a4> | 2005-04-06 17:17:38 +0000 |
---|---|---|
committer | jsm28 <jsm28@138bc75d-0d04-0410-961f-82ee72b054a4> | 2005-04-06 17:17:38 +0000 |
commit | 3656266babaf3cfc9e535b327423c8287e740461 (patch) | |
tree | 649a1980a862ee27ee5452e2511599dbef83526b /gcc/testsuite/gcc.dg/weak | |
parent | e81f20f7aa289a04543dc896fc6d2f20c7a16070 (diff) | |
download | ppe42-gcc-3656266babaf3cfc9e535b327423c8287e740461.tar.gz ppe42-gcc-3656266babaf3cfc9e535b327423c8287e740461.zip |
* c-decl.c (finish_decl): Apply pending #pragma weak regardless of
scope.
cp:
* decl.c (start_decl): Apply pending #pragma weak regardless of
scope.
testsuite:
* gcc.dg/weak/weak-12.c, g++.dg/ext/weak2.C: New tests.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@97733 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/testsuite/gcc.dg/weak')
-rw-r--r-- | gcc/testsuite/gcc.dg/weak/weak-12.c | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/gcc/testsuite/gcc.dg/weak/weak-12.c b/gcc/testsuite/gcc.dg/weak/weak-12.c new file mode 100644 index 00000000000..72cc1445e4b --- /dev/null +++ b/gcc/testsuite/gcc.dg/weak/weak-12.c @@ -0,0 +1,17 @@ +/* Test for #pragma weak with declaration not at file scope. */ +/* { dg-do compile } */ +/* { dg-require-weak "" } */ +/* { dg-options "" } */ + +/* { dg-final { scan-assembler "weak\[^ \t\]*\[ \t\]_?foo" } } */ + +#pragma weak foo + +int +main (void) +{ + extern int foo (void); + if (&foo) + return foo (); + return 0; +} |