Age | Commit message (Collapse) | Author |
|
|
|
Atoms in some occurrences were not correctly quoted when formatted to
strings, for instance by the typer program. Example:
-module(tb).
-export(['UPPERCASE-FUNCTION-NAME'/0, f1/0, f2/0, f3/0]).
-record('UPPERCASE-RECORD-NAME', {x}).
-record(r2, {'UPPERCASE-FIELD-NAME'}).
-type 'UPPERCASE-TYPE-NAME'() :: integer().
'UPPERCASE-FUNCTION-NAME'() -> ok.
f1() -> #'UPPERCASE-RECORD-NAME'{x=1}.
f2() -> #r2{'UPPERCASE-FIELD-NAME'=1}.
-spec f3() -> 'UPPERCASE-TYPE-NAME'().
f3() -> 1.
Given the program above, the output from typer --plt some.plt tb.erl
resulted in the following specs being printed:
-spec UPPERCASE-FUNCTION-NAME() -> 'ok'.
-spec f1() -> #UPPERCASE-RECORD-NAME{x::1}.
-spec f2() -> #r2{UPPERCASE-FIELD-NAME::1}.
-spec f3() -> UPPERCASE-TYPE-NAME().
This commit changes the output to become the following:
-spec 'UPPERCASE-FUNCTION-NAME'() -> 'ok'.
-spec f1() -> #'UPPERCASE-RECORD-NAME'{x::1}.
-spec f2() -> #r2{'UPPERCASE-FIELD-NAME'::1}.
-spec f3() -> 'UPPERCASE-TYPE-NAME'().
|
|
* bjorn/compiler-options/OTP-9534:
sys_pre_expand: Don't duplicate options given in the source code
|
|
Any compiler options given with a -compile() attribute in source file
would be included both at the beginning and the end of the option list
for the compiler. Including the options twice is harmless during
compilation, but since the options will also be available in
Mod:module_info(compile), including them twice will waste memory.
Include the options from the source first in the list so that they
override options given on the command line.
|
|
* lukas/erts/ets_order_testcases/OTP-9459:
Add a high value to test data to catch type cast truncation errors
|
|
* ta/werror:
snmp: extend warnings_as_errors test
systools: add warnings_as_errors option
asn1ct: add warnings_as_errors option
leex: optimize werror/1
yecc: optimize werror/1
yecc: use more descriptive name: 'werror'
leex: use more descriptive name: 'werror'
compile: optimize werror/1
compile: log warnings as errors if -Werror is enabled
yecc: log warnings as errors if -Werror is enabled
leex: log warnings as errors if -Werror is enabled
yecc: honour -Werror passed from erlc
leex: honour -Werror passed from erlc
Do not write beam file if Werr and warnings /= []
parsetools: test if warnings_as_errors writes file
OTP-9536
|
|
* egil/fix-run_queue/OTP-9537:
Make sure we have a run_queue
|
|
* In rare cases we could have no run_queue in schedule misc ops
|
|
* bjorn/erts/fix-autoimports-testcase:
erts: Add a sanity check to autoimport_SUITE
erts: Fix failing autoimport test case
|
|
* fm/enif_compare-64-to-32bits-cast:
Fix enif_compare on 64bits machines
OTP-9533
|
|
* dc/fix_win32_static_crypto:
Fix win32 OpenSSL static linking broken in 20c9d6e
OTP-9532
|
|
* hw/detect-cpus-on-irix:
Detect the available CPUs on IRIX
OTP-9531
|
|
* ms/ei-int-overflow-in-string-atom-enc:
ei: integer overflow in string/atom encoding
OTP-9530
|
|
* sa/dialyzer-dev:
Add origin information to #fun_var closures
Suppress some warnings about generation of non-returning funs
Enhance Dialyzer's inference on comparisons
Fix infinite loop in dataflow
Minor fix in dead code
Update r9c/{inets,mnesia} results in dialyzer's test suite
OTP-9529
|
|
* fm/external_size_2:
Add erlang:external_size/2 BIF
OTP-9528
|
|
* ta/erl_compile-dead-code:
Remove dead code in erl_compile
OTP-9527
|
|
* hw/ignore-empty-epmd-address:
Let epmd ignore empty ERL_EPMD_ADDRESS
OTP-9525
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
If we fail to parse out any functions from erlang.xml, make sure
that we fail.
|
|
The autoimport_SUITE:autoimport/1 test case would interpret
data type definitions as function calls. Fix this by skipping
to the <funcs> tag before starting to collect function names.
|
|
* bjorn/erts/fix-erlc_SUITE-arg_overflow:
erlc_SUITE: Fix arg_overflow/1 test case
|
|
warnings_as_errors changes warnings to be treated as errors. Extend
leex_SUITE and yecc_SUITE to check that output file is not generated
if warnings_as_errors is enabled and warnings are emitted.
|
|
* va/httpd-typo-fix:
Typofix in httpd_file:handle_error message
OTP-9524
|
|
* ia/ssl/dialyzer-spec-correction:
Corrected faulty dialyzer spec
|
|
|
|
* siri/sasl/systools-ebin-dir/OTP-9507:
Fix bug in systools:make_tar when path given as just 'ebin'
|
|
If a path was given as ONLY 'ebin' and not for example './ebin', then
systools:make_tar would fail with a function_clause exception in
filename:join/1. The bug was in systools_make:appDir/1, which tried to
find the parent directory of the given path. This function now uses
library functions filename:basename and filename:dirname instead of
general list manipulations.
|
|
* siri/sasl/check_process_code/OTP-9395:
Add option purge to release_handler:check_install_release
Improve performance of upgrade when many processes have old code
|
|
* ia/ssl/inet-spec-corrections:
Corrected spec name errors: ip_adress -> ip_address port_num -> port_number
|
|
|
|
In commit be8759e68b337524c056b8bb757ea68c9996d863, a buffer overflow
was fixed in erlc and the erlc_SUITE:arg_overflow/1 test case was
added. That test cases invokes erlc with 10000 -D options, which will
result in 'erl' being invoked with more than 30000 arguments.
On some platforms, the test case will fail for the wrong reason:
* 64-bit Linux kernels before 2.6.23 limit the number of arguments in
an excvp() call to 16383. (See "Number of arguments and maximum length
of one argument" in http://www.in-ulm.de/~mascheck/various/argmax/.)
* The command shell in Windows limits the size of the command line to
8191 characters.
Depending on the platform, pass a different number of -D options
to erlc. Since the size of the options does not matter for this
test case, make the options as short as possible by generating
numbers in base 36.
|
|
* hb/kernel/zlib_contracts/OTP-9506:
Update documentation and specifications of some of the zlib functions
|
|
Given this option, all modules that are to be purged by indicated
upgrade,and that can be soft purged, will be purged when all other
check of check_install_release have been successfully completed.
I added a note under install_release in the reference manual about how
to use check_install_release with this new option in order to speed up
the execution of install_release.
I also added three more test cases for this functionality.
|
|
The functions zlib:deflateSetDictionary/2 and zlib:inflateSetDictionary/2
accept iodata() as Dictionary.
The functions zlib:crc32/2,3, zlib:adler32/2,3, zlib:compress/1,
zlib:uncompress/1, zlib:zip/1, and zlib:unzip/1 accept iodata() as
data.
|
|
* bjorn/deprecate-docbuilder/OTP-9509:
Deprecate the docbuilder application
|
|
* bjorn/erts/old-code-checking-improvements/OTP-9495:
Make the check_old_code/1 BIF auto-imported
|
|
* ia/odbc/stored-procedures-does-not-cleanup/OTP-9444:
When using output parameters the internal odbc state was not correctly cleaned causing the next call to param_query to missbehave.
|