Переглянути джерело

[typer] fix `@:structInit` constructor typing

closes #8103
Simon Krajewski 6 роки тому
батько
коміт
8d068736c9
1 змінених файлів з 2 додано та 2 видалено
  1. 2 2
      src/typing/typeloadFields.ml

+ 2 - 2
src/typing/typeloadFields.ml

@@ -164,10 +164,10 @@ let ensure_struct_init_constructor ctx c ast_fields p =
 				let opt = has_default_expr || (Meta.has Meta.Optional cf.cf_meta) in
 				let t = if opt then ctx.t.tnull cf.cf_type else cf.cf_type in
 				let v = alloc_var VGenerated cf.cf_name t p in
-				let ef = mk (TField(ethis,FInstance(c,params,cf))) t p in
+				let ef = mk (TField(ethis,FInstance(c,params,cf))) cf.cf_type p in
 				let ev = mk (TLocal v) v.v_type p in
 				(* this.field = <constructor_argument> *)
-				let assign_expr = mk (TBinop(OpAssign,ef,ev)) ev.etype p in
+				let assign_expr = mk (TBinop(OpAssign,ef,ev)) cf.cf_type p in
 				let e =
 					if has_default_expr then
 						begin