aboutsummaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
Diffstat (limited to 'tests')
-rw-r--r--tests/tests2/79_vla_continue.c24
-rw-r--r--tests/tests2/79_vla_continue.expect1
-rw-r--r--tests/tests2/Makefile6
3 files changed, 28 insertions, 3 deletions
diff --git a/tests/tests2/79_vla_continue.c b/tests/tests2/79_vla_continue.c
index 9c48c1d..19301e0 100644
--- a/tests/tests2/79_vla_continue.c
+++ b/tests/tests2/79_vla_continue.c
@@ -81,12 +81,36 @@ void test4()
}
}
+void test5()
+{
+ int count = 10;
+ int a[f()];
+ int c[f()];
+
+ c[0] = 42;
+
+ for(;count--;) {
+ int b[f()];
+ int i;
+ for (i=0; i<f(); i++) {
+ b[i] = count;
+ }
+ }
+
+ if (c[0] == 42) {
+ printf("OK\n");
+ } else {
+ printf("NOT OK\n");
+ }
+}
+
int main(void)
{
test1();
test2();
test3();
test4();
+ test5();
return 0;
}
diff --git a/tests/tests2/79_vla_continue.expect b/tests/tests2/79_vla_continue.expect
index b462a5a..21da4d2 100644
--- a/tests/tests2/79_vla_continue.expect
+++ b/tests/tests2/79_vla_continue.expect
@@ -2,3 +2,4 @@ OK
OK
OK
OK
+OK
diff --git a/tests/tests2/Makefile b/tests/tests2/Makefile
index 6148c0b..a441674 100644
--- a/tests/tests2/Makefile
+++ b/tests/tests2/Makefile
@@ -96,9 +96,9 @@ TESTS = \
74_nocode_wanted.test \
75_array_in_struct_init.test \
76_dollars_in_identifiers.test \
- 77_push_pop_macro.test
-# 78_vla_label.test -- currently broken
-# 79_vla_continue.test -- currently broken
+ 77_push_pop_macro.test \
+ 78_vla_label.test \
+ 79_vla_continue.test
# 34_array_assignment.test -- array assignment is not in C standard