aboutsummaryrefslogtreecommitdiff
path: root/src/value.zig
diff options
context:
space:
mode:
Diffstat (limited to 'src/value.zig')
-rw-r--r--src/value.zig12
1 files changed, 10 insertions, 2 deletions
diff --git a/src/value.zig b/src/value.zig
index 042a960b25..59cf9046f4 100644
--- a/src/value.zig
+++ b/src/value.zig
@@ -1911,7 +1911,11 @@ pub const Value = extern union {
.lazy_align => {
const ty = lhs.castTag(.lazy_align).?.data;
- if (try ty.hasRuntimeBitsAdvanced(false, opt_sema)) {
+ const strat: Type.AbiAlignmentAdvancedStrat = if (opt_sema) |sema| .{ .sema = sema } else .eager;
+ if (ty.hasRuntimeBitsAdvanced(false, strat) catch |err| switch (err) {
+ error.NeedLazy => unreachable,
+ else => |e| return e,
+ }) {
return .gt;
} else {
return .eq;
@@ -1919,7 +1923,11 @@ pub const Value = extern union {
},
.lazy_size => {
const ty = lhs.castTag(.lazy_size).?.data;
- if (try ty.hasRuntimeBitsAdvanced(false, opt_sema)) {
+ const strat: Type.AbiAlignmentAdvancedStrat = if (opt_sema) |sema| .{ .sema = sema } else .eager;
+ if (ty.hasRuntimeBitsAdvanced(false, strat) catch |err| switch (err) {
+ error.NeedLazy => unreachable,
+ else => |e| return e,
+ }) {
return .gt;
} else {
return .eq;