aboutsummaryrefslogtreecommitdiffstats
path: root/lib/dialyzer/src/dialyzer_contracts.erl
diff options
context:
space:
mode:
authorStavros Aronis <[email protected]>2011-11-08 14:17:24 +0100
committerStavros Aronis <[email protected]>2011-11-18 14:42:56 +0100
commit191151eca1779da7ccc8244b5dca0891ebf5b62d (patch)
treeba9262f5675596e817a5fa4f5d2b02208247d6c1 /lib/dialyzer/src/dialyzer_contracts.erl
parent93aa83a1646e0b8e69dea1d8aad13bb3a9b73de9 (diff)
downloadotp-191151eca1779da7ccc8244b5dca0891ebf5b62d.tar.gz
otp-191151eca1779da7ccc8244b5dca0891ebf5b62d.tar.bz2
otp-191151eca1779da7ccc8244b5dca0891ebf5b62d.zip
Store callbacks in codeserver and PLT
Diffstat (limited to 'lib/dialyzer/src/dialyzer_contracts.erl')
-rw-r--r--lib/dialyzer/src/dialyzer_contracts.erl7
1 files changed, 5 insertions, 2 deletions
diff --git a/lib/dialyzer/src/dialyzer_contracts.erl b/lib/dialyzer/src/dialyzer_contracts.erl
index 84b926a17a..3469d70a4d 100644
--- a/lib/dialyzer/src/dialyzer_contracts.erl
+++ b/lib/dialyzer/src/dialyzer_contracts.erl
@@ -141,7 +141,8 @@ sequence([H|T], Delimiter) -> H ++ Delimiter ++ sequence(T, Delimiter).
dialyzer_codeserver:codeserver().
process_contract_remote_types(CodeServer) ->
- TmpContractDict = dialyzer_codeserver:get_temp_contracts(CodeServer),
+ {TmpContractDict, TmpCallbackDict} =
+ dialyzer_codeserver:get_temp_contracts(CodeServer),
ExpTypes = dialyzer_codeserver:get_exported_types(CodeServer),
RecordDict = dialyzer_codeserver:get_records(CodeServer),
ContractFun =
@@ -155,7 +156,9 @@ process_contract_remote_types(CodeServer) ->
dict:map(ContractFun, ContractDict)
end,
NewContractDict = dict:map(ModuleFun, TmpContractDict),
- dialyzer_codeserver:finalize_contracts(NewContractDict, CodeServer).
+ NewCallbackDict = dict:map(ModuleFun, TmpCallbackDict),
+ dialyzer_codeserver:finalize_contracts(NewContractDict, NewCallbackDict,
+ CodeServer).
-spec check_contracts([{mfa(), file_contract()}],
dialyzer_callgraph:callgraph(), dict()) -> plt_contracts().