summaryrefslogtreecommitdiffstats
path: root/clang/test
diff options
context:
space:
mode:
Diffstat (limited to 'clang/test')
-rw-r--r--clang/test/Analysis/casts.c11
-rw-r--r--clang/test/Analysis/pointer-to-member.cpp7
2 files changed, 14 insertions, 4 deletions
diff --git a/clang/test/Analysis/casts.c b/clang/test/Analysis/casts.c
index 45ce1940dfa..dd14b8a6e30 100644
--- a/clang/test/Analysis/casts.c
+++ b/clang/test/Analysis/casts.c
@@ -213,3 +213,14 @@ void no_crash_on_symsym_cast_to_long() {
}
#endif
+
+char no_crash_SymbolCast_of_float_type_aux(int *p) {
+ *p += 1;
+ return *p;
+}
+
+void no_crash_SymbolCast_of_float_type() {
+ extern float x;
+ char (*f)() = no_crash_SymbolCast_of_float_type_aux;
+ f(&x);
+}
diff --git a/clang/test/Analysis/pointer-to-member.cpp b/clang/test/Analysis/pointer-to-member.cpp
index 65882527d2d..7f196558400 100644
--- a/clang/test/Analysis/pointer-to-member.cpp
+++ b/clang/test/Analysis/pointer-to-member.cpp
@@ -253,11 +253,10 @@ void test() {
clang_analyzer_eval(&A::y); // expected-warning{{TRUE}}
clang_analyzer_eval(&A::z); // expected-warning{{TRUE}}
- // FIXME: These should be true.
int A::*l = &A::x, A::*m = &A::y, A::*n = &A::z;
- clang_analyzer_eval(l); // expected-warning{{UNKNOWN}}
- clang_analyzer_eval(m); // expected-warning{{UNKNOWN}}
- clang_analyzer_eval(n); // expected-warning{{UNKNOWN}}
+ clang_analyzer_eval(l); // expected-warning{{TRUE}}
+ clang_analyzer_eval(m); // expected-warning{{TRUE}}
+ clang_analyzer_eval(n); // expected-warning{{TRUE}}
// FIXME: These should be true as well.
A a;
OpenPOWER on IntegriCloud