|
@@ -2496,7 +2496,11 @@ struct
|
|
|
{ eexpr = TField(_, FStatic({ cl_path = ([], "Reflect") }, { cf_name = "field" })) } ,
|
|
|
[obj; { eexpr = TConst(TString(field)) }]
|
|
|
) ->
|
|
|
- change_expr (mk_field_access gen obj field obj.epos) (run obj) field None false
|
|
|
+ let t = match gen.greal_type obj.etype with
|
|
|
+ | TDynamic _ | TAnon _ | TMono _ -> t_dynamic
|
|
|
+ | t -> t
|
|
|
+ in
|
|
|
+ change_expr (mk_field_access gen { obj with etype = t } field obj.epos) (run obj) field None false
|
|
|
| TCall(
|
|
|
{ eexpr = TField(_, FStatic({ cl_path = ([], "Reflect") }, { cf_name = "setField" } )) },
|
|
|
[obj; { eexpr = TConst(TString(field)) }; evalue]
|