mirror of
https://github.com/ziglang/zig.git
synced 2026-02-13 12:59:04 +00:00
Add missing compile error when ptr used instead of array
in array literals. Fixes #3524
This commit is contained in:
parent
345042ecbc
commit
32c89531b1
@ -17590,7 +17590,10 @@ static IrInstruction *ir_analyze_instruction_elem_ptr(IrAnalyze *ira, IrInstruct
|
||||
false);
|
||||
array_ptr_val->data.x_struct.fields[slice_ptr_index].data.x_ptr.mut = ConstPtrMutInfer;
|
||||
} else {
|
||||
zig_unreachable();
|
||||
ir_add_error(ira, elem_ptr_instruction->init_array_type,
|
||||
buf_sprintf("expected array type or [_], found '%s'",
|
||||
buf_ptr(&array_type->name)));
|
||||
return ira->codegen->invalid_instruction;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@ -2,6 +2,19 @@ const tests = @import("tests.zig");
|
||||
const builtin = @import("builtin");
|
||||
|
||||
pub fn addCases(cases: *tests.CompileErrorContext) void {
|
||||
cases.add(
|
||||
"using an unknown len ptr type instead of array",
|
||||
\\const resolutions = [*][*]const u8{
|
||||
\\ c"[320 240 ]",
|
||||
\\ null,
|
||||
\\};
|
||||
\\comptime {
|
||||
\\ _ = resolutions;
|
||||
\\}
|
||||
,
|
||||
"tmp.zig:1:21: error: expected array type or [_], found '[*][*]const u8'",
|
||||
);
|
||||
|
||||
cases.add(
|
||||
"comparison with error union and error value",
|
||||
\\export fn entry() void {
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user