[erlang-patches] Patch to allow parameterized modules in parse transforms

Matthew Dempsky matthew@REDACTED
Mon Nov 19 23:29:54 CET 2007


The Erlang compiler does not currently allow parameterized modules to
be used for parse transforms, but only because of a bad atom_to_list
call.  I replaced this with io_lib:format and it seems to work.

--- compile.erl~	2007-10-31 07:05:39.000000000 -0700
+++ compile.erl	2007-11-19 14:12:43.000000000 -0800
@@ -765,7 +765,7 @@
     end.

 foldl_transform(St, [T|Ts]) ->
-    Name = "transform " ++ atom_to_list(T),
+    Name = lists:flatten(io_lib:format("transform ~p", [T])),
     Fun = fun(S) -> T:parse_transform(S#compile.code, S#compile.options) end,
     Run = case member(time, St#compile.options) of
 	      true  -> fun run_tc/2;



More information about the erlang-patches mailing list