浏览代码

[cs] revert

Cauê Waneck 11 年之前
父节点
当前提交
b9c7a57f33
共有 1 个文件被更改,包括 5 次插入2 次删除
  1. 5 2
      gencs.ml

+ 5 - 2
gencs.ml

@@ -2417,8 +2417,11 @@ let configure gen =
     { e with eexpr = TCall( { eexpr = TLocal( alloc_var "__typeof__" t_dynamic ); etype = t_dynamic; epos = e.epos }, [e] ) }
     { e with eexpr = TCall( { eexpr = TLocal( alloc_var "__typeof__" t_dynamic ); etype = t_dynamic; epos = e.epos }, [e] ) }
   in
   in
 
 
-  ClassInstance.configure gen (ClassInstance.traverse gen (fun e mt ->
-    get_typeof e
+  ClassInstance.configure gen (ClassInstance.traverse gen (fun e mt -> match mt with
+    | TAbstractDecl( { a_impl = Some impl } as a) when Meta.has Meta.Delegate a.a_meta ->
+      get_typeof { e with eexpr = TTypeExpr( TClassDecl impl ) }
+    | _ ->
+      get_typeof e
   ));
   ));
 
 
   CastDetect.configure gen (CastDetect.default_implementation gen (Some (TEnum(empty_e, []))) true ~native_string_cast:false ~overloads_cast_to_base:true);
   CastDetect.configure gen (CastDetect.default_implementation gen (Some (TEnum(empty_e, []))) true ~native_string_cast:false ~overloads_cast_to_base:true);