summaryrefslogtreecommitdiff
path: root/src/main/java/org
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/org')
-rw-r--r--src/main/java/org/zwobble/hobgoblin/compiler/typechecker/NamespaceNameResolution.java5
1 files changed, 2 insertions, 3 deletions
diff --git a/src/main/java/org/zwobble/hobgoblin/compiler/typechecker/NamespaceNameResolution.java b/src/main/java/org/zwobble/hobgoblin/compiler/typechecker/NamespaceNameResolution.java
index ec6187d..e72e310 100644
--- a/src/main/java/org/zwobble/hobgoblin/compiler/typechecker/NamespaceNameResolution.java
+++ b/src/main/java/org/zwobble/hobgoblin/compiler/typechecker/NamespaceNameResolution.java
@@ -19,12 +19,11 @@ public class NamespaceNameResolution {
return importedNamespaceName;
}
- if (importedAncestorDepth.get() > current.parts().size()) {
+ if (importedAncestorDepth.get() >= current.parts().size()) {
throw new RootNamespaceHasNoParentError(source);
}
- // TODO: should always skip right-most part? For instance, within src/line.hob, does ./point reference src/point.hob or src/line/point.hob?
- var parts = new ArrayList<>(current.parts().subList(0, current.parts().size() - importedAncestorDepth.get()));
+ var parts = new ArrayList<>(current.parts().subList(0, current.parts().size() - importedAncestorDepth.get() - 1));
parts.addAll(importedNamespaceName.parts());
return new NamespaceName(parts);
}