mirror of
https://github.com/ziglang/zig.git
synced 2025-12-06 06:13:07 +00:00
AstGen: error for redundant @inComptime()
This commit is contained in:
parent
5f2bdafa39
commit
1fdf13a148
@ -9310,7 +9310,6 @@ fn builtinCall(
|
||||
.frame => return rvalue(gz, ri, try gz.addNodeExtended(.frame, node), node),
|
||||
.frame_address => return rvalue(gz, ri, try gz.addNodeExtended(.frame_address, node), node),
|
||||
.breakpoint => return rvalue(gz, ri, try gz.addNodeExtended(.breakpoint, node), node),
|
||||
.in_comptime => return rvalue(gz, ri, try gz.addNodeExtended(.in_comptime, node), node),
|
||||
|
||||
.type_info => return simpleUnOpType(gz, scope, ri, node, params[0], .type_info),
|
||||
.size_of => return simpleUnOpType(gz, scope, ri, node, params[0], .size_of),
|
||||
@ -9353,6 +9352,12 @@ fn builtinCall(
|
||||
.truncate => return typeCast(gz, scope, ri, node, params[0], .truncate, builtin_name),
|
||||
// zig fmt: on
|
||||
|
||||
.in_comptime => if (gz.is_comptime) {
|
||||
return astgen.failNode(node, "redundant '@inComptime' in comptime scope", .{});
|
||||
} else {
|
||||
return rvalue(gz, ri, try gz.addNodeExtended(.in_comptime, node), node);
|
||||
},
|
||||
|
||||
.Type => {
|
||||
const operand = try expr(gz, scope, .{ .rl = .{ .coerced_ty = .type_info_type } }, params[0]);
|
||||
|
||||
|
||||
@ -1711,7 +1711,6 @@ test "@inComptime" {
|
||||
}
|
||||
};
|
||||
try expectEqual(false, @inComptime());
|
||||
try expectEqual(true, comptime @inComptime());
|
||||
try expectEqual(false, S.inComptime());
|
||||
try expectEqual(true, comptime S.inComptime());
|
||||
}
|
||||
|
||||
7
test/cases/compile_errors/redundant_in_comptime.zig
Normal file
7
test/cases/compile_errors/redundant_in_comptime.zig
Normal file
@ -0,0 +1,7 @@
|
||||
comptime {
|
||||
_ = @inComptime();
|
||||
}
|
||||
|
||||
// error
|
||||
//
|
||||
// :2:9: error: redundant '@inComptime' in comptime scope
|
||||
Loading…
x
Reference in New Issue
Block a user