aboutsummaryrefslogtreecommitdiffstats
path: root/lib/syntax_tools/src/erl_prettypr.erl
diff options
context:
space:
mode:
authorHans Bolinder <[email protected]>2019-01-15 11:24:57 +0100
committerHans Bolinder <[email protected]>2019-01-15 11:24:57 +0100
commit80b0574260924c4ef888fe319274f9303982d45b (patch)
treeeef88aa2429160b3d583b755e482d77b0935e46d /lib/syntax_tools/src/erl_prettypr.erl
parentc27e37d5c37b1edb81f9521b96bdd996ca25653b (diff)
downloadotp-80b0574260924c4ef888fe319274f9303982d45b.tar.gz
otp-80b0574260924c4ef888fe319274f9303982d45b.tar.bz2
otp-80b0574260924c4ef888fe319274f9303982d45b.zip
syntax_tools: Fix pretty-printing of type funs
See also ERL-815.
Diffstat (limited to 'lib/syntax_tools/src/erl_prettypr.erl')
-rw-r--r--lib/syntax_tools/src/erl_prettypr.erl5
1 files changed, 3 insertions, 2 deletions
diff --git a/lib/syntax_tools/src/erl_prettypr.erl b/lib/syntax_tools/src/erl_prettypr.erl
index 6906ef1553..6ad9bec2e6 100644
--- a/lib/syntax_tools/src/erl_prettypr.erl
+++ b/lib/syntax_tools/src/erl_prettypr.erl
@@ -1101,8 +1101,9 @@ lay_2(Node, Ctxt) ->
Ctxt1 = reset_prec(Ctxt),
D1 = lay(erl_syntax:constrained_function_type_body(Node),
Ctxt1),
+ Ctxt2 = Ctxt1#ctxt{clause = undefined},
D2 = lay(erl_syntax:constrained_function_type_argument(Node),
- Ctxt1),
+ Ctxt2),
beside(D1,
beside(floating(text(" when ")), D2));
@@ -1113,7 +1114,7 @@ lay_2(Node, Ctxt) ->
_ ->
{"fun(", ")"}
end,
- Ctxt1 = reset_prec(Ctxt),
+ Ctxt1 = (reset_prec(Ctxt))#ctxt{clause = undefined},
D1 = case erl_syntax:function_type_arguments(Node) of
any_arity ->
text("(...)");