diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/server/analysis.odin | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/src/server/analysis.odin b/src/server/analysis.odin index d11d8b0..570a035 100644 --- a/src/server/analysis.odin +++ b/src/server/analysis.odin @@ -1943,6 +1943,10 @@ resolve_slice_expression :: proc(ast_context: ^AstContext, slice_expr: ^ast.Slic case SymbolDynamicArrayValue: expr = v.expr case SymbolMultiPointerValue: + // Slicing multi-pointer behaviour outlined here: https://odin-lang.org/docs/overview/#multi-pointers + if slice_expr.high == nil { + return symbol, true + } expr = v.expr case SymbolUntypedValue: if v.type == .String { |