[erlang-patches] Local function names in Core Erlang guards

Anthony Ramine <>
Fri Jan 11 17:12:37 CET 2013


Hi,

I wrote a really small patch to forbid local fun variables in Core Erlang guards.
There is no test case as there is no test suite for core_lint.

I know the code freeze for R16 is soon but this is really a very small thing.

	git fetch https://github.com/nox/otp.git forbid-locals-in-core-guards

	https://github.com/nox/otp/compare/erlang:master...forbid-locals-in-core-guards
	https://github.com/nox/otp/compare/erlang:master...forbid-locals-in-core-guards.patch

Regards,

-- 
Anthony Ramine

Le 19 nov. 2012 à 11:02, Anthony Ramine a écrit :

> Hi,
> 
> While patching the compiler to allow substitutions of variables which values are
> local function names [1], I discovered that core_lint doesn't forbid them in guards,
> even though that makes the compiler passes further down the road generate badly-formed
> BEAM code.
> 
> Is that a bug in core_lint or a bug in the BEAM code generation? Should local function
> names be allowed in guards?
> 
> If it is a bug in core_lint, I can make a patch for that; if it is a bug in the BEAM
> code generation I would love to fix it and remove the code I wrote to avoid the
> substitution in guards... but I lack knowledge about the BEAM innards.
> 
> Regards,
> 
> [1] http://erlang.org/pipermail/erlang-patches/2012-November/003137.html
> 
> -- 
> Anthony Ramine
> 



More information about the erlang-patches mailing list