authorgravatar for kt@connectfree.co.jpkristopher tate <kt@connectfree.co.jp> 2019-04-07 10:36:10+09:00
committergravatar for kt@connectfree.co.jpkristopher tate <kt@connectfree.co.jp> 2019-04-07 10:37:43+09:00
logfae0c35195076c8bce9da3528ce8d1959902ca06
tree7d3de9c90c0faa78c025bc7eb40b4cdece089e78
parent627b52fe654a7506861d3cbefb705803bd0c5102
signaturelock-open Commit is signed but in an unrecognized format.

test/compile_errors.zig: add regression test for ziglang/zig#532 ;


1 files changed, 15 insertions(+), 0 deletions(-)

test/compile_errors.zig+15
...@@ -2,6 +2,21 @@ const tests = @import("tests.zig");...@@ -2,6 +2,21 @@ const tests = @import("tests.zig");
2const builtin = @import("builtin");2const builtin = @import("builtin");
33
4pub fn addCases(cases: *tests.CompileErrorContext) void {4pub fn addCases(cases: *tests.CompileErrorContext) void {
5 cases.add(
6 "Generic function where return type is self-referenced",
7 \\fn Foo(comptime T: type) Foo(T) {
8 \\ return struct{ x: T };
9 \\}
10 \\export fn entry() void {
11 \\ const t = Foo(u32) {
12 \\ .x = 1
13 \\ };
14 \\}
15 ,
16 "tmp.zig:1:29: error: evaluation exceeded 1000 backwards branches",
17 "tmp.zig:1:29: note: called from here",
18 );
19
5 cases.add(20 cases.add(
6 "@ptrToInt 0 to non optional pointer",21 "@ptrToInt 0 to non optional pointer",
7 \\export fn entry() void {22 \\export fn entry() void {