Nicolas Cannasse 17 سال پیش
والد
کامیت
d09d56290c
1فایلهای تغییر یافته به همراه7 افزوده شده و 3 حذف شده
  1. 7 3
      genswf.ml

+ 7 - 3
genswf.ml

@@ -110,9 +110,13 @@ let movieclip_exists types path =
 	let name = Ast.s_type_path path in
 	List.exists (function
 		| TClassDecl c when c.cl_path = path ->
-			(match c.cl_super with
-			| Some ({ cl_path = "flash" :: _ ,_ },[]) -> ()
-			| _ -> failwith ("The class " ^ name ^ " must either extends a flash.* class"));
+			let rec check_super c =
+				match c.cl_super with
+				| Some ({ cl_path = "flash" :: _ ,_ },_) -> ()
+				| Some (c,_) -> check_super c
+				| _ -> failwith ("The class " ^ name ^ " must extends a flash.* class")
+			in
+			check_super c;
 			not c.cl_extern
 		| TEnumDecl e when e.e_path = path -> failwith ("The clip " ^ name ^ " must be bound to a class")
 		| TTypeDecl t when t.t_path = path -> failwith ("The clip " ^ name ^ " must be bound to a class")