Age | Commit message (Collapse) | Author |
|
Add the enif_is_exception function to allow callers to determine
whether an ERL_NIF_TERM represents an exception. (Currently the only
supported exception is badarg since only enif_make_badarg exists, but
this will likely be expanded in future releases.) This allows NIF code
to call other NIF functions that return ERL_NIF_TERM and properly
check to see if the returned terms are exceptions. Without the
enif_is_exception function, developers have to create their own means
of checking whether a function creates an exception, such as returning
boolean success/failure indicators or some other special value
indicating that an exception is in effect.
The declaration of enif_is_exception in erl_nif_api_funcs.h respects
the order of declarations required to keep compatibility on Windows.
Add a new test to verify the operation of enif_is_exception.
Modify the erl_nif man page to add a description of enif_is_exception
and also to clarify the requirements of calling the enif_make_badarg
function. If code calls enif_make_badarg, the env passed in gets set
with exception information and so the return value of the calling
function MUST be the badarg term returned from enif_make_badarg. Also
clarify that the result of enif_make_badarg may be passed only to
enif_is_exception and not to any other NIF API functions.
|
|
* siri/reltool/skip-xref-test-when-debug/OTP-9133:
Skip reltool_app_SUITE:undef_funcs on debug compiled emulator
|
|
* siri/reltool/app_file-option/OTP-9135:
Allow app_file option to be keep | strip | all, as documented
|
|
* ia/public_key/encode-decode-ssh/OTP-9144:
Implemented encode/decode support for ssh public key files
|
|
|
|
* hb/record_field_undefined_type/OTP-9147:
Fix a bug concerning record field types
|
|
The default value 'undefined' was added to records field types in such
a way that the result was not always a well-formed type. This bug has
been fixed.
---
erl_pp has since OTP-8150 formatted types so that 'undefined' was
removed from union types assigned to record fields. Since one cannot
distinguish between 'undefined' added by the parser or supplied by the
user, a side effect was that user supplied 'undefined's were also
removed.
Now the pretty printer shows 'undefined' even if added by the parser.
This is a minor issue.
|
|
This is the correction of the bug not allowing the values 'strip' or
'all' for the app_file option in reltool.
|
|
|
|
|
|
|
|
* nick/CORBA/avoid_warnings/OTP-9050:
Corrected type of action in release notes.
Corrected version in release notes file.
Conflicts:
lib/cosProperty/doc/src/notes.xml
|
|
|
|
|
|
|
|
|
|
|
|
* pan/doc_link_corrections/OTP-9112:
Remove link_check warnings re httpc.xml,sys.xml and unicode.xml
Change io.xml so that html anchors gets generated for all arities
|
|
* sa/dialyzer-missing-spec:
Add spec to dialyzer_cl_parse:get_lib_dir/1
OTP-9129
|
|
* pg/hipe-remove-constants-pool:
Remove hipe constants pool
OTP-9128
|
|
* ks/kernel-dialyzer-cleanups:
Add spec for function that does not return
Strenghen spec
Introduce types to avoid duplication in specs
Add specs for functions that do not return
Add specs for behaviour callbacks
Simplify two specs
OTP-9127
|
|
|
|
|
|
|
|
|
|
|
|
|
|
* ks/dialyzer-r14b02-final-touches:
Release notes and new version for R14B02
More descriptive warning when a tuple pattern matches a typed record
Better blame assignment when a spec is erroneous
Generate better warnings for failing guards
Fix an erroneous warning
Refactoring so that a flat string() is returned
Renamed error/1 function and added specs
Renamed error/1 function and added specs
OTP-9126
|
|
|
|
|
|
Applies to the specification of the return value of a function.
|
|
|
|
|
|
|
|
|
|
|
|
* bjorn/binary-overflow/OTP-9117:
Fix 18 exabyte memory allocation failure
|
|
* bjorn/doc-fixes:
Reference Manual: Replace "it's" with "its"
Reference manual: Add missing right parenthesis
Reference manual: Don't mention fault/{1,2}
|
|
* ay/precisionfix/OTP-8989:
Fix ~F.Fs bug, add testcase and improve documentation
io_lib_format string precision fix
|
|
* pg/fix-hibernate-with-hipe:
Update copyright years
Fix NULL-free bug in hibernate on debug emulator
Fix several bugs related to hibernate/3 and HiPE
Conflicts:
erts/emulator/test/hibernate_SUITE.erl
OTP-9125
|
|
|
|
|
|
|
|
* sverker/valgrind-new-suppressions:
Make halfword emulator with valgrind target allocate low memory
Add erts_alloc_permanent_cache_aligned to supress valgrind
|
|
* rickard/scheduler-wait/OTP-9105:
The emulator could get into a state where it didn't check for I/O.
|
|
* hb/edoc/specs_and_types/OTP-8525:
Make Erlang specifications and types available in EDoc
|
|
It is now possible to use Erlang specifications and types in EDoc
documentation. Erlang specifications and types will be used unless
there is also a function specification (@spec) or a type alias (@type)
with the same name. In the current implementation the placement of
-spec matters: it should be placed where the @spec would otherwise
have been placed.
Not all Erlang types are included in the documentation, but only those
exported by some export_type declaration or used by some documented
Erlang specification (-spec).
There is currently no support for overloaded Erlang specifications.
The syntax definitions of EDoc have been augmented to cope with most
of the Erlang types. (But we recommend that Erlang types should be
used instead.)
edoc:read_source() takes one new option, report_missing_types.
edoc_layout:module() takes one new option, pretty_printer.
|
|
* lukas/common_test/suite_callback/OTP-8851:
Update init_per_suite to not crash when there is no suite/0
Update links info in ct_hooks to point to the right place
Update ct_hooks to fail gracefully when a hook is entered incorrectly in suite/0
|
|
|
|
|