aboutsummaryrefslogtreecommitdiffstats
path: root/lib/dialyzer/src/typer.erl
diff options
context:
space:
mode:
authorHans Bolinder <[email protected]>2017-04-13 15:53:48 +0200
committerHans Bolinder <[email protected]>2017-06-13 13:40:26 +0200
commit3ffed207dffdaad6924e3333f8ee30ac5920aa24 (patch)
tree604ec81a96540dbc8c9e4284811e47ac7af7424d /lib/dialyzer/src/typer.erl
parentce6fe3c77b31e6c0fcb13d347c3fcbbedfd544e7 (diff)
downloadotp-3ffed207dffdaad6924e3333f8ee30ac5920aa24.tar.gz
otp-3ffed207dffdaad6924e3333f8ee30ac5920aa24.tar.bz2
otp-3ffed207dffdaad6924e3333f8ee30ac5920aa24.zip
dialyzer: Do not use two records for PLTs
Instead of two records, #plt{} with dict:s and #mini_plt{} with ETS tables, one record is used for representing PLT:s in RAM. The #mini_plt{} is the one now used throughout analyses, but it is called #plt{}. When writing the PLT to file, another record is used, #file_plt{} (as before). When creating #file_plt{}, the #plt{} is deleted (it cannot be used for further analyses).
Diffstat (limited to 'lib/dialyzer/src/typer.erl')
-rw-r--r--lib/dialyzer/src/typer.erl7
1 files changed, 3 insertions, 4 deletions
diff --git a/lib/dialyzer/src/typer.erl b/lib/dialyzer/src/typer.erl
index 43e03be740..bf5484e5f6 100644
--- a/lib/dialyzer/src/typer.erl
+++ b/lib/dialyzer/src/typer.erl
@@ -158,10 +158,9 @@ get_type_info(#analysis{callgraph = CallGraph,
StrippedCallGraph = remove_external(CallGraph, TrustPLT),
%% io:format("--- Analyzing callgraph... "),
try
- NewMiniPlt = dialyzer_succ_typings:analyze_callgraph(StrippedCallGraph,
- TrustPLT,
- CodeServer),
- NewPlt = dialyzer_plt:restore_full_plt(NewMiniPlt),
+ NewPlt = dialyzer_succ_typings:analyze_callgraph(StrippedCallGraph,
+ TrustPLT,
+ CodeServer),
Analysis#analysis{callgraph = StrippedCallGraph, trust_plt = NewPlt}
catch
error:What ->