Skip to content

Commit c2ad601

Browse files
committed
fix: list and map are not constant if mutable
1 parent 52872f0 commit c2ad601

1 file changed

Lines changed: 10 additions & 0 deletions

File tree

src/Ast.zig

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -421,6 +421,11 @@ pub const Slice = struct {
421421
const components = ast.nodes.items(.components)[node].List;
422422
const node_types = ast.nodes.items(.tag);
423423

424+
if (ast.nodes.items(.type_def)[node].?.resolved_type.?.List.mutable) {
425+
self.result = false;
426+
return true;
427+
}
428+
424429
if (components.items.len == 0) {
425430
self.result = self.result == null or self.result.?;
426431
}
@@ -436,6 +441,11 @@ pub const Slice = struct {
436441
const components = ast.nodes.items(.components)[node].Map;
437442
const node_types = ast.nodes.items(.tag);
438443

444+
if (ast.nodes.items(.type_def)[node].?.resolved_type.?.Map.mutable) {
445+
self.result = false;
446+
return true;
447+
}
448+
439449
if (components.entries.len == 0) {
440450
self.result = self.result == null or self.result.?;
441451
}

0 commit comments

Comments
 (0)