void EmitAssignment(InternalLocal tag, IType typeOnStack)
{
// todo: assignment result must be type on the left in the
// case of casting
LocalBuilder local = tag.LocalBuilder;
EmitCastIfNeeded(tag.Type, typeOnStack);
_il.Emit(OpCodes.Stloc, local);
}