@@ -175,7 +175,7 @@ let make_module ctx mpath file tdecls loadp =
(match !decls with
| (TClassDecl c,_) :: _ ->
List.iter (fun m -> match m with
- | (Meta.Build,_,_) | (Meta.CoreApi,_,_) ->
+ | ((Meta.Build | Meta.CoreApi | Meta.Allow | Meta.Access),_,_) ->
c.cl_meta <- m :: c.cl_meta;
| (Meta.FakeEnum,_,_) ->
c.cl_meta <- (Meta.Build,[ECall((EField((EField((EField((EConst(Ident "haxe"),p),"macro"),p),"Build"),p),"buildFakeEnum"),p),[]),p],p) :: c.cl_meta;
@@ -205,8 +205,9 @@ let rec can_access ctx c cf stat =
true
else
(* has metadata path *)
- let make_path c f =
- fst c.cl_path @ [snd c.cl_path; f.cf_name]
+ let make_path c f = match c.cl_kind with
+ | KAbstractImpl a -> fst a.a_path @ [snd a.a_path; f.cf_name]
+ | _ -> fst c.cl_path @ [snd c.cl_path; f.cf_name]
in
let rec expr_path acc e =
match fst e with