diff options
author | Hans Bolinder <[email protected]> | 2016-02-17 13:01:46 +0100 |
---|---|---|
committer | Hans Bolinder <[email protected]> | 2016-02-17 13:01:46 +0100 |
commit | f524d3baff6f63846efa571851cc3cc4a55916bd (patch) | |
tree | fe8a5d13ab678425e40a60117519c6a641a07dfc /lib/compiler/src | |
parent | 05a24fed7539f861c7d725829acb196a3991923c (diff) | |
parent | 6285f2874977e033d02b3c0b77da78e35e771961 (diff) | |
download | otp-f524d3baff6f63846efa571851cc3cc4a55916bd.tar.gz otp-f524d3baff6f63846efa571851cc3cc4a55916bd.tar.bz2 otp-f524d3baff6f63846efa571851cc3cc4a55916bd.zip |
Merge branch 'hb/stdlib/epp_typed_record_fields/OTP-13148'
* hb/stdlib/epp_typed_record_fields/OTP-13148:
stdlib: Update qlc_pt to handle typed record fields
stdlib: Let the linter detect old typed records
stdlib: Update the linter to handle typed record fields
stdlib: Update erl_expand_records to handle typed record fields
compiler: Update the compiler to handle typed record fields
stdlib: Update erl_id_trans to handle types and specs
stdlib: Add a Cover test with typed record field
stdlib: Update module shell to handle typed record fields
stdlib: Update ms_transform to handle typed record fields
stdlib: Modify the preprocessor as to expose typed record fields
Diffstat (limited to 'lib/compiler/src')
-rw-r--r-- | lib/compiler/src/compile.erl | 7 | ||||
-rw-r--r-- | lib/compiler/src/v3_kernel.erl | 4 |
2 files changed, 6 insertions, 5 deletions
diff --git a/lib/compiler/src/compile.erl b/lib/compiler/src/compile.erl index 72f1a767ed..46917905de 100644 --- a/lib/compiler/src/compile.erl +++ b/lib/compiler/src/compile.erl @@ -1620,11 +1620,8 @@ output_encoding(F, #compile{encoding = Encoding}) -> ok = io:setopts(F, [{encoding, Encoding}]), ok = io:fwrite(F, <<"%% ~s\n">>, [epp:encoding_to_string(Encoding)]). -restore_expanded_types("P", Fs) -> - epp:restore_typed_record_fields(Fs); restore_expanded_types("E", {M,I,Fs0}) -> - Fs1 = restore_expand_module(Fs0), - Fs = epp:restore_typed_record_fields(Fs1), + Fs = restore_expand_module(Fs0), {M,I,Fs}; restore_expanded_types(_Ext, Code) -> Code. @@ -1636,6 +1633,8 @@ restore_expand_module([{attribute,Line,spec,[Arg]}|Fs]) -> [{attribute,Line,spec,Arg}|restore_expand_module(Fs)]; restore_expand_module([{attribute,Line,callback,[Arg]}|Fs]) -> [{attribute,Line,callback,Arg}|restore_expand_module(Fs)]; +restore_expand_module([{attribute,Line,record,[R]}|Fs]) -> + [{attribute,Line,record,R}|restore_expand_module(Fs)]; restore_expand_module([F|Fs]) -> [F|restore_expand_module(Fs)]; restore_expand_module([]) -> []. diff --git a/lib/compiler/src/v3_kernel.erl b/lib/compiler/src/v3_kernel.erl index 011748df3a..4446d5ff1d 100644 --- a/lib/compiler/src/v3_kernel.erl +++ b/lib/compiler/src/v3_kernel.erl @@ -1,7 +1,7 @@ %% %% %CopyrightBegin% %% -%% Copyright Ericsson AB 1999-2013. All Rights Reserved. +%% Copyright Ericsson AB 1999-2015. All Rights Reserved. %% %% Licensed under the Apache License, Version 2.0 (the "License"); %% you may not use this file except in compliance with the License. @@ -143,8 +143,10 @@ attributes([]) -> []. include_attribute(type) -> false; include_attribute(spec) -> false; +include_attribute(callback) -> false; include_attribute(opaque) -> false; include_attribute(export_type) -> false; +include_attribute(record) -> false; include_attribute(_) -> true. function({#c_var{name={F,Arity}=FA},Body}, St0) -> |