diff options
author | Jordan Rose <jordan_rose@apple.com> | 2013-07-02 16:50:24 +0000 |
---|---|---|
committer | Jordan Rose <jordan_rose@apple.com> | 2013-07-02 16:50:24 +0000 |
commit | 00deddb6d8a0e620fd164c5439317f7752da4639 (patch) | |
tree | 81350865a5c88117c0345e138bc451c072a9414a /clang/test/Analysis/pointer-to-member.cpp | |
parent | 68a62d67f3d1105787006f746c35762b4cdc9713 (diff) | |
download | bcm5719-llvm-00deddb6d8a0e620fd164c5439317f7752da4639.tar.gz bcm5719-llvm-00deddb6d8a0e620fd164c5439317f7752da4639.zip |
[analyzer] Pointers-to-members are (currently) Locs, not NonLocs.
While we don't model pointers-to-members besides "null" and "non-null",
we were using Loc symbols for valid pointers and NonLoc integers for the
null case. This hit the assert committed in r185401.
Fixed by using a true (Loc) null for null member pointers.
llvm-svn: 185444
Diffstat (limited to 'clang/test/Analysis/pointer-to-member.cpp')
-rw-r--r-- | clang/test/Analysis/pointer-to-member.cpp | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/clang/test/Analysis/pointer-to-member.cpp b/clang/test/Analysis/pointer-to-member.cpp index c9150e8ca59..37d04399b7b 100644 --- a/clang/test/Analysis/pointer-to-member.cpp +++ b/clang/test/Analysis/pointer-to-member.cpp @@ -33,6 +33,7 @@ void testConditionalUse() { void testComparison() { clang_analyzer_eval(&A::getPtr == &A::getPtr); // expected-warning{{TRUE}} + clang_analyzer_eval(&A::getPtr == 0); // expected-warning{{FALSE}} // FIXME: Should be TRUE. clang_analyzer_eval(&A::m_ptr == &A::m_ptr); // expected-warning{{UNKNOWN}} |