parent
4b68224c60
commit
7f4d4bdb3f
|
@ -6037,12 +6037,10 @@ static TypeTableEntry *analyze_prefix_op_expr(CodeGen *g, ImportTableEntry *impo
|
|||
*expr_node);
|
||||
if (expr_type->id == TypeTableEntryIdInvalid) {
|
||||
return expr_type;
|
||||
} else if (expr_type->id == TypeTableEntryIdInt ||
|
||||
expr_type->id == TypeTableEntryIdNumLitInt)
|
||||
{
|
||||
} else if (expr_type->id == TypeTableEntryIdInt) {
|
||||
return expr_type;
|
||||
} else {
|
||||
add_node_error(g, *expr_node, buf_sprintf("invalid binary not type: '%s'",
|
||||
add_node_error(g, node, buf_sprintf("unable to perform binary not operation on type '%s'",
|
||||
buf_ptr(&expr_type->name)));
|
||||
return g->builtin_types.entry_invalid;
|
||||
}
|
||||
|
|
|
@ -1583,6 +1583,13 @@ fn foo() {
|
|||
)SOURCE", 2,
|
||||
".tmp_source.zig:24:11: error: function called as method of 'List', but first parameter is of type '&Allocator'",
|
||||
".tmp_source.zig:6:9: note: function declared here");
|
||||
|
||||
add_compile_fail_case("binary not on number literal", R"SOURCE(
|
||||
const TINY_QUANTUM_SHIFT = 4;
|
||||
const TINY_QUANTUM_SIZE = 1 << TINY_QUANTUM_SHIFT;
|
||||
var block_aligned_stuff: usize = (4 + TINY_QUANTUM_SIZE) & ~(TINY_QUANTUM_SIZE - 1);
|
||||
)SOURCE", 1, ".tmp_source.zig:4:60: error: unable to perform binary not operation on type '(integer literal)'");
|
||||
|
||||
}
|
||||
|
||||
//////////////////////////////////////////////////////////////////////////////
|
||||
|
|
Loading…
Reference in New Issue