Allow Object members on unknown types

This commit is contained in:
sergeych committed 2026-02-04 03:40:07 +03:00
1 parent 47654aee38
commit 1fab2702dd
7 files changed
+34 -35

No files matched your search

+2 -2
View File
@@ -7,8 +7,8 @@
- If wasmJs browser tests hang, first run `:lynglib:wasmJsNodeTest` and look for wasm compilation errors; hangs usually mean module instantiation failed.
- Do not increase test timeouts to mask wasm generation errors; fix the invalid IR instead.
## Type inference notes (notes/type_system_spec.md)
## Type inference notes (notes/new_lyng_type_system_spec.md)
- Nullability is Kotlin-style: `T` non-null, `T?` nullable, `!!` asserts non-null.
- `void` is a singleton of class `Void` (syntax sugar for return type).
- Object member access requires explicit cast; remove `inspect` from Object and use `toInspectString()` instead.
- Object members are always allowed even on unknown types; non-Object members require explicit casts. Remove `inspect` from Object and use `toInspectString()` instead.
- Do not reintroduce bytecode fallback opcodes (e.g., `GET_NAME`, `EVAL_*`, `CALL_FALLBACK`) or runtime name-resolution fallbacks; all symbol resolution must stay compile-time only.