disallow calling @trap at comptime
This commit is contained in:
committed by
Veikka Tuominen
parent
03adafd802
commit
ec934c6d32
@@ -5620,6 +5620,8 @@ fn zirTrap(sema: *Sema, block: *Block, inst: Zir.Inst.Index) CompileError!Zir.In
|
||||
const src_node = sema.code.instructions.items(.data)[@intFromEnum(inst)].node;
|
||||
const src = LazySrcLoc.nodeOffset(src_node);
|
||||
sema.src = src;
|
||||
if (block.is_comptime)
|
||||
return sema.fail(block, src, "encountered @trap at comptime", .{});
|
||||
_ = try block.addNoOp(.trap);
|
||||
return always_noreturn;
|
||||
}
|
||||
|
||||
9
test/cases/compile_errors/@trap_comptime_call.zig
Normal file
9
test/cases/compile_errors/@trap_comptime_call.zig
Normal file
@@ -0,0 +1,9 @@
|
||||
pub fn entry() void {
|
||||
comptime @trap();
|
||||
}
|
||||
|
||||
// error
|
||||
// backend=stage2
|
||||
// target=native
|
||||
//
|
||||
// :2:14: error: encountered @trap at comptime
|
||||
Reference in New Issue
Block a user