diff options
author | Zandra <[email protected]> | 2015-12-28 11:56:18 +0100 |
---|---|---|
committer | Zandra <[email protected]> | 2015-12-28 11:56:18 +0100 |
commit | 7dc1b19582a61281742fd1dcc880899b72e6becb (patch) | |
tree | 0099939558229b5fbbaed9ac55d212d5767d4ff5 /lib/dialyzer/src/dialyzer_analysis_callgraph.erl | |
parent | 5daa0591e671d3a08988d80e295df3b0c7b002e5 (diff) | |
parent | 60d310117c005d6a05dcfc729b79a174b44e5370 (diff) | |
download | otp-7dc1b19582a61281742fd1dcc880899b72e6becb.tar.gz otp-7dc1b19582a61281742fd1dcc880899b72e6becb.tar.bz2 otp-7dc1b19582a61281742fd1dcc880899b72e6becb.zip |
Merge branch 'maint'
Diffstat (limited to 'lib/dialyzer/src/dialyzer_analysis_callgraph.erl')
-rw-r--r-- | lib/dialyzer/src/dialyzer_analysis_callgraph.erl | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/lib/dialyzer/src/dialyzer_analysis_callgraph.erl b/lib/dialyzer/src/dialyzer_analysis_callgraph.erl index c57a22129c..826ac51775 100644 --- a/lib/dialyzer/src/dialyzer_analysis_callgraph.erl +++ b/lib/dialyzer/src/dialyzer_analysis_callgraph.erl @@ -624,6 +624,28 @@ find_call_file_and_line(Tree, MFA) -> MFA -> Ann = cerl:get_ann(SubTree), [{get_file(Ann), get_line(Ann)}|Acc]; + {erlang, make_fun, 3} -> + [CA1, CA2, CA3] = cerl:call_args(SubTree), + case + cerl:is_c_atom(CA1) andalso + cerl:is_c_atom(CA2) andalso + cerl:is_c_int(CA3) + of + true -> + case + {cerl:concrete(CA1), + cerl:concrete(CA2), + cerl:concrete(CA3)} + of + MFA -> + Ann = cerl:get_ann(SubTree), + [{get_file(Ann), get_line(Ann)}|Acc]; + _ -> + Acc + end; + false -> + Acc + end; _ -> Acc end; false -> Acc |