Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
home:Ledest:erlang:20
erlang
0214-core_lint-Allow-calls-to-erlang-error-1-in...
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File 0214-core_lint-Allow-calls-to-erlang-error-1-in-guards.patch of Package erlang
From 866fe1e31ab88d28cfc71fcad65a24893c0d763a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bj=C3=B6rn=20Gustavsson?= <bjorn@erlang.org> Date: Fri, 21 Feb 2020 16:13:26 +0100 Subject: [PATCH 02/30] core_lint: Allow calls to erlang:error/1 in guards --- lib/compiler/src/core_lint.erl | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/lib/compiler/src/core_lint.erl b/lib/compiler/src/core_lint.erl index 579fa59487..f3fe901949 100644 --- a/lib/compiler/src/core_lint.erl +++ b/lib/compiler/src/core_lint.erl @@ -277,11 +277,17 @@ gexpr(#c_call{module=#c_literal{val=erlang},name=#c_literal{val=is_record}}, gexpr(#c_call{module=#c_literal{val=erlang},name=#c_literal{val=Name},args=As}, Def, Rt, St0) when is_atom(Name) -> St1 = return_match(Rt, 1, St0), - case is_guard_bif(Name, length(As)) of + Arity = length(As), + case is_guard_bif(Name, Arity) of true -> gexpr_list(As, Def, St1); false -> - add_error({illegal_guard,St1#lint.func}, St1) + case {Name,Arity} of + {error,1} -> + gexpr_list(As, Def, St1); + _ -> + add_error({illegal_guard,St1#lint.func}, St1) + end end; gexpr(#c_primop{name=#c_literal{val=A},args=As}, Def, _Rt, St0) when is_atom(A) -> gexpr_list(As, Def, St0); -- 2.16.4
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor