File tree Expand file tree Collapse file tree 6 files changed +85
-2
lines changed Expand file tree Collapse file tree 6 files changed +85
-2
lines changed Original file line number Diff line number Diff line change 43
43
_ = @import ("behavior/bugs/2346.zig" );
44
44
_ = @import ("behavior/bugs/2557.zig" );
45
45
_ = @import ("behavior/bugs/2578.zig" );
46
+ _ = @import ("behavior/bugs/2622.zig" );
46
47
_ = @import ("behavior/bugs/2692.zig" );
48
+ _ = @import ("behavior/bugs/2727.zig" );
47
49
_ = @import ("behavior/bugs/2889.zig" );
48
50
_ = @import ("behavior/bugs/3007.zig" );
49
51
_ = @import ("behavior/bugs/3046.zig" );
@@ -62,10 +64,12 @@ test {
62
64
_ = @import ("behavior/bugs/5413.zig" );
63
65
_ = @import ("behavior/bugs/5474.zig" );
64
66
_ = @import ("behavior/bugs/5487.zig" );
67
+ _ = @import ("behavior/bugs/6047.zig" );
65
68
_ = @import ("behavior/bugs/6456.zig" );
66
69
_ = @import ("behavior/bugs/6781.zig" );
67
70
_ = @import ("behavior/bugs/6850.zig" );
68
71
_ = @import ("behavior/bugs/6905.zig" );
72
+ _ = @import ("behavior/bugs/6947.zig" );
69
73
_ = @import ("behavior/bugs/7003.zig" );
70
74
_ = @import ("behavior/bugs/7047.zig" );
71
75
_ = @import ("behavior/bugs/7187.zig" );
Original file line number Diff line number Diff line change
1
+ const builtin = @import ("builtin" );
2
+
3
+ var buf : []u8 = undefined ;
4
+
5
+ test "reslice of undefined global var slice" {
6
+ if (builtin .zig_backend == .stage2_wasm ) return error .SkipZigTest ; // TODO
7
+ if (builtin .zig_backend == .stage2_x86_64 ) return error .SkipZigTest ; // TODO
8
+ if (builtin .zig_backend == .stage2_x86 ) return error .SkipZigTest ; // TODO
9
+ if (builtin .zig_backend == .stage2_aarch64 ) return error .SkipZigTest ; // TODO
10
+ if (builtin .zig_backend == .stage2_arm ) return error .SkipZigTest ; // TODO
11
+
12
+ var mem : [100 ]u8 = [_ ]u8 {0 } ** 100 ;
13
+ buf = & mem ;
14
+ const x = buf [0.. 1];
15
+ try @import ("std" ).testing .expect (x .len == 1 and x [0 ] == 0 );
16
+ }
Original file line number Diff line number Diff line change
1
+ const builtin = @import ("builtin" );
2
+
3
+ fn t () bool {
4
+ return true ;
5
+ }
6
+
7
+ test {
8
+ if (builtin .zig_backend == .stage2_wasm ) return error .SkipZigTest ; // TODO
9
+ if (builtin .zig_backend == .stage2_x86_64 ) return error .SkipZigTest ; // TODO
10
+ if (builtin .zig_backend == .stage2_x86 ) return error .SkipZigTest ; // TODO
11
+ if (builtin .zig_backend == .stage2_aarch64 ) return error .SkipZigTest ; // TODO
12
+ if (builtin .zig_backend == .stage2_arm ) return error .SkipZigTest ; // TODO
13
+
14
+ comptime var i : usize = 0 ;
15
+ inline while (i < 2 ) : (i += 1 ) {
16
+ if (t ()) {} else return ;
17
+ }
18
+ }
Original file line number Diff line number Diff line change
1
+ const builtin = @import ("builtin" );
2
+
3
+ fn getError () ! void {
4
+ return error .Test ;
5
+ }
6
+
7
+ fn getError2 () ! void {
8
+ var a : u8 = 'c' ;
9
+ try if (a == 'a' ) getError () else if (a == 'b' ) getError () else getError ();
10
+ }
11
+
12
+ test "`try`ing an if/else expression" {
13
+ if (builtin .zig_backend == .stage2_wasm ) return error .SkipZigTest ; // TODO
14
+ if (builtin .zig_backend == .stage2_x86_64 ) return error .SkipZigTest ; // TODO
15
+ if (builtin .zig_backend == .stage2_x86 ) return error .SkipZigTest ; // TODO
16
+ if (builtin .zig_backend == .stage2_aarch64 ) return error .SkipZigTest ; // TODO
17
+ if (builtin .zig_backend == .stage2_arm ) return error .SkipZigTest ; // TODO
18
+
19
+ try @import ("std" ).testing .expectError (error .Test , getError2 ());
20
+ }
Original file line number Diff line number Diff line change
1
+ const builtin = @import ("builtin" );
2
+
3
+ fn destroy (ptr : * void ) void {
4
+ _ = ptr ;
5
+ }
6
+
7
+ test {
8
+ if (builtin .zig_backend == .stage2_wasm ) return error .SkipZigTest ; // TODO
9
+ if (builtin .zig_backend == .stage2_x86_64 ) return error .SkipZigTest ; // TODO
10
+ if (builtin .zig_backend == .stage2_x86 ) return error .SkipZigTest ; // TODO
11
+ if (builtin .zig_backend == .stage2_aarch64 ) return error .SkipZigTest ; // TODO
12
+ if (builtin .zig_backend == .stage2_arm ) return error .SkipZigTest ; // TODO
13
+
14
+ var slice : []void = undefined ;
15
+ destroy (& slice [0 ]);
16
+ }
Original file line number Diff line number Diff line change @@ -41,7 +41,7 @@ pub export fn entry4() void {
41
41
_ = U .foo (.{ .foo = 2 , .bar = 2 });
42
42
}
43
43
pub export fn entry5 () void {
44
- comptime var y = .{ 1 , 2 };
44
+ comptime var y = .{ 1 , 2 };
45
45
y = .{ 3 , 4 };
46
46
}
47
47
// pub export fn entry5() void {
@@ -52,7 +52,15 @@ pub export fn entry5() void {
52
52
// };
53
53
// _ = S.foo(.{ -1234, 5679, x });
54
54
// }
55
-
55
+ pub export fn entry6 () void {
56
+ const State = struct {
57
+ comptime id : bool = true ,
58
+ fn init (comptime id : bool ) @This () {
59
+ return @This (){ .id = id };
60
+ }
61
+ };
62
+ _ = State .init (false );
63
+ }
56
64
57
65
// error
58
66
// target=native
@@ -65,3 +73,4 @@ pub export fn entry5() void {
65
73
// :25:29: note: default value set here
66
74
// :41:16: error: value stored in comptime field does not match the default value of the field
67
75
// :45:12: error: value stored in comptime field does not match the default value of the field
76
+ // :59:35: error: value stored in comptime field does not match the default value of the field
You can’t perform that action at this time.
0 commit comments