mirror of
https://github.com/apple/pkl.git
synced 2026-01-11 06:10:40 +01:00
Fixes #1309 The issue was that super calls were blocked inside let expressions because: 1. The compiler's isClassMemberScope() check didn't skip over lambda scopes created by let expressions 2. The runtime's findSupermethod() didn't traverse past VmFunction owners to find the actual class prototype Changes: - SymbolTable.java: Updated isClassMemberScope() to skip lambda scopes before checking if the parent is a class or module scope - InvokeSuperMethodNode.java: Updated findSupermethod() to skip VmFunction owners when looking for the class prototype Added regression tests covering: - Super method calls inside let expressions - Super property access inside let expressions - Nested let expressions with super calls --------- Co-authored-by: Jen Basch <jbasch@apple.com>
Core implementation of the Pkl language. Includes Java APIs for embedding the language into JVM applications, and for building libraries and tools on top of the language.