aboutsummaryrefslogtreecommitdiffstats
path: root/lib/dialyzer/test/small_SUITE_data
AgeCommit message (Collapse)Author
2013-12-12Test named funsAnthony Ramine
2013-10-14Merge branch 'maint'Fredrik Gustafsson
2013-10-09Fix crash when using remote types in the tail of list typesKostis Sagonas
Hans Bolider reported a dialyzer crash when using a remote type in the tail position of a maybe_improper_list() declaration. A test was created (by extending an existing module of the testsuite) and erl_types was modified to expand the remote type and not pass it unexpanded to subsequent phases in the processing.
2013-10-09Adopt a convention about unknown modulesKostis Sagonas
2013-10-09No reason for calls to unknown modulesKostis Sagonas
2013-10-09Use the modern version of is_subtypeKostis Sagonas
2013-10-09Adopt a convention about unknown modulesKostis Sagonas
2013-10-09Fix a commentKostis Sagonas
2013-10-09Add some more comments about what the test doesKostis Sagonas
This changed the lines so the results now differ.
2013-06-05Forbid unsized fields in patterns of binary generatorsAnthony Ramine
It makes no sense to be able to do `<<...,Rest/binary>> <= ...` in a comprehension. The related Dialyzer test is removed.
2013-05-20dialyzer: Remove use of deprecated crypto functionsIngela Anderton Andin
2013-04-08Fix an error in the type inference of bitstring dataStavros Aronis
Dialyzer was constraining bitstring data used in the construction of other bitstring values too much. These constraints have now been relaxed.
2013-03-06Include module, function and arity in Dialyzer's "overlapping domain" warningsMagnus Henoch
The function name can give information that the line number doesn't, for example when using a parse transform that creates new functions.
2013-02-21Introduce new type file:name_all()Hans Bolinder
2013-02-15Support for types with the same name and different arityStavros Aronis
2013-02-13Make the file:filename() type more restrictiveBjörn Gustavsson
The recommended type for filenames is a list of characters (which may be Unicode characters greater than 255). Change the file:filename() to reflect that. For the filename module we still need a type that can be either a string or a binary, so we need to introduce the type file:filename_all().
2013-01-25Testcase expecting newlineFredrik Gustafsson
2013-01-25Merge branch 'sa/dialyzer-unknown-arity-funs/OTP-10772'Fredrik Gustafsson
* sa/dialyzer-unknown-arity-funs/OTP-10772: Update one more unused funs result as per ffe582b Remove pubsub and comm_layer tests from testsuite Properly support functions with arbitrary arity in type specs. Conflicts: lib/hipe/cerl/erl_types.erl
2013-01-23Update one more unused funs result as per ffe582bStavros Aronis
2013-01-23Remove pubsub and comm_layer tests from testsuiteStavros Aronis
These tests recently broke because of the deprecation of the package system. Furthermore, they included copyrighted code. Finally they were not minimized not targeted to any specific feature and had no warnings being reported.
2013-01-23Properly support functions with arbitrary arity in type specs.Stavros Aronis
Dialyzer now understands the "fun(...)" syntax in type specs.
2013-01-23Fixed merge issueFredrik Gustafsson
2013-01-23Merge branch 'sa/dialyzer-list-spec/OTP-10740'Fredrik Gustafsson
* sa/dialyzer-list-spec/OTP-10740: Report spec discrepancy on mismatching lists Properly support functions with arbitrary arity in type specs. Conflicts: lib/dialyzer/test/small_SUITE_data/results/empty_list_infimum
2013-01-23Report spec discrepancy on mismatching listsStavros Aronis
2013-01-22Properly support functions with arbitrary arity in type specs.Stavros Aronis
2013-01-22Merge branch 'sa/dialyzer-list-spec/OTP-10740'Fredrik Gustafsson
* sa/dialyzer-list-spec/OTP-10740: Report spec discrepancy on mismatching lists
2013-01-15Merge branch 'sa/dialyzer-record-field-type/OTP-10681'Fredrik Gustafsson
* sa/dialyzer-record-field-type/OTP-10681: Fix precision of record creation violation warnings
2013-01-11small_SUITE: Update warnings for port functionsBjörn Gustavsson
2013-01-09Prepare OTP files for Unicode as default encodingHans Bolinder
2012-12-20Report spec discrepancy on mismatching listsStavros Aronis
This patch enables Dialyzer to detect cases where a function has a specification for a return type containing some list with elements different than the ones Dialyzer's own algorithm can infer e.g. a function specified to return [atom()] when actually [[atom()]] is returned. Previously Dialyzer remained silent, under normal operation, seeing that these two types have the empty list as a common element, so they were not 'completely irrelevant'.
2012-11-17Fix precision of record creation violation warningsStavros Aronis
Before patch Dialyzer was reporting all the fields that were not subtypes of the declared ones as incorrect. The correct violations are for the fields whose intersection with the declared ones is empty.
2012-10-03Merge branch 'maint'Henrik Nord
2012-09-26Fix handling of tuple set remote types appearing in tuple setsStavros Aronis
Originally reported by Joseph Wayne Norton, simplified testcase provided by Hans Bolinder.
2012-09-24dialyzer: Do not output warnings for unused funsHans Bolinder
Dialyzer no longer outputs warnings for unused anonymous functions ("funs"). Warnings are still output for unused functions. Funs in functions with -nowarn_unused_function attributes generated warnings for unused functions. Unused list comprehensions also generated warnings for unused funs.
2012-06-01Bug fixes and improvements of dialyzer_typesigHans Bolinder
1. Sometimes the solver forgot that a list had entered the error state. The bug has been fixed by storing the atom 'error' in MapDict. An example where the bug occurred is io_lib_pretty:printable_bin(). The returned spec was weaker than it should have been, but the fix-point loop hid the bug (in this case). 2. lists:partition() has been substituted for lists:splitwith() in enumerate_constraints(). This fix together with 3. solves a problem with long execution times for deeply nested fun:s. An example which is now much faster is lib/compiler/test/lc_SUITE:deeply_nested/1 (included as dialyzer/test/small_SUITE_data/src/deep_lc.erl). 3. The calculation of components in enumerate_constraints() has been simplified and optimized. The important thing here is that _all_ of the simple constraints have been saturated before entering the complex part. 4. The pretty printing of constraints has been improved.
2012-05-08Merge branch 'sa/dialyzer-contract-variables' into maintHenrik Nord
* sa/dialyzer-contract-variables: Correct handling of type names in contracts Don't rewrite unchanged PLT Fix crash related to contract checking OTP-10083
2012-04-24Correct handling of type names in contractsStavros Aronis
Variables in contracts can either be true type variables or simply names for types thet are defined in the 'when' clauses. Consider the following example: -spec foo(X, Options) -> {ok, X} | error when Options :: [{atom(), boolean()}]. Here X is a true variable whereas Options is a name for a type that is defined in the when clause. 'when' clauses may further use names on the right side. These were not treated properly by Dialyzer and could be generalized to the term() type. This patch fixes this issue. A further issue is the treatment of true type variables, but this is left for another patch.
2012-04-24Fix crash related to contract checkingStavros Aronis
When "collapsing" heads of list elements from a list's tail into the list's head the new head can be different.
2012-04-17Correct documentation, erl_bif_types and dialyzer testsPatrik Nyblom
2012-04-17Extend erlang:port_info/1,2 to show the OS pid of a spawned processMatthias Lang
When spawning OS (unix) processes with erlang:open_port, store the resulting unix pid so that it can be queried later on using erlang:port_info/1,2.
2012-03-26Fix bug related with infinitely looping functionsStavros Aronis
Depending of the ordering of the functions during dataflow, a function with an infinite loop might be identified as one that always crashes. This is fixed now, by allowing restoration of the infinitely-looping status.
2012-03-14Ensure that -on_load functions are not reported as unusedStavros Aronis
2012-02-22Zero-arity unused functions Dialyzer patchStavros Aronis
Dialyzer was not reporting unused functions with 0 arity. This was not a real issue, until we found out that there could be cases where this could lead to false warnings. This was the case in "no_local_return.erl".
2011-12-01Fix crash in DialyzerStavros Aronis
Variable substitution was not generalizing any unknown variables.
2011-10-14Fix false warning about closure applicationStavros Aronis
Whenever a variable that could hold one of two or more possible closures was used in a particular application, the application was assumed to fail if ONE of the closures would fail in this application. This has been corrected to infer failing application if ALL possible closures would fail in the particular application.
2011-10-14Change category of 'might also return' warningsStavros Aronis
Dialyzer emits warnings like the following "The specification for _ states that the function might also return _ but the inferred return is _", which are actually underspecifications and not wrong type specifications. This patch makes sure that they are filed under the appropriate category.
2011-09-21Merge branch 'ta/typer-quote-atoms' into devHenrik Nord
* ta/typer-quote-atoms: Update Dialyzer's reference results Quote atoms if necessary in types OTP-9560
2011-09-19Update Dialyzer's reference resultsStavros Aronis
2011-09-15dialyzer: fix a small typo in list_to_bitstring testTuncer Ayaz
2011-09-08Merge branch 'sa/dialyzer-dev' into devHenrik Nord
* 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