summaryrefslogtreecommitdiffstats
path: root/clang/test/SemaCXX/conditional-expr.cpp
diff options
context:
space:
mode:
authorRichard Smith <richard-llvm@metafoo.co.uk>2012-01-05 04:12:21 +0000
committerRichard Smith <richard-llvm@metafoo.co.uk>2012-01-05 04:12:21 +0000
commit69f90dce49124c98838ad80914c0c6642311167c (patch)
tree399db8b8101864d7da80592fbf55ff91eed352e4 /clang/test/SemaCXX/conditional-expr.cpp
parent0f6fb756a167bc3aea3725f66c6f6bf29bcad384 (diff)
downloadbcm5719-llvm-69f90dce49124c98838ad80914c0c6642311167c.tar.gz
bcm5719-llvm-69f90dce49124c98838ad80914c0c6642311167c.zip
PR10828: Produce a warning when a no-arguments function is declared in block
scope, when no other indication is provided that the user intended to declare a function rather than a variable. Remove some false positives from the existing 'parentheses disambiguated as a function' warning by suppressing it when the declaration is marked as 'typedef' or 'extern'. Add a new warning group -Wvexing-parse containing both of these warnings. The new warning is enabled by default; despite a number of false positives (and one bug) in clang's test-suite, I have only found genuine bugs with it when running it over a significant quantity of real C++ code. llvm-svn: 147599
Diffstat (limited to 'clang/test/SemaCXX/conditional-expr.cpp')
-rw-r--r--clang/test/SemaCXX/conditional-expr.cpp4
1 files changed, 2 insertions, 2 deletions
diff --git a/clang/test/SemaCXX/conditional-expr.cpp b/clang/test/SemaCXX/conditional-expr.cpp
index 5648d022b52..3cfddb3a416 100644
--- a/clang/test/SemaCXX/conditional-expr.cpp
+++ b/clang/test/SemaCXX/conditional-expr.cpp
@@ -96,8 +96,8 @@ void test()
(void)(i1 ? BadDerived() : BadBase());
// b2.1 (hierarchy stuff)
- const Base constret();
- const Derived constder();
+ const Base constret(); // expected-warning {{interpreted as a function declaration}}
+ const Derived constder(); // expected-warning {{interpreted as a function declaration}}
// should use const overload
A a1((i1 ? constret() : Base()).trick());
A a2((i1 ? Base() : constret()).trick());
OpenPOWER on IntegriCloud