Age | Commit message (Collapse) | Author | |
---|---|---|---|
2014-10-27 | Fix miscompilation when module contains multiple named funs | Anthony Ramine | |
A module containing two named funs bearing the same name and arity could be miscompiled. Reported-by: Sam Chapin | |||
2014-03-01 | Do not emit blatantly illformed Core Erlang apply expressions | Anthony Ramine | |
(fun f/1)() should be compiled to let X = 'f'/1 in apply X () to let the compiler properly generate code that will fail with badarity at runtime. Reported-by: Ulf Norell | |||
2013-12-12 | Test named funs | Anthony Ramine | |
2011-11-07 | EEP-23: Allow variables in fun M:F/A | Björn Gustavsson | |
Currently, the external fun syntax "fun M:F/A" only supports literals. That is, "fun lists:reverse/1" is allowed but not "fun M:F/A". In many real-life situations, some or all of M, F, A are not known until run-time, and one is forced to either use the undocumented erlang:make_fun/3 BIF or to use a "tuple fun" (which is deprecated). EEP-23 suggests that the parser (erl_parse) should immediately transform "fun M:F/A" to "erlang:make_fun(M, F, A)". We have not followed that approach in this implementation, because we want the abstract code to mirror the source code as closely as possible, and we also consider erlang:make_fun/3 to be an implementation detail that we might want to remove in the future. Instead, we will change the abstract format for "fun M:F/A" (in a way that is not backwards compatible), and while we are at it, we will move the translation from "fun M:F/A" to "erlang:make_fun(M, F, A)" from sys_pre_expand down to the v3_core pass. We will also update the debugger and xref to use the new format. We did consider making the abstract format backward compatible if no variables were used in the fun, but decided against it. Keeping it backward compatible would mean that there would be different abstract formats for the no-variable and variable case, and tools would have to handle both formats, probably forever. Reference: http://www.erlang.org/eeps/eep-0023.html | |||
2011-04-12 | compiler tests: Reinstate ?MODULE macro in calls to test_lib:recompile/1 | Björn Gustavsson | |
In 3d0f4a3085f11389e5b22d10f96f0cbf08c9337f (an update to conform with common_test), in all test_lib:recompile(?MODULE) calls, ?MODULE was changed to the actual name of the module. That would cause test_lib:recompile/1 to compile the module with the incorrect compiler options in cloned modules such as record_no_opt_SUITE, causing worse coverage. | |||
2011-03-11 | Update copyright years | Björn-Egil Dahlberg | |
2011-02-17 | Rename Suite Callback to Common Test Hook | Lukas Larsson | |
2011-02-17 | Fix formatting for compiler | Lukas Larsson | |
2011-02-17 | Add init_per_suite and end_per_suite | Lukas Larsson | |
2011-02-17 | Add ts_install_scb to suite/0 | Lukas Larsson | |
2011-02-17 | Update compiler tests to conform with common_test standard | Lukas Larsson | |
2011-02-17 | Update all fin_per_testcase to end_per_testcase. | Lukas Larsson | |
2009-11-20 | The R13B03 release.OTP_R13B03 | Erlang/OTP | |