aboutsummaryrefslogtreecommitdiffstats
path: root/lib/dialyzer/src/dialyzer_contracts.erl
diff options
context:
space:
mode:
authorMagnus Lång <[email protected]>2016-02-28 00:17:48 +0100
committerHans Bolinder <[email protected]>2016-04-28 16:16:09 +0200
commitebd967522612333e52a884181e6132b1ba7e5239 (patch)
treecd12d37cd4fe9d375cf15acbad8d08e5a4542af5 /lib/dialyzer/src/dialyzer_contracts.erl
parente3ac51b173585f84c397ae38c27d772be2d308c6 (diff)
downloadotp-ebd967522612333e52a884181e6132b1ba7e5239.tar.gz
otp-ebd967522612333e52a884181e6132b1ba7e5239.tar.bz2
otp-ebd967522612333e52a884181e6132b1ba7e5239.zip
dialyzer: Unfold cerl patterns containing maps
Dialyzer relies heavily on the assumption that the type of a literal that is used as a pattern is the type of any value that can match that pattern. For maps, that is not true, and it was causing bad analysis results. A new help function dialyzer_utils:refold_pattern/1 identifies maps in literal patterns, and unfolds and labels them, allowing them to be properly analysed.
Diffstat (limited to 'lib/dialyzer/src/dialyzer_contracts.erl')
0 files changed, 0 insertions, 0 deletions