diff options
| author | Jacob G-W <jacoblevgw@gmail.com> | 2021-11-11 14:26:44 -0500 |
|---|---|---|
| committer | Jakub Konka <kubkon@jakubkonka.com> | 2021-11-11 11:36:26 -0800 |
| commit | 08d6876d20303458a4a108300d5a2492e8bd7856 (patch) | |
| tree | 225cad31ec259f712cf1a7149f67ffdd1804314f /src/codegen | |
| parent | 19e56638694dddf1b9137a352abf31df7952c5eb (diff) | |
| download | zig-08d6876d20303458a4a108300d5a2492e8bd7856.tar.gz zig-08d6876d20303458a4a108300d5a2492e8bd7856.zip | |
c codegen: fix airIsNull with pointers
Diffstat (limited to 'src/codegen')
| -rw-r--r-- | src/codegen/c.zig | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/src/codegen/c.zig b/src/codegen/c.zig index 16828ecb82..c00b0247bb 100644 --- a/src/codegen/c.zig +++ b/src/codegen/c.zig @@ -2165,7 +2165,10 @@ fn airIsNull( const ty = f.air.typeOf(un_op); var opt_buf: Type.Payload.ElemType = undefined; - const payload_type = ty.optionalChild(&opt_buf); + const payload_type = if (ty.zigTypeTag() == .Pointer) + ty.childType().optionalChild(&opt_buf) + else + ty.optionalChild(&opt_buf); if (ty.isPtrLikeOptional()) { // operand is a regular pointer, test `operand !=/== NULL` |
