You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
CPPIA interpreter: Array<Dynamic>.reverse and resize silently do nothing #409
The interpreter accepts reverse() and resize() on an Array<Dynamic> but leaves the array unchanged. For resize it also skips evaluating the size argument.
Additional checks reproduce the same failure for growing the array and resizing it to zero. A typed Int array reverses and shrinks correctly under both engines.
ArrayBuiltinAny::runVoid and runObject have no dispatch for afReverse or afResize, although createArrayAnyBuiltin accepts both methods. The fallback evaluates the receiver and returns without performing the operation.
Reproduced on Windows x64, Haxe 4.3.7, MSVC 19.44, libhxcpp 4cdca96, release host with -D scriptable --dce no -D HXCPP_M64. The host selects the engine with cpp.cppia.Host.enableJit(false/true) before Host.runFile. Native C++ controls use the same runtime checkout. Current main at 5f7cfef has the same ArrayVirtual.cpp.
Local regression fixture: test/regression/CppiaDynamicArrayMutators/{Script.hx,Main.hx,build.hxml,stdout.txt}. It checks typed controls, reverse, shrink, growth, zero size and argument side effects under both engines. The fixture is uncommitted; no runtime fix is included.
Activity
Fix four dynamic and typed array builtins in cppia
Fix four dynamic and typed array builtins in cppia