aboutsummaryrefslogtreecommitdiff
path: root/test/cases
diff options
context:
space:
mode:
Diffstat (limited to 'test/cases')
-rw-r--r--test/cases/compile_errors/comptime_continue_inside_runtime_catch.zig (renamed from test/cases/compile_errors/stage1/obj/comptime_continue_inside_runtime_catch.zig)6
-rw-r--r--test/cases/compile_errors/comptime_continue_inside_runtime_if_bool.zig (renamed from test/cases/compile_errors/stage1/obj/comptime_continue_inside_runtime_if_bool.zig)6
-rw-r--r--test/cases/compile_errors/comptime_continue_inside_runtime_if_error.zig (renamed from test/cases/compile_errors/stage1/obj/comptime_continue_inside_runtime_if_error.zig)6
-rw-r--r--test/cases/compile_errors/comptime_continue_inside_runtime_if_optional.zig (renamed from test/cases/compile_errors/stage1/obj/comptime_continue_inside_runtime_if_optional.zig)6
-rw-r--r--test/cases/compile_errors/comptime_continue_inside_runtime_orelse.zig16
-rw-r--r--test/cases/compile_errors/comptime_continue_inside_runtime_switch.zig (renamed from test/cases/compile_errors/stage1/obj/comptime_continue_inside_runtime_switch.zig)6
-rw-r--r--test/cases/compile_errors/comptime_continue_inside_runtime_while_bool.zig (renamed from test/cases/compile_errors/stage1/obj/comptime_continue_inside_runtime_while_bool.zig)6
-rw-r--r--test/cases/compile_errors/comptime_continue_inside_runtime_while_error.zig (renamed from test/cases/compile_errors/stage1/obj/comptime_continue_inside_runtime_while_error.zig)6
-rw-r--r--test/cases/compile_errors/comptime_continue_inside_runtime_while_optional.zig (renamed from test/cases/compile_errors/stage1/obj/comptime_continue_inside_runtime_while_optional.zig)6
-rw-r--r--test/cases/compile_errors/comptime_slice-sentinel_does_not_match_memory_at_target_index_terminated.zig (renamed from test/cases/compile_errors/stage1/obj/comptime_slice-sentinel_does_not_match_memory_at_target_index_terminated.zig)23
-rw-r--r--test/cases/compile_errors/comptime_slice-sentinel_does_not_match_memory_at_target_index_unterminated.zig (renamed from test/cases/compile_errors/stage1/obj/comptime_slice-sentinel_does_not_match_memory_at_target_index_unterminated.zig)23
-rw-r--r--test/cases/compile_errors/comptime_slice-sentinel_does_not_match_target-sentinel.zig (renamed from test/cases/compile_errors/stage1/obj/comptime_slice-sentinel_does_not_match_target-sentinel.zig)23
-rw-r--r--test/cases/compile_errors/comptime_slice-sentinel_is_out_of_bounds_terminated.zig (renamed from test/cases/compile_errors/stage1/obj/comptime_slice-sentinel_is_out_of_bounds_terminated.zig)16
-rw-r--r--test/cases/compile_errors/comptime_slice-sentinel_is_out_of_bounds_unterminated.zig (renamed from test/cases/compile_errors/stage1/obj/comptime_slice-sentinel_is_out_of_bounds_unterminated.zig)16
-rw-r--r--test/cases/compile_errors/comptime_slice_of_an_undefined_slice.zig (renamed from test/cases/compile_errors/stage1/obj/comptime_slice_of_an_undefined_slice.zig)4
-rw-r--r--test/cases/compile_errors/method_call_with_first_arg_type_wrong_container.zig6
-rw-r--r--test/cases/compile_errors/reify_type.Fn_with_is_generic_true.zig (renamed from test/cases/compile_errors/stage1/obj/reify_type.Fn_with_is_generic_true.zig)4
-rw-r--r--test/cases/compile_errors/reify_type.Fn_with_is_var_args_true_and_non-C_callconv.zig (renamed from test/cases/compile_errors/stage1/obj/reify_type.Fn_with_is_var_args_true_and_non-C_callconv.zig)4
-rw-r--r--test/cases/compile_errors/reify_type.Fn_with_return_type_null.zig (renamed from test/cases/compile_errors/stage1/obj/reify_type.Fn_with_return_type_null.zig)4
-rw-r--r--test/cases/compile_errors/reify_type_for_exhaustive_enum_with_non-integer_tag_type.zig (renamed from test/cases/compile_errors/stage1/obj/reify_type_for_exhaustive_enum_with_non-integer_tag_type.zig)4
-rw-r--r--test/cases/compile_errors/reify_type_for_exhaustive_enum_with_undefined_tag_type.zig (renamed from test/cases/compile_errors/stage1/obj/reify_type_for_exhaustive_enum_with_undefined_tag_type.zig)4
-rw-r--r--test/cases/compile_errors/reify_type_for_exhaustive_enum_with_zero_fields.zig (renamed from test/cases/compile_errors/stage1/obj/reify_type_for_exhaustive_enum_with_zero_fields.zig)4
-rw-r--r--test/cases/compile_errors/reify_type_for_tagged_union_with_extra_enum_field.zig (renamed from test/cases/compile_errors/stage1/obj/reify_type_for_tagged_union_with_extra_enum_field.zig)6
-rw-r--r--test/cases/compile_errors/reify_type_for_tagged_union_with_extra_union_field.zig (renamed from test/cases/compile_errors/stage1/obj/reify_type_for_tagged_union_with_extra_union_field.zig)6
-rw-r--r--test/cases/compile_errors/reify_type_for_union_with_zero_fields.zig (renamed from test/cases/compile_errors/stage1/obj/reify_type_for_union_with_zero_fields.zig)4
-rw-r--r--test/cases/compile_errors/reify_type_union_payload_is_undefined.zig (renamed from test/cases/compile_errors/stage1/obj/reify_type_union_payload_is_undefined.zig)4
-rw-r--r--test/cases/compile_errors/reify_type_with_Type.Int.zig (renamed from test/cases/compile_errors/stage1/obj/reify_type_with_Type.Int.zig)6
-rw-r--r--test/cases/compile_errors/reify_type_with_undefined.zig (renamed from test/cases/compile_errors/stage1/obj/reify_type_with_undefined.zig)6
-rw-r--r--test/cases/compile_errors/stage1/reify_type.Pointer_with_invalid_address_space.zig (renamed from test/cases/compile_errors/stage1/obj/reify_type.Pointer_with_invalid_address_space.zig)0
-rw-r--r--test/cases/compile_errors/stage1/reify_type_with_non-constant_expression.zig (renamed from test/cases/compile_errors/stage1/obj/reify_type_with_non-constant_expression.zig)0
-rw-r--r--test/cases/compile_errors/stage1/test/type_mismatch_with_tuple_concatenation.zig11
-rw-r--r--test/cases/compile_errors/tuple_init_edge_cases.zig44
-rw-r--r--test/cases/compile_errors/type_mismatch_with_tuple_concatenation.zig10
-rw-r--r--test/cases/compile_errors/wrong_size_to_an_array_literal.zig2
-rw-r--r--test/cases/llvm/shift_right_plus_left.0.zig12
-rw-r--r--test/cases/llvm/shift_right_plus_left.1.zig10
36 files changed, 191 insertions, 129 deletions
diff --git a/test/cases/compile_errors/stage1/obj/comptime_continue_inside_runtime_catch.zig b/test/cases/compile_errors/comptime_continue_inside_runtime_catch.zig
index 7eefeb80b4..9e62420f1f 100644
--- a/test/cases/compile_errors/stage1/obj/comptime_continue_inside_runtime_catch.zig
+++ b/test/cases/compile_errors/comptime_continue_inside_runtime_catch.zig
@@ -9,8 +9,8 @@ fn bad() !void {
}
// error
-// backend=stage1
+// backend=stage2
// target=native
//
-// tmp.zig:4:21: error: comptime control flow inside runtime block
-// tmp.zig:4:15: note: runtime block created here
+// :4:21: error: comptime control flow inside runtime block
+// :4:15: note: runtime control flow here
diff --git a/test/cases/compile_errors/stage1/obj/comptime_continue_inside_runtime_if_bool.zig b/test/cases/compile_errors/comptime_continue_inside_runtime_if_bool.zig
index 9ace5ddceb..b2a7312c52 100644
--- a/test/cases/compile_errors/stage1/obj/comptime_continue_inside_runtime_if_bool.zig
+++ b/test/cases/compile_errors/comptime_continue_inside_runtime_if_bool.zig
@@ -8,8 +8,8 @@ export fn entry() void {
}
// error
-// backend=stage1
+// backend=stage2
// target=native
//
-// tmp.zig:5:22: error: comptime control flow inside runtime block
-// tmp.zig:5:9: note: runtime block created here
+// :5:22: error: comptime control flow inside runtime block
+// :5:15: note: runtime control flow here
diff --git a/test/cases/compile_errors/stage1/obj/comptime_continue_inside_runtime_if_error.zig b/test/cases/compile_errors/comptime_continue_inside_runtime_if_error.zig
index 554ba3c43e..194274a1ed 100644
--- a/test/cases/compile_errors/stage1/obj/comptime_continue_inside_runtime_if_error.zig
+++ b/test/cases/compile_errors/comptime_continue_inside_runtime_if_error.zig
@@ -8,8 +8,8 @@ export fn entry() void {
}
// error
-// backend=stage1
+// backend=stage2
// target=native
//
-// tmp.zig:5:20: error: comptime control flow inside runtime block
-// tmp.zig:5:9: note: runtime block created here
+// :5:20: error: comptime control flow inside runtime block
+// :5:13: note: runtime control flow here
diff --git a/test/cases/compile_errors/stage1/obj/comptime_continue_inside_runtime_if_optional.zig b/test/cases/compile_errors/comptime_continue_inside_runtime_if_optional.zig
index 32c71e5c77..965454ef03 100644
--- a/test/cases/compile_errors/stage1/obj/comptime_continue_inside_runtime_if_optional.zig
+++ b/test/cases/compile_errors/comptime_continue_inside_runtime_if_optional.zig
@@ -8,8 +8,8 @@ export fn entry() void {
}
// error
-// backend=stage1
+// backend=stage2
// target=native
//
-// tmp.zig:5:20: error: comptime control flow inside runtime block
-// tmp.zig:5:9: note: runtime block created here
+// :5:20: error: comptime control flow inside runtime block
+// :5:13: note: runtime control flow here
diff --git a/test/cases/compile_errors/comptime_continue_inside_runtime_orelse.zig b/test/cases/compile_errors/comptime_continue_inside_runtime_orelse.zig
new file mode 100644
index 0000000000..56b65c1ab7
--- /dev/null
+++ b/test/cases/compile_errors/comptime_continue_inside_runtime_orelse.zig
@@ -0,0 +1,16 @@
+export fn entry() void {
+ const ints = [_]u8{ 1, 2 };
+ inline for (ints) |_| {
+ bad() orelse continue;
+ }
+}
+fn bad() ?void {
+ return null;
+}
+
+// error
+// backend=stage2
+// target=native
+//
+// :4:22: error: comptime control flow inside runtime block
+// :4:15: note: runtime control flow here
diff --git a/test/cases/compile_errors/stage1/obj/comptime_continue_inside_runtime_switch.zig b/test/cases/compile_errors/comptime_continue_inside_runtime_switch.zig
index d145897b41..391ecbdf1a 100644
--- a/test/cases/compile_errors/stage1/obj/comptime_continue_inside_runtime_switch.zig
+++ b/test/cases/compile_errors/comptime_continue_inside_runtime_switch.zig
@@ -11,8 +11,8 @@ export fn entry() void {
}
// error
-// backend=stage1
+// backend=stage2
// target=native
//
-// tmp.zig:6:19: error: comptime control flow inside runtime block
-// tmp.zig:5:9: note: runtime block created here
+// :6:19: error: comptime control flow inside runtime block
+// :5:17: note: runtime control flow here
diff --git a/test/cases/compile_errors/stage1/obj/comptime_continue_inside_runtime_while_bool.zig b/test/cases/compile_errors/comptime_continue_inside_runtime_while_bool.zig
index 8e57854728..54d62e6d37 100644
--- a/test/cases/compile_errors/stage1/obj/comptime_continue_inside_runtime_while_bool.zig
+++ b/test/cases/compile_errors/comptime_continue_inside_runtime_while_bool.zig
@@ -8,8 +8,8 @@ export fn entry() void {
}
// error
-// backend=stage1
+// backend=stage2
// target=native
//
-// tmp.zig:5:25: error: comptime control flow inside runtime block
-// tmp.zig:5:9: note: runtime block created here
+// :5:25: error: comptime control flow inside runtime block
+// :5:18: note: runtime control flow here
diff --git a/test/cases/compile_errors/stage1/obj/comptime_continue_inside_runtime_while_error.zig b/test/cases/compile_errors/comptime_continue_inside_runtime_while_error.zig
index 818455c354..0eef1c3374 100644
--- a/test/cases/compile_errors/stage1/obj/comptime_continue_inside_runtime_while_error.zig
+++ b/test/cases/compile_errors/comptime_continue_inside_runtime_while_error.zig
@@ -10,8 +10,8 @@ export fn entry() void {
}
// error
-// backend=stage1
+// backend=stage2
// target=native
//
-// tmp.zig:6:13: error: comptime control flow inside runtime block
-// tmp.zig:5:9: note: runtime block created here
+// :6:13: error: comptime control flow inside runtime block
+// :5:16: note: runtime control flow here
diff --git a/test/cases/compile_errors/stage1/obj/comptime_continue_inside_runtime_while_optional.zig b/test/cases/compile_errors/comptime_continue_inside_runtime_while_optional.zig
index ed22cc2cac..e6753a5911 100644
--- a/test/cases/compile_errors/stage1/obj/comptime_continue_inside_runtime_while_optional.zig
+++ b/test/cases/compile_errors/comptime_continue_inside_runtime_while_optional.zig
@@ -8,8 +8,8 @@ export fn entry() void {
}
// error
-// backend=stage1
+// backend=stage2
// target=native
//
-// tmp.zig:5:23: error: comptime control flow inside runtime block
-// tmp.zig:5:9: note: runtime block created here
+// :5:23: error: comptime control flow inside runtime block
+// :5:16: note: runtime control flow here
diff --git a/test/cases/compile_errors/stage1/obj/comptime_slice-sentinel_does_not_match_memory_at_target_index_terminated.zig b/test/cases/compile_errors/comptime_slice-sentinel_does_not_match_memory_at_target_index_terminated.zig
index 598d23a305..ffa21af10a 100644
--- a/test/cases/compile_errors/stage1/obj/comptime_slice-sentinel_does_not_match_memory_at_target_index_terminated.zig
+++ b/test/cases/compile_errors/comptime_slice-sentinel_does_not_match_memory_at_target_index_terminated.zig
@@ -55,13 +55,20 @@ export fn foo_slice() void {
}
// error
-// backend=stage1
+// backend=stage2
// target=native
//
-// :4:29: error: slice-sentinel does not match memory at target index
-// :12:29: error: slice-sentinel does not match memory at target index
-// :20:29: error: slice-sentinel does not match memory at target index
-// :28:29: error: slice-sentinel does not match memory at target index
-// :36:29: error: slice-sentinel does not match memory at target index
-// :44:29: error: slice-sentinel does not match memory at target index
-// :52:29: error: slice-sentinel does not match memory at target index
+// :4:29: error: value in memory does not match slice sentinel
+// :4:29: note: expected '0', found '100'
+// :12:29: error: value in memory does not match slice sentinel
+// :12:29: note: expected '0', found '100'
+// :20:29: error: value in memory does not match slice sentinel
+// :20:29: note: expected '0', found '100'
+// :28:29: error: value in memory does not match slice sentinel
+// :28:29: note: expected '0', found '100'
+// :36:29: error: value in memory does not match slice sentinel
+// :36:29: note: expected '0', found '100'
+// :44:29: error: value in memory does not match slice sentinel
+// :44:29: note: expected '0', found '100'
+// :52:29: error: value in memory does not match slice sentinel
+// :52:29: note: expected '0', found '100'
diff --git a/test/cases/compile_errors/stage1/obj/comptime_slice-sentinel_does_not_match_memory_at_target_index_unterminated.zig b/test/cases/compile_errors/comptime_slice-sentinel_does_not_match_memory_at_target_index_unterminated.zig
index d6b469aaf1..c5bb2d9643 100644
--- a/test/cases/compile_errors/stage1/obj/comptime_slice-sentinel_does_not_match_memory_at_target_index_unterminated.zig
+++ b/test/cases/compile_errors/comptime_slice-sentinel_does_not_match_memory_at_target_index_unterminated.zig
@@ -55,13 +55,20 @@ export fn foo_slice() void {
}
// error
-// backend=stage1
+// backend=stage2
// target=native
//
-// :4:29: error: slice-sentinel does not match memory at target index
-// :12:29: error: slice-sentinel does not match memory at target index
-// :20:29: error: slice-sentinel does not match memory at target index
-// :28:29: error: slice-sentinel does not match memory at target index
-// :36:29: error: slice-sentinel does not match memory at target index
-// :44:29: error: slice-sentinel does not match memory at target index
-// :52:29: error: slice-sentinel does not match memory at target index
+// :4:29: error: value in memory does not match slice sentinel
+// :4:29: note: expected '0', found '100'
+// :12:29: error: value in memory does not match slice sentinel
+// :12:29: note: expected '0', found '100'
+// :20:29: error: value in memory does not match slice sentinel
+// :20:29: note: expected '0', found '100'
+// :28:29: error: value in memory does not match slice sentinel
+// :28:29: note: expected '0', found '100'
+// :36:29: error: value in memory does not match slice sentinel
+// :36:29: note: expected '0', found '100'
+// :44:29: error: value in memory does not match slice sentinel
+// :44:29: note: expected '0', found '100'
+// :52:29: error: value in memory does not match slice sentinel
+// :52:29: note: expected '0', found '100'
diff --git a/test/cases/compile_errors/stage1/obj/comptime_slice-sentinel_does_not_match_target-sentinel.zig b/test/cases/compile_errors/comptime_slice-sentinel_does_not_match_target-sentinel.zig
index b204cfc684..b574df8833 100644
--- a/test/cases/compile_errors/stage1/obj/comptime_slice-sentinel_does_not_match_target-sentinel.zig
+++ b/test/cases/compile_errors/comptime_slice-sentinel_does_not_match_target-sentinel.zig
@@ -55,13 +55,20 @@ export fn foo_slice() void {
}
// error
-// backend=stage1
+// backend=stage2
// target=native
//
-// :4:29: error: slice-sentinel does not match target-sentinel
-// :12:29: error: slice-sentinel does not match target-sentinel
-// :20:29: error: slice-sentinel does not match target-sentinel
-// :28:29: error: slice-sentinel does not match target-sentinel
-// :36:29: error: slice-sentinel does not match target-sentinel
-// :44:29: error: slice-sentinel does not match target-sentinel
-// :52:29: error: slice-sentinel does not match target-sentinel
+// :4:29: error: value in memory does not match slice sentinel
+// :4:29: note: expected '255', found '0'
+// :12:29: error: value in memory does not match slice sentinel
+// :12:29: note: expected '255', found '0'
+// :20:29: error: value in memory does not match slice sentinel
+// :20:29: note: expected '255', found '0'
+// :28:29: error: value in memory does not match slice sentinel
+// :28:29: note: expected '255', found '0'
+// :36:29: error: value in memory does not match slice sentinel
+// :36:29: note: expected '255', found '0'
+// :44:29: error: value in memory does not match slice sentinel
+// :44:29: note: expected '255', found '0'
+// :52:29: error: value in memory does not match slice sentinel
+// :52:29: note: expected '255', found '0'
diff --git a/test/cases/compile_errors/stage1/obj/comptime_slice-sentinel_is_out_of_bounds_terminated.zig b/test/cases/compile_errors/comptime_slice-sentinel_is_out_of_bounds_terminated.zig
index 82c19126c0..86bd4ce8bb 100644
--- a/test/cases/compile_errors/stage1/obj/comptime_slice-sentinel_is_out_of_bounds_terminated.zig
+++ b/test/cases/compile_errors/comptime_slice-sentinel_is_out_of_bounds_terminated.zig
@@ -55,13 +55,13 @@ export fn foo_slice() void {
}
// error
-// backend=stage1
+// backend=stage2
// target=native
//
-// :4:29: error: out of bounds slice
-// :12:29: error: out of bounds slice
-// :20:29: error: out of bounds slice
-// :28:29: error: out of bounds slice
-// :36:29: error: out of bounds slice
-// :44:29: error: out of bounds slice
-// :52:29: error: out of bounds slice
+// :4:33: error: slice end index 15 exceeds bounds of containing decl of type '[14:0]u8'
+// :12:33: error: slice end index 15 exceeds bounds of containing decl of type '[14:0]u8'
+// :20:33: error: slice end index 15 exceeds bounds of containing decl of type '[14:0]u8'
+// :28:33: error: slice end index 15 exceeds bounds of containing decl of type '[14:0]u8'
+// :36:33: error: slice end index 15 exceeds bounds of containing decl of type '[14:0]u8'
+// :44:33: error: slice end index 15 exceeds bounds of containing decl of type '[14:0]u8'
+// :52:33: error: end index 15 out of bounds for slice of length 14
diff --git a/test/cases/compile_errors/stage1/obj/comptime_slice-sentinel_is_out_of_bounds_unterminated.zig b/test/cases/compile_errors/comptime_slice-sentinel_is_out_of_bounds_unterminated.zig
index 952b17600a..e1b8a5bc2d 100644
--- a/test/cases/compile_errors/stage1/obj/comptime_slice-sentinel_is_out_of_bounds_unterminated.zig
+++ b/test/cases/compile_errors/comptime_slice-sentinel_is_out_of_bounds_unterminated.zig
@@ -55,13 +55,13 @@ export fn foo_slice() void {
}
// error
-// backend=stage1
+// backend=stage2
// target=native
//
-// :4:29: error: slice-sentinel is out of bounds
-// :12:29: error: slice-sentinel is out of bounds
-// :20:29: error: slice-sentinel is out of bounds
-// :28:29: error: slice-sentinel is out of bounds
-// :36:29: error: slice-sentinel is out of bounds
-// :44:29: error: slice-sentinel is out of bounds
-// :52:29: error: slice-sentinel is out of bounds
+// :4:33: error: slice end index 14 exceeds bounds of containing decl of type '[14]u8'
+// :12:33: error: slice end index 14 exceeds bounds of containing decl of type '[14]u8'
+// :20:33: error: slice end index 14 exceeds bounds of containing decl of type '[14]u8'
+// :28:33: error: slice end index 14 exceeds bounds of containing decl of type '[14]u8'
+// :36:33: error: slice end index 14 exceeds bounds of containing decl of type '[14]u8'
+// :44:33: error: slice end index 14 exceeds bounds of containing decl of type '[14]u8'
+// :52:33: error: slice end index 14 exceeds bounds of containing decl of type '[14]u8'
diff --git a/test/cases/compile_errors/stage1/obj/comptime_slice_of_an_undefined_slice.zig b/test/cases/compile_errors/comptime_slice_of_an_undefined_slice.zig
index 4aa519f41e..d1b22d86b7 100644
--- a/test/cases/compile_errors/stage1/obj/comptime_slice_of_an_undefined_slice.zig
+++ b/test/cases/compile_errors/comptime_slice_of_an_undefined_slice.zig
@@ -5,7 +5,7 @@ comptime {
}
// error
-// backend=stage1
+// backend=stage2
// target=native
//
-// tmp.zig:3:14: error: slice of undefined
+// :3:14: error: slice of undefined
diff --git a/test/cases/compile_errors/method_call_with_first_arg_type_wrong_container.zig b/test/cases/compile_errors/method_call_with_first_arg_type_wrong_container.zig
index 9e05a370f9..ad481a6158 100644
--- a/test/cases/compile_errors/method_call_with_first_arg_type_wrong_container.zig
+++ b/test/cases/compile_errors/method_call_with_first_arg_type_wrong_container.zig
@@ -3,14 +3,14 @@ pub const List = struct {
allocator: *Allocator,
pub fn init(allocator: *Allocator) List {
- return List {
+ return List{
.len = 0,
.allocator = allocator,
};
}
};
-pub var global_allocator = Allocator {
+pub var global_allocator = Allocator{
.field = 1234,
};
@@ -28,4 +28,4 @@ export fn foo() void {
// target=native
//
// :23:6: error: no field or member function named 'init' in 'tmp.List'
-// :1:14: note: struct declared here
+// :1:18: note: struct declared here
diff --git a/test/cases/compile_errors/stage1/obj/reify_type.Fn_with_is_generic_true.zig b/test/cases/compile_errors/reify_type.Fn_with_is_generic_true.zig
index f2849b5eb4..cf80c9f4ba 100644
--- a/test/cases/compile_errors/stage1/obj/reify_type.Fn_with_is_generic_true.zig
+++ b/test/cases/compile_errors/reify_type.Fn_with_is_generic_true.zig
@@ -11,7 +11,7 @@ const Foo = @Type(.{
comptime { _ = Foo; }
// error
-// backend=stage1
+// backend=stage2
// target=native
//
-// tmp.zig:1:20: error: Type.Fn.is_generic must be false for @Type
+// :1:13: error: Type.Fn.is_generic must be false for @Type
diff --git a/test/cases/compile_errors/stage1/obj/reify_type.Fn_with_is_var_args_true_and_non-C_callconv.zig b/test/cases/compile_errors/reify_type.Fn_with_is_var_args_true_and_non-C_callconv.zig
index 4d449e9eb9..8328ee9b97 100644
--- a/test/cases/compile_errors/stage1/obj/reify_type.Fn_with_is_var_args_true_and_non-C_callconv.zig
+++ b/test/cases/compile_errors/reify_type.Fn_with_is_var_args_true_and_non-C_callconv.zig
@@ -11,7 +11,7 @@ const Foo = @Type(.{
comptime { _ = Foo; }
// error
-// backend=stage1
+// backend=stage2
// target=native
//
-// tmp.zig:1:20: error: varargs functions must have C calling convention
+// :1:13: error: varargs functions must have C calling convention
diff --git a/test/cases/compile_errors/stage1/obj/reify_type.Fn_with_return_type_null.zig b/test/cases/compile_errors/reify_type.Fn_with_return_type_null.zig
index 98cbc37d41..f6587dcd7e 100644
--- a/test/cases/compile_errors/stage1/obj/reify_type.Fn_with_return_type_null.zig
+++ b/test/cases/compile_errors/reify_type.Fn_with_return_type_null.zig
@@ -11,7 +11,7 @@ const Foo = @Type(.{
comptime { _ = Foo; }
// error
-// backend=stage1
+// backend=stage2
// target=native
//
-// tmp.zig:1:20: error: Type.Fn.return_type must be non-null for @Type
+// :1:13: error: Type.Fn.return_type must be non-null for @Type
diff --git a/test/cases/compile_errors/stage1/obj/reify_type_for_exhaustive_enum_with_non-integer_tag_type.zig b/test/cases/compile_errors/reify_type_for_exhaustive_enum_with_non-integer_tag_type.zig
index 56d05578be..e72b783d83 100644
--- a/test/cases/compile_errors/stage1/obj/reify_type_for_exhaustive_enum_with_non-integer_tag_type.zig
+++ b/test/cases/compile_errors/reify_type_for_exhaustive_enum_with_non-integer_tag_type.zig
@@ -12,7 +12,7 @@ export fn entry() void {
}
// error
-// backend=stage1
+// backend=stage2
// target=native
//
-// tmp.zig:1:20: error: Type.Enum.tag_type must be an integer type, not 'bool'
+// :1:13: error: Type.Enum.tag_type must be an integer type
diff --git a/test/cases/compile_errors/stage1/obj/reify_type_for_exhaustive_enum_with_undefined_tag_type.zig b/test/cases/compile_errors/reify_type_for_exhaustive_enum_with_undefined_tag_type.zig
index e6454d2ee5..1c237a17bd 100644
--- a/test/cases/compile_errors/stage1/obj/reify_type_for_exhaustive_enum_with_undefined_tag_type.zig
+++ b/test/cases/compile_errors/reify_type_for_exhaustive_enum_with_undefined_tag_type.zig
@@ -12,7 +12,7 @@ export fn entry() void {
}
// error
-// backend=stage1
+// backend=stage2
// target=native
//
-// tmp.zig:1:20: error: use of undefined value here causes undefined behavior
+// :1:13: error: use of undefined value here causes undefined behavior
diff --git a/test/cases/compile_errors/stage1/obj/reify_type_for_exhaustive_enum_with_zero_fields.zig b/test/cases/compile_errors/reify_type_for_exhaustive_enum_with_zero_fields.zig
index d3ce70c1b0..44876e938a 100644
--- a/test/cases/compile_errors/stage1/obj/reify_type_for_exhaustive_enum_with_zero_fields.zig
+++ b/test/cases/compile_errors/reify_type_for_exhaustive_enum_with_zero_fields.zig
@@ -12,7 +12,7 @@ export fn entry() void {
}
// error
-// backend=stage1
+// backend=stage2
// target=native
//
-// tmp.zig:1:20: error: enums must have 1 or more fields
+// :1:13: error: enums must have at least one field
diff --git a/test/cases/compile_errors/stage1/obj/reify_type_for_tagged_union_with_extra_enum_field.zig b/test/cases/compile_errors/reify_type_for_tagged_union_with_extra_enum_field.zig
index 0c56cb91ea..ccd0000494 100644
--- a/test/cases/compile_errors/stage1/obj/reify_type_for_tagged_union_with_extra_enum_field.zig
+++ b/test/cases/compile_errors/reify_type_for_tagged_union_with_extra_enum_field.zig
@@ -28,7 +28,9 @@ export fn entry() void {
}
// error
-// backend=stage1
+// backend=stage2
// target=native
//
-// tmp.zig:14:23: error: enum field missing: 'arst'
+// :14:16: error: enum field(s) missing in union
+// :1:13: note: field 'arst' missing, declared here
+// :1:13: note: enum declared here
diff --git a/test/cases/compile_errors/stage1/obj/reify_type_for_tagged_union_with_extra_union_field.zig b/test/cases/compile_errors/reify_type_for_tagged_union_with_extra_union_field.zig
index 63cf1f178e..414bf2ce5e 100644
--- a/test/cases/compile_errors/stage1/obj/reify_type_for_tagged_union_with_extra_union_field.zig
+++ b/test/cases/compile_errors/reify_type_for_tagged_union_with_extra_union_field.zig
@@ -28,8 +28,8 @@ export fn entry() void {
}
// error
-// backend=stage1
+// backend=stage2
// target=native
//
-// tmp.zig:13:23: error: enum field not found: 'arst'
-// tmp.zig:1:20: note: enum declared here
+// :13:16: error: no field named 'arst' in enum 'tmp.Tag__enum_264'
+// :1:13: note: enum declared here
diff --git a/test/cases/compile_errors/stage1/obj/reify_type_for_union_with_zero_fields.zig b/test/cases/compile_errors/reify_type_for_union_with_zero_fields.zig
index 578f902697..0b4f395c81 100644
--- a/test/cases/compile_errors/stage1/obj/reify_type_for_union_with_zero_fields.zig
+++ b/test/cases/compile_errors/reify_type_for_union_with_zero_fields.zig
@@ -11,7 +11,7 @@ export fn entry() void {
}
// error
-// backend=stage1
+// backend=stage2
// target=native
//
-// tmp.zig:1:25: error: unions must have 1 or more fields
+// :1:18: error: unions must have at least one field
diff --git a/test/cases/compile_errors/stage1/obj/reify_type_union_payload_is_undefined.zig b/test/cases/compile_errors/reify_type_union_payload_is_undefined.zig
index 47be31c711..410bb92658 100644
--- a/test/cases/compile_errors/stage1/obj/reify_type_union_payload_is_undefined.zig
+++ b/test/cases/compile_errors/reify_type_union_payload_is_undefined.zig
@@ -4,7 +4,7 @@ const Foo = @Type(.{
comptime { _ = Foo; }
// error
-// backend=stage1
+// backend=stage2
// target=native
//
-// tmp.zig:1:20: error: use of undefined value here causes undefined behavior
+// :1:13: error: use of undefined value here causes undefined behavior
diff --git a/test/cases/compile_errors/stage1/obj/reify_type_with_Type.Int.zig b/test/cases/compile_errors/reify_type_with_Type.Int.zig
index 116bd86e0f..bd98912a03 100644
--- a/test/cases/compile_errors/stage1/obj/reify_type_with_Type.Int.zig
+++ b/test/cases/compile_errors/reify_type_with_Type.Int.zig
@@ -7,7 +7,9 @@ export fn entry() void {
}
// error
-// backend=stage1
+// backend=stage2
// target=native
//
-// tmp.zig:3:31: error: expected type 'std.builtin.Type', found 'std.builtin.Type.Int'
+// :3:31: error: expected type 'builtin.Type', found 'builtin.Type.Int'
+// :?:?: note: struct declared here
+// :?:?: note: union declared here
diff --git a/test/cases/compile_errors/stage1/obj/reify_type_with_undefined.zig b/test/cases/compile_errors/reify_type_with_undefined.zig
index 1de93ccdf6..e5753fa420 100644
--- a/test/cases/compile_errors/stage1/obj/reify_type_with_undefined.zig
+++ b/test/cases/compile_errors/reify_type_with_undefined.zig
@@ -13,8 +13,8 @@ comptime {
}
// error
-// backend=stage1
+// backend=stage2
// target=native
//
-// tmp.zig:2:16: error: use of undefined value here causes undefined behavior
-// tmp.zig:5:16: error: use of undefined value here causes undefined behavior
+// :2:9: error: use of undefined value here causes undefined behavior
+// :5:9: error: use of undefined value here causes undefined behavior
diff --git a/test/cases/compile_errors/stage1/obj/reify_type.Pointer_with_invalid_address_space.zig b/test/cases/compile_errors/stage1/reify_type.Pointer_with_invalid_address_space.zig
index 1ca97ce250..1ca97ce250 100644
--- a/test/cases/compile_errors/stage1/obj/reify_type.Pointer_with_invalid_address_space.zig
+++ b/test/cases/compile_errors/stage1/reify_type.Pointer_with_invalid_address_space.zig
diff --git a/test/cases/compile_errors/stage1/obj/reify_type_with_non-constant_expression.zig b/test/cases/compile_errors/stage1/reify_type_with_non-constant_expression.zig
index 7eec6b395a..7eec6b395a 100644
--- a/test/cases/compile_errors/stage1/obj/reify_type_with_non-constant_expression.zig
+++ b/test/cases/compile_errors/stage1/reify_type_with_non-constant_expression.zig
diff --git a/test/cases/compile_errors/stage1/test/type_mismatch_with_tuple_concatenation.zig b/test/cases/compile_errors/stage1/test/type_mismatch_with_tuple_concatenation.zig
deleted file mode 100644
index 5983224676..0000000000
--- a/test/cases/compile_errors/stage1/test/type_mismatch_with_tuple_concatenation.zig
+++ /dev/null
@@ -1,11 +0,0 @@
-export fn entry() void {
- var x = .{};
- x = x ++ .{ 1, 2, 3 };
-}
-
-// error
-// backend=stage1
-// target=native
-// is_test=1
-//
-// tmp.zig:3:11: error: expected type 'struct:2:14', found 'struct:3:11'
diff --git a/test/cases/compile_errors/tuple_init_edge_cases.zig b/test/cases/compile_errors/tuple_init_edge_cases.zig
new file mode 100644
index 0000000000..32b52cdc1f
--- /dev/null
+++ b/test/cases/compile_errors/tuple_init_edge_cases.zig
@@ -0,0 +1,44 @@
+pub export fn entry1() void {
+ const T = @TypeOf(.{ 123, 3 });
+ var b = T{ .@"1" = 3 }; _ = b;
+ var c = T{ 123, 3 }; _ = c;
+ var d = T{}; _ = d;
+}
+pub export fn entry2() void {
+ var a: u32 = 2;
+ const T = @TypeOf(.{ 123, a });
+ var b = T{ .@"1" = 3 }; _ = b;
+ var c = T{ 123, 3 }; _ = c;
+ var d = T{}; _ = d;
+}
+pub export fn entry3() void {
+ var a: u32 = 2;
+ const T = @TypeOf(.{ 123, a });
+ var b = T{ .@"0" = 123 }; _ = b;
+}
+comptime {
+ var a: u32 = 2;
+ const T = @TypeOf(.{ 123, a });
+ var b = T{ .@"0" = 123 }; _ = b;
+ var c = T{ 123, 2 }; _ = c;
+ var d = T{}; _ = d;
+}
+pub export fn entry4() void {
+ var a: u32 = 2;
+ const T = @TypeOf(.{ 123, a });
+ var b = T{ 123, 4, 5 }; _ = b;
+}
+pub export fn entry5() void {
+ var a: u32 = 2;
+ const T = @TypeOf(.{ 123, a });
+ var b = T{ .@"0" = 123, .@"2" = 123, .@"1" = 123 }; _ = b;
+}
+
+// error
+// backend=stage2
+// target=native
+//
+// :12:14: error: missing tuple field with index 1
+// :17:14: error: missing tuple field with index 1
+// :29:14: error: expected at most 2 tuple fields; found 3
+// :34:30: error: index '2' out of bounds of tuple 'tuple{comptime comptime_int = 123, u32}'
diff --git a/test/cases/compile_errors/type_mismatch_with_tuple_concatenation.zig b/test/cases/compile_errors/type_mismatch_with_tuple_concatenation.zig
new file mode 100644
index 0000000000..4e9bdfa2e5
--- /dev/null
+++ b/test/cases/compile_errors/type_mismatch_with_tuple_concatenation.zig
@@ -0,0 +1,10 @@
+export fn entry() void {
+ var x = .{};
+ x = x ++ .{ 1, 2, 3 };
+}
+
+// error
+// backend=stage2
+// target=native
+//
+// :3:11: error: index '0' out of bounds of tuple '@TypeOf(.{})'
diff --git a/test/cases/compile_errors/wrong_size_to_an_array_literal.zig b/test/cases/compile_errors/wrong_size_to_an_array_literal.zig
index bb8b3c215c..a38d8d4d85 100644
--- a/test/cases/compile_errors/wrong_size_to_an_array_literal.zig
+++ b/test/cases/compile_errors/wrong_size_to_an_array_literal.zig
@@ -7,4 +7,4 @@ comptime {
// backend=stage2
// target=native
//
-// :2:31: error: index 2 outside array of length 2
+// :2:24: error: expected 2 array elements; found 3
diff --git a/test/cases/llvm/shift_right_plus_left.0.zig b/test/cases/llvm/shift_right_plus_left.0.zig
deleted file mode 100644
index 23b733c493..0000000000
--- a/test/cases/llvm/shift_right_plus_left.0.zig
+++ /dev/null
@@ -1,12 +0,0 @@
-pub fn main() void {
- var i: u32 = 16;
- assert(i >> 1, 8);
-}
-fn assert(a: u32, b: u32) void {
- if (a != b) unreachable;
-}
-
-// run
-// backend=llvm
-// target=x86_64-linux,x86_64-macos
-//
diff --git a/test/cases/llvm/shift_right_plus_left.1.zig b/test/cases/llvm/shift_right_plus_left.1.zig
deleted file mode 100644
index 994b67b9d0..0000000000
--- a/test/cases/llvm/shift_right_plus_left.1.zig
+++ /dev/null
@@ -1,10 +0,0 @@
-pub fn main() void {
- var i: u32 = 16;
- assert(i << 1, 32);
-}
-fn assert(a: u32, b: u32) void {
- if (a != b) unreachable;
-}
-
-// run
-//