[m-rev.] for review: trace builtin and private_builtin
Ian MacLarty
maclarty at cs.mu.OZ.AU
Wed Dec 7 04:26:23 AEDT 2005
On Wed, Dec 07, 2005 at 12:29:08AM +1100, Julien Fischer wrote:
>
> > Index: compiler/stack_layout.m
> > ===================================================================
> > RCS file: /home/mercury1/repository/mercury/compiler/stack_layout.m,v
> > retrieving revision 1.109
> > diff -u -r1.109 stack_layout.m
> > --- compiler/stack_layout.m 28 Oct 2005 02:10:36 -0000 1.109
> > +++ compiler/stack_layout.m 28 Nov 2005 18:48:19 -0000
> > @@ -87,6 +87,7 @@
> > :- import_module ll_backend.llds_out.
> > :- import_module ll_backend.prog_rep.
> > :- import_module ll_backend.trace.
> > +:- import_module mdbcomp.program_representation.
> > :- import_module parse_tree.prog_out.
> > :- import_module parse_tree.prog_util.
> >
> > @@ -421,8 +422,9 @@
> > ).
> >
> > :- pred find_valid_return_context(
> > - assoc_list(code_addr, pair(prog_context, goal_path))::in,
> > - code_addr::out, prog_context::out, goal_path::out) is semidet.
> > + assoc_list(code_addr, pair(prog_context, hlds.hlds_goal.goal_path))::in,
>
> One level of module qualification should be sufficent to differentiate
> between hlds_goal.goal_path and program_representation.goal_path.
>
Righto.
> (On an unrelated note: are these two versions of the goal_path type that
> different that we need two of them? Superficially they look similar.)
>
I'm not sure.
>
> It would be worth adding a pointer to this predicate in builtin and exception
> to the effect that if the implementation of these predicates is changed then
> this predicate may need to be updated.
>
only in patch2:
unchanged:
--- library/builtin.m 17 Oct 2005 11:35:16 -0000 1.112
+++ library/builtin.m 6 Dec 2005 17:21:06 -0000
@@ -479,6 +479,13 @@
").
%-----------------------------------------------------------------------------%
+%
+% IMPORTANT: any changes or additions to external predicates should be
+% reflected in the definition of pred_is_external in
+% mdbcomp/program_representation.m. The debugger needs to know what predicates
+% are defined externally, so that it knows not to expect events for those
+% predicates.
+%
:- external(unify/2).
:- external(compare/3).
only in patch2:
unchanged:
--- library/exception.m 20 Sep 2005 03:47:30 -0000 1.100
+++ library/exception.m 6 Dec 2005 17:22:28 -0000
@@ -733,6 +733,14 @@
:- mode builtin_catch(pred(out) is multi, in(handler), out) is multi.
:- mode builtin_catch(pred(out) is nondet, in(handler), out) is nondet.
+%
+% IMPORTANT: any changes or additions to external predicates should be
+% reflected in the definition of pred_is_external in
+% mdbcomp/program_representation.m. The debugger needs to know what predicates
+% are defined externally, so that it knows not to expect events for those
+% predicates.
+%
+
:- external(builtin_throw/1).
:- external(builtin_catch/3).
Merci,
Ian.
--------------------------------------------------------------------------
mercury-reviews mailing list
post: mercury-reviews at cs.mu.oz.au
administrative address: owner-mercury-reviews at cs.mu.oz.au
unsubscribe: Address: mercury-reviews-request at cs.mu.oz.au Message: unsubscribe
subscribe: Address: mercury-reviews-request at cs.mu.oz.au Message: subscribe
--------------------------------------------------------------------------
More information about the reviews
mailing list