diff options
author | Jason Merrill <jason@redhat.com> | 2015-06-09 10:51:30 -0400 |
---|---|---|
committer | Jason Merrill <jason@gcc.gnu.org> | 2015-06-09 10:51:30 -0400 |
commit | a0e4b207defe4bb8844f86ebab30aa2ca8de25d1 (patch) | |
tree | 2e6683ec611f30cf1e1c3d8f2ca05a85a299a32a /gcc | |
parent | f2e609c3e1863eb9a902cf45f5c5bbaf2e48e3cb (diff) | |
download | gcc-a0e4b207defe4bb8844f86ebab30aa2ca8de25d1.zip gcc-a0e4b207defe4bb8844f86ebab30aa2ca8de25d1.tar.gz gcc-a0e4b207defe4bb8844f86ebab30aa2ca8de25d1.tar.bz2 |
re PR bootstrap/66448 (Bootstrap fails on darwin after r224161)
PR bootstrap/66448
* toplev.c (check_global_declaration): Don't warn about a clone.
From-SVN: r224285
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/testsuite/g++.dg/warn/Wunused-function1.C | 12 | ||||
-rw-r--r-- | gcc/toplev.c | 1 |
3 files changed, 18 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index b1788a0..86450b0 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2015-06-09 Jason Merrill <jason@redhat.com> + + PR bootstrap/66448 + * toplev.c (check_global_declaration): Don't warn about a clone. + 2015-06-09 Marek Polacek <polacek@redhat.com> PR tree-optimization/66299 diff --git a/gcc/testsuite/g++.dg/warn/Wunused-function1.C b/gcc/testsuite/g++.dg/warn/Wunused-function1.C new file mode 100644 index 0000000..86b319a --- /dev/null +++ b/gcc/testsuite/g++.dg/warn/Wunused-function1.C @@ -0,0 +1,12 @@ +// PR bootstrap/66448 +// { dg-options "-Wunused-function" } + +struct A { A(); }; +namespace { + struct B: virtual A { B(); }; + B::B() { } + B b; + + struct C: virtual A { C(); }; + C::C() { } // { dg-warning "defined but not used" } +} diff --git a/gcc/toplev.c b/gcc/toplev.c index 306d008..b1ccc18 100644 --- a/gcc/toplev.c +++ b/gcc/toplev.c @@ -529,6 +529,7 @@ check_global_declaration (tree decl) && ! (DECL_NAME (decl) && TREE_USED (DECL_NAME (decl))) && ! DECL_EXTERNAL (decl) && ! DECL_ARTIFICIAL (decl) + && ! DECL_ABSTRACT_ORIGIN (decl) && ! TREE_PUBLIC (decl) /* A volatile variable might be used in some non-obvious way. */ && ! TREE_THIS_VOLATILE (decl) |