authorgravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2017-06-14 19:32:52-04:00
committergravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2017-06-14 19:32:52-04:00
logae61e26680b967414194b4fa65568a8023108678
tree53f2d8441dc55dc7ba22e68c92e050c63c181687
parent7f0620a20fc431717d017d0c19f1e1f29723d93f

fix compiler segfault on `null ?? x`

closes #390

2 files changed, 6 insertions(+), 0 deletions(-)

src/codegen.cpp+1
......@@ -4224,6 +4224,7 @@ static void define_builtin_types(CodeGen *g) {
42244224 {
42254225 TypeTableEntry *entry = new_type_table_entry(TypeTableEntryIdNullLit);
42264226 buf_init_from_str(&entry->name, "(null)");
4227 entry->zero_bits = true;
42274228 g->builtin_types.entry_null = entry;
42284229 }
42294230 {
test/cases/null.zig+5
......@@ -143,3 +143,8 @@ test "unwrap nullable which is field of global var" {
143143 unreachable;
144144 }
145145}
146
147test "null with default unwrap" {
148 const x: i32 = null ?? 1;
149 assert(x == 1);
150}