Explorar o código

propagate keep meta to generic instances

Nicolas Cannasse %!s(int64=9) %!d(string=hai) anos
pai
achega
887d078b2d
Modificáronse 1 ficheiros con 1 adicións e 0 borrados
  1. 1 0
      codegen.ml

+ 1 - 0
codegen.ml

@@ -492,6 +492,7 @@ let rec build_generic ctx c p tl =
 		Typeload.add_constructor ctx cg false p;
 		cg.cl_kind <- KGenericInstance (c,tl);
 		cg.cl_meta <- (Meta.NoDoc,[],p) :: cg.cl_meta;
+		if has_meta Meta.Keep c.cl_meta then cg.cl_meta <- (Meta.Keep,[],p) :: cg.cl_meta;
 		cg.cl_interface <- c.cl_interface;
 		cg.cl_constructor <- (match cg.cl_constructor, c.cl_constructor, c.cl_super with
 			| _, Some cf, _ -> Some (build_field cf)