summaryrefslogtreecommitdiffstats
path: root/clang/test/Analysis/misc-ps-cxx0x.cpp
diff options
context:
space:
mode:
authorJordan Rose <jordan_rose@apple.com>2012-08-03 23:08:39 +0000
committerJordan Rose <jordan_rose@apple.com>2012-08-03 23:08:39 +0000
commit16fe35eb2bf60b1374b24eda453b17af4ccd35ca (patch)
tree4d7ad7ab83f1fe64c6f579bff6270bdf3868f223 /clang/test/Analysis/misc-ps-cxx0x.cpp
parent86bedb0de00508c872dbf9f1b4835efd64bae2fd (diff)
downloadbcm5719-llvm-16fe35eb2bf60b1374b24eda453b17af4ccd35ca.tar.gz
bcm5719-llvm-16fe35eb2bf60b1374b24eda453b17af4ccd35ca.zip
Enhance getImplicitObjectArgument to look through ->*.
This only applies in the case where ->* is not overloaded, since it specifically looks for BinaryOperator and not CXXOperatorCallExpr. llvm-svn: 161275
Diffstat (limited to 'clang/test/Analysis/misc-ps-cxx0x.cpp')
-rw-r--r--clang/test/Analysis/misc-ps-cxx0x.cpp7
1 files changed, 7 insertions, 0 deletions
diff --git a/clang/test/Analysis/misc-ps-cxx0x.cpp b/clang/test/Analysis/misc-ps-cxx0x.cpp
index e1c78ed0723..8e31c8db8c9 100644
--- a/clang/test/Analysis/misc-ps-cxx0x.cpp
+++ b/clang/test/Analysis/misc-ps-cxx0x.cpp
@@ -109,3 +109,10 @@ void test_ic_null(TestInstanceCall *p) {
p->foo(); // expected-warning {{Called C++ object pointer is null}}
}
+void test_ic_member_ptr() {
+ TestInstanceCall *p = 0;
+ typedef void (TestInstanceCall::*IC_Ptr)();
+ IC_Ptr bar = &TestInstanceCall::foo;
+ (p->*bar)(); // expected-warning {{Called C++ object pointer is null}}
+}
+
OpenPOWER on IntegriCloud