summaryrefslogtreecommitdiffstats
path: root/clang/test/SemaCXX/warn-func-not-needed.cpp
diff options
context:
space:
mode:
authorRafael Espindola <rafael.espindola@gmail.com>2013-10-22 21:56:29 +0000
committerRafael Espindola <rafael.espindola@gmail.com>2013-10-22 21:56:29 +0000
commit77c60085afbd50c03ed49129b213de64e209e6d6 (patch)
treea44be54324a2d3fefb6d01d5a6cdc173cf634959 /clang/test/SemaCXX/warn-func-not-needed.cpp
parent9041c3bd5be94dfd313365540e348da87a5d9b92 (diff)
downloadbcm5719-llvm-77c60085afbd50c03ed49129b213de64e209e6d6.tar.gz
bcm5719-llvm-77c60085afbd50c03ed49129b213de64e209e6d6.zip
Consider hidden decls for isUsed checks.
This fixes pr17624. A FIXME from Richard Smith: It seems to me that the root cause is that a per-Decl 'used' flag doesn't really make much sense in the way we use it now. I think we should either track whether that particular declaration is used (with isUsed scanning the entire redecl chain), or we should only have one flag for the entire redeclaration chain (perhaps by always looking at the flag on either the most recent decl or the canonical decl). Modeling it as "is this declaration or any previous declaration used" is weird, and requires contortions like the loop at the end of Sema::MarkFunctionReferenced. llvm-svn: 193202
Diffstat (limited to 'clang/test/SemaCXX/warn-func-not-needed.cpp')
-rw-r--r--clang/test/SemaCXX/warn-func-not-needed.cpp9
1 files changed, 9 insertions, 0 deletions
diff --git a/clang/test/SemaCXX/warn-func-not-needed.cpp b/clang/test/SemaCXX/warn-func-not-needed.cpp
index d51c1735663..65721f44f57 100644
--- a/clang/test/SemaCXX/warn-func-not-needed.cpp
+++ b/clang/test/SemaCXX/warn-func-not-needed.cpp
@@ -42,3 +42,12 @@ namespace test4 {
g<int>();
}
}
+
+namespace test4 {
+ static void func();
+ void bar() {
+ void func();
+ func();
+ }
+ static void func() {}
+}
OpenPOWER on IntegriCloud