Browse Source

fix travis

Dan Korostelev 9 years ago
parent
commit
d08c194185
1 changed files with 9 additions and 0 deletions
  1. 9 0
      src/optimization/dce.ml

+ 9 - 0
src/optimization/dce.ml

@@ -517,6 +517,15 @@ and expr dce e =
 		expr dce e;
 		expr dce e;
 	| TThrow e ->
 	| TThrow e ->
 		check_and_add_feature dce "has_throw";
 		check_and_add_feature dce "has_throw";
+		(*
+			TODO: Simon, save me! \o
+			This is a hack needed to keep toString field of the actual exception objects
+			that are thrown, but are wrapped into HaxeError before DCE comes into play.
+		*)
+		let e = (match e.eexpr with
+			| TNew({cl_path=(["js";"_Boot"],"HaxeError")}, _, [eoriginal]) -> eoriginal
+			| _ -> e
+		) in
 		to_string dce e.etype;
 		to_string dce e.etype;
 		expr dce e
 		expr dce e
 	| _ ->
 	| _ ->