My application registers the following script function:
RegisterGlobalFunction("void yield()", asFUNCTION(yield), asCALL_CDECL)
When someone accidentally wrote the following script:
// meant to type this:
// yield();
// typed this:
yield;
they got the following assert:
assertion=instr->stackSize == stackSize
file=as_bytecode.cpp 241
function=void asCByteCode::AddPath(asCArray<asCByteInstruction*>&, asCByteInstruction*, int)
asCByteCode::Finalize(asCArray<int> const&)
asCCompiler::FinalizeFunction()
asCCompiler::CompileFunction(asCBuilder*, asCScriptCode*, asCArray<asCString>&, asCScriptNode*, asCScriptFunction*, sClassDeclaration*)
asCBuilder::Build()
asCModule::Build()
I'm going to try to reproduce this in a standalone program, outside of my application.
AngelScript Version 2.29.0 WIP - 2014/04/27, rev 1912. 32bit linux
Thank you!