diff options
| author | Andrew Kelley <andrew@ziglang.org> | 2023-07-18 18:34:14 -0700 |
|---|---|---|
| committer | Andrew Kelley <andrew@ziglang.org> | 2023-07-18 19:02:06 -0700 |
| commit | 8daa8d255b84880de60dc1a86d2f1d4a89463bbc (patch) | |
| tree | 59b91d81929943f420ebf5c5c1af368fe26937fd /src | |
| parent | 727b371bbc53b1fcabb6c6899043da3a84195b3c (diff) | |
| download | zig-8daa8d255b84880de60dc1a86d2f1d4a89463bbc.tar.gz zig-8daa8d255b84880de60dc1a86d2f1d4a89463bbc.zip | |
Sema: fix fn_proto_param LazySrcLoc resolution
to match source code span from merge-base.
Diffstat (limited to 'src')
| -rw-r--r-- | src/Module.zig | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/src/Module.zig b/src/Module.zig index 0467688974..ea444d3cc4 100644 --- a/src/Module.zig +++ b/src/Module.zig @@ -2152,8 +2152,15 @@ pub const SrcLoc = struct { while (it.next()) |param| : (i += 1) { if (i == fn_proto_param.param_index) { if (param.anytype_ellipsis3) |token| return tokenToSpan(tree, token); - if (param.name_token) |token| return tokenToSpan(tree, token); - return nodeToSpan(tree, param.type_expr); + const first_token = param.comptime_noalias orelse + param.name_token orelse + tree.firstToken(param.type_expr); + return tokensToSpan( + tree, + first_token, + tree.lastToken(param.type_expr), + first_token, + ); } } unreachable; |
