File 0519-syntax_tools-Output-parentheses-around-BitStringExpr.patch of Package erlang

From 3151d1b5f04a6aa0f9171762647efd2656358882 Mon Sep 17 00:00:00 2001
From: Hans Bolinder <hasse@erlang.org>
Date: Tue, 13 Apr 2021 07:16:16 +0200
Subject: [PATCH] syntax_tools: Output parentheses around BitStringExpr in bc

---
 lib/syntax_tools/src/erl_prettypr.erl        | 2 +-
 lib/syntax_tools/test/syntax_tools_SUITE.erl | 2 ++
 2 files changed, 3 insertions(+), 1 deletion(-)

diff --git a/lib/syntax_tools/src/erl_prettypr.erl b/lib/syntax_tools/src/erl_prettypr.erl
index 700d3e26a7..af1f2b4d11 100644
--- a/lib/syntax_tools/src/erl_prettypr.erl
+++ b/lib/syntax_tools/src/erl_prettypr.erl
@@ -844,7 +844,7 @@ lay_2(Node, Ctxt) ->
 				   beside(D2, floating(text("]"))))]));
 
 	binary_comp ->
-	    Ctxt1 = reset_prec(Ctxt),
+	    Ctxt1 = set_prec(Ctxt, max_prec()),
 	    D1 = lay(erl_syntax:binary_comp_template(Node), Ctxt1),
 	    D2 = par(seq(erl_syntax:binary_comp_body(Node),
 			 floating(text(",")), Ctxt1,
diff --git a/lib/syntax_tools/test/syntax_tools_SUITE.erl b/lib/syntax_tools/test/syntax_tools_SUITE.erl
index 060fc76d2f..630772fbae 100644
--- a/lib/syntax_tools/test/syntax_tools_SUITE.erl
+++ b/lib/syntax_tools/test/syntax_tools_SUITE.erl
@@ -310,7 +310,9 @@ t_erl_parse_type(Config) when is_list(Config) ->
 		     {"#{ a:=1, b:=2 }", map_expr,false},
 		     {"M#{ a=>1, b=>2 }", map_expr,false},
 		     {"[V||V <- Vs]", list_comp,false},
+		     {"[catch V||V <- Vs]", list_comp,false},
 		     {"<< <<B>> || <<B>> <= Bs>>", binary_comp,false},
+		     {"<< (catch <<B>>) || <<B>> <= Bs>>", binary_comp,false},
 		     {"#state{ a = A, b = B}", record_expr,false},
 		     {"#state{}", record_expr,false},
 		     {"#s{ a = #def{ a=A }, b = B}", record_expr,false},
-- 
2.26.2

openSUSE Build Service is sponsored by