diff options
| author | Andrew Kelley <andrew@ziglang.org> | 2022-06-12 14:34:43 -0700 |
|---|---|---|
| committer | Andrew Kelley <andrew@ziglang.org> | 2022-06-12 14:46:05 -0700 |
| commit | 13f02c30e62564b85c2fbaa98e632d44f854cf53 (patch) | |
| tree | c04e6204e5d6dbc03d5c5b9846b63eb3bea765b1 /src/Sema.zig | |
| parent | ffa700ee58cd29dafe2bbdfe78a4bd4f7bab0674 (diff) | |
| download | zig-13f02c30e62564b85c2fbaa98e632d44f854cf53.tar.gz zig-13f02c30e62564b85c2fbaa98e632d44f854cf53.zip | |
stage2: fix some inline asm incompatibilities with stage1
Diffstat (limited to 'src/Sema.zig')
| -rw-r--r-- | src/Sema.zig | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/src/Sema.zig b/src/Sema.zig index a5e991c617..a769194776 100644 --- a/src/Sema.zig +++ b/src/Sema.zig @@ -11406,6 +11406,7 @@ fn zirAsm( // Indicate the output is the asm instruction return value. arg.* = .none; const out_ty = try sema.resolveType(block, ret_ty_src, output.data.operand); + try sema.queueFullTypeResolution(out_ty); expr_ty = try sema.addType(out_ty); } else { arg.* = try sema.resolveInst(output.data.operand); @@ -11430,7 +11431,10 @@ fn zirAsm( switch (uncasted_arg_ty.zigTypeTag()) { .ComptimeInt => arg.* = try sema.coerce(block, Type.initTag(.usize), uncasted_arg, src), .ComptimeFloat => arg.* = try sema.coerce(block, Type.initTag(.f64), uncasted_arg, src), - else => arg.* = uncasted_arg, + else => { + arg.* = uncasted_arg; + try sema.queueFullTypeResolution(uncasted_arg_ty); + }, } const constraint = sema.code.nullTerminatedString(input.data.constraint); |
