- Add nyash.console.log_handle(i64) -> i64 family functions to nyrt - Replace invalid int-to-pointer conversion with proper handle-based calls - Fix bool(i1) -> i64 type conversion in LLVM compiler - Resolve LLVM function verification errors - Enable plugin method execution without NYASH_LLVM_ALLOW_BY_NAME - Merge codex TLV fixes for plugin return value handling (2000+ lines) Technical Details: - Root cause: build_int_to_ptr(handle_value, i8*, "arg_i2p") treated handle IDs as memory addresses (invalid operation) - Solution: Direct i64 handle passing to nyrt functions with proper handle registry lookup and to_string_box() conversion - Type safety: Added proper i1/i32/i64 -> i64 conversion handling Status: Console.log type errors resolved, plugin return value display still under investigation 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
15 lines
313 B
Plaintext
15 lines
313 B
Plaintext
// Test if CounterBox side effects work
|
|
print("Testing counter side effects:")
|
|
local c = new CounterBox()
|
|
print("Initial counter (should be 0):")
|
|
local initial = c.get()
|
|
print(initial)
|
|
|
|
print("Incrementing...")
|
|
c.inc()
|
|
c.inc()
|
|
c.inc()
|
|
|
|
print("After 3 increments (should be 3):")
|
|
local final = c.get()
|
|
print(final) |