Beispiel #1
0
void DeclareStmt::EmitActual(Bytecode &b)
{
	if (fVar & kVirtualVarBase && fScope)
	{
		int physical = b.GetVarAllocator().Allocate(false, true, fCount);
		if (physical == kIllegalVar)
		{
			Error(kErr_NoMoreVars).Raise(&fLoc);
		}

		fScope->RemapVar(fVar, physical, fCount);

		// add symbolic information
		if (fName)
			b.AddVariableName(physical, fName->GetKey());
	}

	Stmt *body = GetBody();
	if (body) body->Emit(b);
}
Beispiel #2
0
void CallStmt::EmitActual(Bytecode &b)
{
	Stmt *body = GetBody();
	if (body)
		body->Emit(b);
}