summaryrefslogtreecommitdiffstats
path: root/clang/test/CodeGen/variable-array.c
diff options
context:
space:
mode:
authorEli Friedman <eli.friedman@gmail.com>2009-04-20 03:54:15 +0000
committerEli Friedman <eli.friedman@gmail.com>2009-04-20 03:54:15 +0000
commitbc633beda48001fed63de3fba459210d60017e5e (patch)
tree5de0fd55b224f53c3c9c5c64792c13683e587d76 /clang/test/CodeGen/variable-array.c
parent3253e189c6465fe35fb9059310c478b75f57ff32 (diff)
downloadbcm5719-llvm-bc633beda48001fed63de3fba459210d60017e5e.tar.gz
bcm5719-llvm-bc633beda48001fed63de3fba459210d60017e5e.zip
PR3247: Handle a couple of cases where we weren't emitting VLA sizes (and
subsequently crashed). llvm-svn: 69567
Diffstat (limited to 'clang/test/CodeGen/variable-array.c')
-rw-r--r--clang/test/CodeGen/variable-array.c14
1 files changed, 13 insertions, 1 deletions
diff --git a/clang/test/CodeGen/variable-array.c b/clang/test/CodeGen/variable-array.c
index 280539fa897..f5621c289d7 100644
--- a/clang/test/CodeGen/variable-array.c
+++ b/clang/test/CodeGen/variable-array.c
@@ -1,7 +1,19 @@
-// RUN: clang-cc -emit-llvm < %s | grep puts
+// RUN: clang-cc -emit-llvm < %s | grep puts | count 4
+// PR3248
int a(int x)
{
int (*y)[x];
return sizeof(*(puts("asdf"),y));
}
+
+// PR3247
+int b() {
+ return sizeof(*(char(*)[puts("asdf")])0);
+}
+
+// PR3247
+int c() {
+ static int (*y)[puts("asdf")];
+ return sizeof(*y);
+}
OpenPOWER on IntegriCloud