aboutsummaryrefslogtreecommitdiff
path: root/src/server
diff options
context:
space:
mode:
Diffstat (limited to 'src/server')
-rw-r--r--src/server/analysis.odin4
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 {