diff options
author | Björn-Egil Dahlberg <[email protected]> | 2014-01-16 16:19:45 +0100 |
---|---|---|
committer | Björn-Egil Dahlberg <[email protected]> | 2014-01-29 11:08:48 +0100 |
commit | 23e728cd0f68de11feca27358bedb0a6b71e4715 (patch) | |
tree | fc9ff1529c5aab6c6c4e3aba487460384c36e375 | |
parent | f95c907a0fda5d185c895bfb43cd2a76e46b7e81 (diff) | |
download | otp-23e728cd0f68de11feca27358bedb0a6b71e4715.tar.gz otp-23e728cd0f68de11feca27358bedb0a6b71e4715.tar.bz2 otp-23e728cd0f68de11feca27358bedb0a6b71e4715.zip |
dialyzer: Reflect map_pair core changes in dialyzer
-rw-r--r-- | lib/dialyzer/src/dialyzer_dataflow.erl | 18 | ||||
-rw-r--r-- | lib/dialyzer/src/dialyzer_dep.erl | 11 |
2 files changed, 10 insertions, 19 deletions
diff --git a/lib/dialyzer/src/dialyzer_dataflow.erl b/lib/dialyzer/src/dialyzer_dataflow.erl index 4d614320c2..239df1b8bd 100644 --- a/lib/dialyzer/src/dialyzer_dataflow.erl +++ b/lib/dialyzer/src/dialyzer_dataflow.erl @@ -309,10 +309,8 @@ traverse(Tree, Map, State) -> handle_tuple(Tree, Map, State); map -> handle_map(Tree, Map, State); - map_pair_assoc -> - handle_map_pair_assoc(Tree, Map, State); - map_pair_exact -> - handle_map_pair_exact(Tree, Map, State); + map_pair -> + handle_map_pair(Tree, Map, State); values -> Elements = cerl:values_es(Tree), {State1, Map1, EsType} = traverse_list(Elements, Map, State), @@ -1068,14 +1066,10 @@ handle_map(Tree,Map,State) -> {State1, Map1, TypePairs} = traverse_list(Pairs,Map,State), {State1, Map1, t_map(TypePairs)}. -handle_map_pair_assoc(Tree,Map,State) -> - Elements = cerl:map_pair_assoc_es(Tree), - {State1, Map1, [K,V]} = traverse_list(Elements,Map,State), - {State1, Map1, {K,V}}. - -handle_map_pair_exact(Tree,Map,State) -> - Elements = cerl:map_pair_exact_es(Tree), - {State1, Map1, [K,V]} = traverse_list(Elements,Map,State), +handle_map_pair(Tree,Map,State) -> + Key = cerl:map_pair_key(Tree), + Val = cerl:map_pair_val(Tree), + {State1, Map1, [K,V]} = traverse_list([Key,Val],Map,State), {State1, Map1, {K,V}}. %%---------------------------------------- diff --git a/lib/dialyzer/src/dialyzer_dep.erl b/lib/dialyzer/src/dialyzer_dep.erl index 12833b49c7..a81ea1a98b 100644 --- a/lib/dialyzer/src/dialyzer_dep.erl +++ b/lib/dialyzer/src/dialyzer_dep.erl @@ -186,13 +186,10 @@ traverse(Tree, Out, State, CurrentFun) -> Args = cerl:map_es(Tree), {List, State1} = traverse_list(Args, Out, State, CurrentFun), {merge_outs(List), State1}; - map_pair_assoc -> - Args = cerl:map_pair_assoc_es(Tree), - {List, State1} = traverse_list(Args, Out, State, CurrentFun), - {merge_outs(List), State1}; - map_pair_exact -> - Args = cerl:map_pair_exact_es(Tree), - {List, State1} = traverse_list(Args, Out, State, CurrentFun), + map_pair -> + Key = cerl:map_pair_key(Tree), + Val = cerl:map_pair_val(Tree), + {List, State1} = traverse_list([Key,Val], Out, State, CurrentFun), {merge_outs(List), State1}; values -> traverse_list(cerl:values_es(Tree), Out, State, CurrentFun); |