aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/validation
diff options
authorLuc Van Oostenryck <luc.vanoostenryck@gmail.com>2017-03-22 13:58:07 +0100
committerLuc Van Oostenryck <luc.vanoostenryck@gmail.com>2017-11-13 14:16:51 +0100
commitb3b642eb3effbdd86c65d070b34235e51ae11a8f (patch)
tree0a922b051f61d400aeb30d5a327c645617b33387 /validation
parentd3936a687de422ee39824e6f091822da76cc8ae4 (diff)
downloadsparse-dev-b3b642eb3effbdd86c65d070b34235e51ae11a8f.tar.gz
add test case for conditionally undefined var
Signed-off-by: Luc Van Oostenryck <luc.vanoostenryck@gmail.com>
Diffstat (limited to 'validation')
-rw-r--r--validation/var-undef-partial.c21
1 files changed, 21 insertions, 0 deletions
diff --git a/validation/var-undef-partial.c b/validation/var-undef-partial.c
new file mode 100644
index 00000000..2b665834
--- /dev/null
+++ b/validation/var-undef-partial.c
@@ -0,0 +1,21 @@
+int foo(int a, int b)
+{
+ int var = 0;
+ int r;
+
+ if (a)
+ var = 1;
+ if (b)
+ r = var;
+
+ return r; // undef if !b
+}
+
+/*
+ * check-name: variable partially undefined
+ * check-description: trigger a bug in symbol/memop simplification
+ * check-description: sparse-llvm is used here as semantic checker of sparse's IR
+ * check-command: sparse-llvm -Wno-decl $file
+ * check-known-to-fail
+ * check-output-ignore
+ */