aboutsummaryrefslogtreecommitdiff
path: root/test/compile_errors.zig
diff options
context:
space:
mode:
authorAndrew Kelley <superjoe30@gmail.com>2017-05-21 10:41:57 -0400
committerAndrew Kelley <superjoe30@gmail.com>2017-05-21 10:44:55 -0400
commit9f3cca861557dab5c56d4ee5a35acd93180ef862 (patch)
tree09187b849588dccd412f4c5f43276be35288cba9 /test/compile_errors.zig
parent1c6f415a6416f8b29897393b8adfef45e1a2b51f (diff)
downloadzig-9f3cca861557dab5c56d4ee5a35acd93180ef862.tar.gz
zig-9f3cca861557dab5c56d4ee5a35acd93180ef862.zip
add error for break/continue exiting defer expression
See #284
Diffstat (limited to 'test/compile_errors.zig')
-rw-r--r--test/compile_errors.zig26
1 files changed, 24 insertions, 2 deletions
diff --git a/test/compile_errors.zig b/test/compile_errors.zig
index 86c6c5cc8b..48aa35f807 100644
--- a/test/compile_errors.zig
+++ b/test/compile_errors.zig
@@ -472,13 +472,13 @@ pub fn addCases(cases: &tests.CompileErrorContext) {
\\export fn f() {
\\ break;
\\}
- , ".tmp_source.zig:2:5: error: 'break' expression outside loop");
+ , ".tmp_source.zig:2:5: error: break expression outside loop");
cases.add("invalid continue expression",
\\export fn f() {
\\ continue;
\\}
- , ".tmp_source.zig:2:5: error: 'continue' expression outside loop");
+ , ".tmp_source.zig:2:5: error: continue expression outside loop");
cases.add("invalid maybe type",
\\export fn f() {
@@ -1860,4 +1860,26 @@ pub fn addCases(cases: &tests.CompileErrorContext) {
\\}
,
".tmp_source.zig:2:14: error: array access of non-array type 'type'");
+
+ cases.add("cannot break out of defer expression",
+ \\export fn foo() {
+ \\ while (true) {
+ \\ defer {
+ \\ break;
+ \\ }
+ \\ }
+ \\}
+ ,
+ ".tmp_source.zig:4:13: error: cannot break out of defer expression");
+
+ cases.add("cannot continue out of defer expression",
+ \\export fn foo() {
+ \\ while (true) {
+ \\ defer {
+ \\ continue;
+ \\ }
+ \\ }
+ \\}
+ ,
+ ".tmp_source.zig:4:13: error: cannot continue out of defer expression");
}