diff: std_util.m: remove obsolete XXX comments
Fergus Henderson
fjh at cs.mu.oz.au
Mon Jul 28 01:33:43 AEST 1997
library/std_util.m:
Remove some old `XXX' comments that are obsolete now that
type_name/1 etc. handle higher-order types correctly.
Index: std_util.m
===================================================================
RCS file: /home/staff/zs/imp/mercury/library/std_util.m,v
retrieving revision 1.98
diff -u -r1.98 std_util.m
--- std_util.m 1997/07/27 15:07:17 1.98
+++ std_util.m 1997/07/27 15:29:11
@@ -189,10 +189,6 @@
% A type_info represents a type, e.g. `list(int)'.
% A type_ctor_info represents a type constructor, e.g. `list/1'.
- % XXX The facilities here don't yet work for higher-order types.
- % If you try, there is a good chance that you will get a core
- % dump or worse.
-
:- type type_info.
:- type type_ctor_info.
@@ -1164,10 +1160,9 @@
").
- % A type_ctor_info is represented as a pointer to a base_type_info.
- % XXX what about higher-order types?
- % For them the type_ctor_info should include the arity, but
- % the arity is stored in the type_info, not the base_type_info.
+ % A type_ctor_info is represented as a pointer to a base_type_info,
+ % except for higher-order types, which are represented using
+ % small integers. See runtime/type_info.h.
:- type type_ctor_info == c_pointer.
:- pragma c_code(type_of(Value::unused) = (TypeInfo::out),
@@ -1759,10 +1754,8 @@
Word base_type_info;
/*
- ** XXX: do we need to treat higher-order predicates as
- ** a special case here?
+ ** We need to treat higher-order predicates as a special case here.
*/
-
if (MR_TYPECTOR_IS_HIGHER_ORDER(type_ctor)) {
base_type_info = MR_TYPECTOR_GET_HOT_BASE_TYPE_INFO(type_ctor);
extra_args = 2;
--
Fergus Henderson <fjh at cs.mu.oz.au> | "I have always known that the pursuit
WWW: <http://www.cs.mu.oz.au/~fjh> | of excellence is a lethal habit"
PGP: finger fjh at 128.250.37.3 | -- the last words of T. S. Garp.
More information about the developers
mailing list