[m-rev.] diff: Fix Erlang RTTI implementation type.

Peter Wang novalazy at gmail.com
Fri Oct 23 16:51:30 AEDT 2015


The du_arg_info constructor in compiler/rtti.m gained an argument in
commit 0ae65de.  The corresponding type in erlang_rtti_implementation.m
was not kept in sync.

library/erlang_rtti_implementation.m:
	Bring du_arg_info in line with that of compiler/rtti.m
---
 library/erlang_rtti_implementation.m | 9 ++++++++-
 1 file changed, 8 insertions(+), 1 deletion(-)

diff --git a/library/erlang_rtti_implementation.m b/library/erlang_rtti_implementation.m
index 8c95a54..4799781 100644
--- a/library/erlang_rtti_implementation.m
+++ b/library/erlang_rtti_implementation.m
@@ -2108,7 +2108,8 @@ det_dynamic_cast(Term, Actual) :-
 :- type du_arg_info
     --->    du_arg_info(
                 du_arg_name         :: maybe(list(char)),
-                du_arg_type         :: maybe_pseudo_type_info
+                du_arg_type         :: maybe_pseudo_type_info,
+                du_arg_width        :: arg_width
             ).
 
 :- type exist_info
@@ -2158,6 +2159,12 @@ det_dynamic_cast(Term, Actual) :-
     --->    pseudo(pseudo_type_info_thunk)
     ;       plain(type_info_thunk).
 
+:- type arg_width
+    --->    full_word
+    ;       double_word
+    ;       partial_word_first(int)         % mask
+    ;       partial_word_shifted(int, int). % shift, mask
+
 %---------------------------------------------------------------------------%
 
 :- type ti_info(T) == maybe({type_info, pti_info(T)}).
-- 
2.1.2




More information about the reviews mailing list