summaryrefslogtreecommitdiffstats
path: root/clang/test/SemaCXX/uninit-variables.cpp
diff options
context:
space:
mode:
authorTed Kremenek <kremenek@apple.com>2011-01-18 21:18:58 +0000
committerTed Kremenek <kremenek@apple.com>2011-01-18 21:18:58 +0000
commitb63931eef6bfcf900216dc1a180b29dcaa287090 (patch)
tree274fd855e7ac9f49a9a7884ba31a5c2be6d361de /clang/test/SemaCXX/uninit-variables.cpp
parente86a7ad01afca08f48ebf7b99f2a76204c963fa3 (diff)
downloadbcm5719-llvm-b63931eef6bfcf900216dc1a180b29dcaa287090.tar.gz
bcm5719-llvm-b63931eef6bfcf900216dc1a180b29dcaa287090.zip
Teach UninitializedValuesV2 to implicitly reason about C++
references by monitoring whether an access to a variable is solely to compute it's lvalue or to do an lvalue-to-rvalue conversion (i.e., a load). llvm-svn: 123777
Diffstat (limited to 'clang/test/SemaCXX/uninit-variables.cpp')
-rw-r--r--clang/test/SemaCXX/uninit-variables.cpp15
1 files changed, 15 insertions, 0 deletions
diff --git a/clang/test/SemaCXX/uninit-variables.cpp b/clang/test/SemaCXX/uninit-variables.cpp
new file mode 100644
index 00000000000..e971357ca78
--- /dev/null
+++ b/clang/test/SemaCXX/uninit-variables.cpp
@@ -0,0 +1,15 @@
+// RUN: %clang_cc1 -fsyntax-only -Wuninitialized-experimental -fsyntax-only %s -verify
+
+int test1_aux(int &x);
+int test1() {
+ int x;
+ test1_aux(x);
+ return x; // no-warning
+}
+
+int test2_aux() {
+ int x;
+ int &y = x;
+ return x; // no-warning
+}
+
OpenPOWER on IntegriCloud