aboutsummaryrefslogtreecommitdiffstats
path: root/lib/dialyzer/src
AgeCommit message (Collapse)Author
2012-02-22Remove redundant codeStavros Aronis
2012-02-22Simplify dialyzer_succ_typings codeStavros Aronis
2012-02-22Cleanups in dialyzer_callgraph and dialyzer_dataflowStavros Aronis
Refactorings, code movements and reflection of mutable variables in the code.
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".
2012-02-22Cleanup debug messages in dialyzer_dataflowStavros Aronis
2012-02-22Refactorings in dialyzer_analysis_callgraphStavros Aronis
2012-02-22Support alternative spelling of behaviourStavros Aronis
2012-02-22Refactor function selection by Dialyzer's codeserverStavros Aronis
2012-02-22Prettify specStavros Aronis
2012-02-08Suppress deprecated warnings in all modules that call 'gs'Björn Gustavsson
2011-12-22Handle nowarn_unused_function like the compiler doesHans Bolinder
2011-12-09Update copyright yearsBjörn-Egil Dahlberg
2011-12-08Optimize join_maps() in dialyzer_dataflowHans Bolinder
By keeping tracks of modified types the joining of maps ha become significantly faster.
2011-12-01Refine warning about callback specs with extra rangesStavros Aronis
2011-12-01Cleanup autoimport compiler directivesStavros Aronis
2011-12-01Fix Dialyzer's warning for its own codeStavros Aronis
2011-12-01Fix bug in Dialyzer's behaviours analysisStavros Aronis
2011-12-01Fix crash in DialyzerStavros Aronis
Variable substitution was not generalizing any unknown variables.
2011-11-30Add file/line info in a particular Dialyzer crashStavros Aronis
2011-11-30Fix Dialyzer's warning for its own codeStavros Aronis
2011-11-30No warnings for underspecs with remote typesStavros Aronis
2011-11-18Wrap up behaviours patch for DialyzerStavros Aronis
Enable warnings by default, add two options for suppressing them, fix warning formatting and update testsuites.
2011-11-18Detection of callback-spec discrepanciesStavros Aronis
2011-11-18Allow none() as return value in callbacksStavros Aronis
2011-11-18Behaviour callback discrepancy detection for DialyzerStavros Aronis
2011-11-18Add lookup function for callbacksStavros Aronis
2011-11-18Store callbacks in codeserver and PLTStavros Aronis
2011-11-18Collect callback definitions during compilationStavros Aronis
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-29Update copyright yearsBjörn-Egil Dahlberg
2011-09-27Fix bug in dataflowStavros Aronis
2011-08-30Add origin information to #fun_var closuresStavros Aronis
2011-08-29Suppress some warnings about generation of non-returning funsStavros Aronis
No warnings are emitted for funs that are non-returning when the function that generates them has a contract that specifies that it will return such a non-returning fun. The actual bug, reported by Tuncer Ayaz and simplified by Maria Christakis is included in Dialyzer's tests.
2011-08-29Fix infinite loop in dataflowStavros Aronis
2011-08-29Minor fix in dead codeStavros Aronis
2011-08-24Merge branch 'sa/dialyzer-server-loop-fix' into devHenrik Nord
* sa/dialyzer-server-loop-fix: Fix server loop detection OTP-9489
2011-08-17Fix dialyzer warning on default clause for binary comprehensionIvan Dubrov
Fixed dialyzer warning occuring on binary comprehension of form "<< <<>> || {A, B} <- [{a, b}] >>" caused by default clause inserted by compiler. Since this clause is different from the case of list comprehension, dialyzer fails to suppress that warning.
2011-08-01Fix bug when reporting unused functionsStavros Aronis
2011-05-23Fix crash when a contract range warning is emitted for a module already in pltStavros Aronis
Warnings about wrong contract ranges are post-processed to be displayed in the file/line that contains the contract, although they can also be emitted while processing other modules. For this relocation to succeed the module that contains the contract should be currently under analysis. If this is not the case the warning is displayed in the file/line of the call that proves the discrepancy in the contract.
2011-05-13Fix server loop detectionStavros Aronis
Dialyzer does not normally emit warnings for functions that implement non-terminating server loops. This detection failed when some of the elements in an SCC terminated normally (being for example list comprehensions or other generic anonymous functions that were included in the SCC). This patch fixes that.
2011-04-12Merge branch 'sa/dialyzer-invalid-spec-fix' into devHenrik Nord
* sa/dialyzer-invalid-spec-fix: Fix crash related with the contract blame assignment patch OTP-9219
2011-03-31Fix crash related with the contract blame assignment patchStavros Aronis
The relevant commit is 8342fcf5395133a19d647f2ace606af9b7fc1732. The old patch could emit warnings even for function that had a problematic spec even without refinement. This warnings would consume the relevant invalid spec warnings. This patch takes care of this by ensuring that normal invalid spec messages are emitted if the call that triggers the blame contract range warning is in another module.
2011-03-29Fix the name of an error functionMaria Christakis
2011-03-11Update copyright yearsBjörn-Egil Dahlberg
2011-03-11Merge branch 'sa/dialyzer-missing-spec' into devHenrik Nord
* sa/dialyzer-missing-spec: Add spec to dialyzer_cl_parse:get_lib_dir/1 OTP-9129
2011-03-11More descriptive warning when a tuple pattern matches a typed recordStavros Aronis
2011-03-11Better blame assignment when a spec is erroneousStavros Aronis
Applies to the specification of the return value of a function.
2011-03-11Generate better warnings for failing guardsStavros Aronis
2011-03-11Fix an erroneous warningKostis Sagonas