diff options
| author | Timon Kruiper <timonkruiper@gmail.com> | 2021-03-23 16:06:15 +0100 |
|---|---|---|
| committer | Andrew Kelley <andrew@ziglang.org> | 2021-03-23 11:42:46 -0700 |
| commit | 982df37135a5ce2e5e93067d716f096ec614f3ef (patch) | |
| tree | dc8906662331e00bd897e69fe3ccfa227631a70e /src | |
| parent | d73b0473a1df98703d5c742d59e57e225cfa7ba4 (diff) | |
| download | zig-982df37135a5ce2e5e93067d716f096ec614f3ef.tar.gz zig-982df37135a5ce2e5e93067d716f096ec614f3ef.zip | |
stage2: handle void value in genRet in LLVM backend
Diffstat (limited to 'src')
| -rw-r--r-- | src/codegen/llvm.zig | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/src/codegen/llvm.zig b/src/codegen/llvm.zig index e78bd8d103..cd601debda 100644 --- a/src/codegen/llvm.zig +++ b/src/codegen/llvm.zig @@ -727,6 +727,11 @@ pub const FuncGen = struct { } fn genRet(self: *FuncGen, inst: *Inst.UnOp) !?*const llvm.Value { + if (!inst.operand.ty.hasCodeGenBits()) { + // TODO: in astgen these instructions should turn into `retvoid` instructions. + _ = self.builder.buildRetVoid(); + return null; + } _ = self.builder.buildRet(try self.resolveInst(inst.operand)); return null; } |
