aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authormlugg <mlugg@mlugg.co.uk>2025-01-22 02:22:39 +0000
committermlugg <mlugg@mlugg.co.uk>2025-01-22 04:11:02 +0000
commit8470b6ea37a82330be2c5ab41460fe58b8cfd4f6 (patch)
tree5d491879869d4f97f78b0e7b62ea0ad09dee24fd /src
parent6e7ae66871575a2bf6b15c0f0280b13a57fc59eb (diff)
downloadzig-8470b6ea37a82330be2c5ab41460fe58b8cfd4f6.tar.gz
zig-8470b6ea37a82330be2c5ab41460fe58b8cfd4f6.zip
Zcu: fix switch prong source location resolution
Resolves: #22343
Diffstat (limited to 'src')
-rw-r--r--src/Zcu.zig5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/Zcu.zig b/src/Zcu.zig
index 8f35253509..c75cd5d40c 100644
--- a/src/Zcu.zig
+++ b/src/Zcu.zig
@@ -1864,15 +1864,16 @@ pub const SrcLoc = struct {
if (want_case_idx.isSpecial()) {
break case;
}
+ continue;
}
const is_multi = case.ast.values.len != 1 or
node_tags[case.ast.values[0]] == .switch_range;
- if (!want_case_idx.isSpecial()) switch (want_case_idx.kind) {
+ switch (want_case_idx.kind) {
.scalar => if (!is_multi and want_case_idx.index == scalar_i) break case,
.multi => if (is_multi and want_case_idx.index == multi_i) break case,
- };
+ }
if (is_multi) {
multi_i += 1;