aboutsummaryrefslogtreecommitdiffstats
path: root/lib/asn1/src/prepare_templates.erl
diff options
context:
space:
mode:
authorStavros Aronis <[email protected]>2014-03-26 18:06:09 +0100
committerHans Bolinder <[email protected]>2014-03-28 12:01:53 +0100
commit1a23202000716bbc430f1212c06d7ef622acdd3e (patch)
tree1b241e9bdd356ed485b57634d3b00090e18d580e /lib/asn1/src/prepare_templates.erl
parent7b132ffe5fa684fb7a2ed7a7a4e1cf082382d857 (diff)
downloadotp-1a23202000716bbc430f1212c06d7ef622acdd3e.tar.gz
otp-1a23202000716bbc430f1212c06d7ef622acdd3e.tar.bz2
otp-1a23202000716bbc430f1212c06d7ef622acdd3e.zip
Dialyzer now plays nicely with funs that come as "external" arguments
Two steps are needed to make this work: 1) Avoid generating the additional "apply_constraint" in dialyzer_typesig by reporting every function argument as a potential external function (patch on dialyzer_dep). This will produce correct success typings for all functions in the test case, but dataflow would miss the key warnings that help identify the bugs. 2) Patch dialyzer_dataflow so that it uses the "handle just external" path as a fallback whenever there are any external calls. As a result, if we have info about some paths, then: a) use the old "handle known apply" code to mark these functions as used and b) ignore the generalized result and use the one found by typesig for the return value of the apply itself.
Diffstat (limited to 'lib/asn1/src/prepare_templates.erl')
0 files changed, 0 insertions, 0 deletions