aboutsummaryrefslogtreecommitdiffstats
path: root/lib/syntax_tools/src/erl_syntax.erl
diff options
context:
space:
mode:
authorMicael Karlberg <[email protected]>2011-11-07 16:13:30 +0100
committerMicael Karlberg <[email protected]>2011-11-07 16:13:30 +0100
commit8149b970814848dc404767d5635529c61cf20b24 (patch)
treeb829c0cf811b6f230653b75433d01657017c62c7 /lib/syntax_tools/src/erl_syntax.erl
parent55ae4936f1afabc4475139d7d46d655b61e06b3b (diff)
parent2c18949bf1edfda523ae15229e94a8400bb1870c (diff)
downloadotp-8149b970814848dc404767d5635529c61cf20b24.tar.gz
otp-8149b970814848dc404767d5635529c61cf20b24.tar.bz2
otp-8149b970814848dc404767d5635529c61cf20b24.zip
Merge branch 'master' of super:otp into bmk/megaco/r15_integration
Diffstat (limited to 'lib/syntax_tools/src/erl_syntax.erl')
-rw-r--r--lib/syntax_tools/src/erl_syntax.erl7
1 files changed, 6 insertions, 1 deletions
diff --git a/lib/syntax_tools/src/erl_syntax.erl b/lib/syntax_tools/src/erl_syntax.erl
index 9df5f26454..7f58fda519 100644
--- a/lib/syntax_tools/src/erl_syntax.erl
+++ b/lib/syntax_tools/src/erl_syntax.erl
@@ -6093,11 +6093,16 @@ implicit_fun_name(Node) ->
{'fun', Pos, {function, Atom, Arity}} ->
arity_qualifier(set_pos(atom(Atom), Pos),
set_pos(integer(Arity), Pos));
- {'fun', Pos, {function, Module, Atom, Arity}} ->
+ {'fun', Pos, {function, Module, Atom, Arity}}
+ when is_atom(Module), is_atom(Atom), is_integer(Arity) ->
+ %% Backward compatibility with pre-R15 abstract format.
module_qualifier(set_pos(atom(Module), Pos),
arity_qualifier(
set_pos(atom(Atom), Pos),
set_pos(integer(Arity), Pos)));
+ {'fun', Pos, {function, Module, Atom, Arity}} ->
+ %% New in R15: fun M:F/A.
+ module_qualifier(Module, arity_qualifier(Atom, Arity));
Node1 ->
data(Node1)
end.