//TODO: Add back pre-emit type conversion public override void Emit(IlBuilder builder) { base.Emit(builder); if (!Owner.IsStatic && FieldOrPropertySymbol.IsFieldOrProperty(_target)) { var forp = FieldOrPropertySymbol.ToFieldOrPropertySymbol(_target); if (!forp.HasOwner()) { forp.SetOwner(Owner.ThisPointer); _target = forp; } } _target.Store(builder, _source); //builder.EmitOpCode(_target.Location.GetStoreOpcode(), "For ID " + _target.ID); }