[m-rev.] for review: allow lists in terms in breakpoint conditions

Zoltan Somogyi zs at csse.unimelb.edu.au
Fri Jun 15 14:52:08 AEST 2007


On 13-Jun-2007, Julien Fischer <juliensf at csse.unimelb.edu.au> wrote:
> >	Delete the temporary memory for strings containing terms as soon
> >	as they has been used to construct their terms.
> 
> s/has/have/

Done.

> >
> >trace/mercury_trace_internal.c:
> >	Document a problem.
> >
> >trace/Mmakefile:
> >	Rebuild this directory automatically if a few more headers in the
> >	runtime change.
> >
> >doc/user_guide.texi:
> >	Document the new capability.
> 
> Test case?

Here it is. The corresponding diff to the .exp2 file will come later.

Zoltan.

cvs diff: Diffing .
Index: queens.exp
===================================================================
RCS file: /home/mercury/mercury1/repository/tests/debugger/queens.exp,v
retrieving revision 1.36
diff -u -b -r1.36 queens.exp
--- queens.exp	12 Jun 2007 06:06:34 -0000	1.36
+++ queens.exp	15 Jun 2007 04:46:16 -0000
@@ -373,6 +373,35 @@
 Are you sure you want to do it? yes
       E1:     C1 CALL queens.m:14
                          pred queens.main/2-0 (cc_multi)
+mdb> delete 0
+ 0: E stop  specific  pred queens.main/2-0 (cc_multi) EXIT 
+mdb> break safe
+ 0: + stop  interface pred queens.safe/1-0 (semidet)
+mdb> condition HeadVar__1 = [
+syntax error in term: [
+                      ^ unmatched character
+mdb> condition HeadVar__1 = [a, c
+syntax error in term: [a, c
+                      ^ unmatched character
+mdb> condition HeadVar__1 = [f(a, b]
+syntax error in term: [f(a, b]
+                             ^ here
+mdb> condition HeadVar__1 = [1,2, 5, 4, 3 ]
+ 0: + stop  interface pred queens.safe/1-0 (semidet)
+            HeadVar__1 = [1, 2, 5, 4, 3]
+mdb> continue
+     E61:    C19 CALL queens.m:52 (from queens.m:31)
+                         pred queens.safe/1-0 (semidet)
+mdb> print
+safe([1, 2, 5, 4, 3])
+mdb> retry 2
+Retry across I/O operations is not always safe.
+Are you sure you want to do it? yes
+      E1:     C1 CALL queens.m:14
+                         pred queens.main/2-0 (cc_multi)
+mdb> disable 0
+ 0: - stop  interface pred queens.safe/1-0 (semidet)
+            HeadVar__1 = [1, 2, 5, 4, 3]
 mdb> break nodiag SWTC
 Ambiguous port specification. The matches are:
 0: SWTC s1-2;
@@ -387,7 +416,9 @@
        B (arg 1)              	1
        D (arg 2)              	1
        HeadVar__3             	[2, 3, 4, 5]
-mdb> delete 0
- 0: E stop  specific  pred queens.main/2-0 (cc_multi) EXIT 
+mdb> delete *
+ 0: D stop  interface pred queens.safe/1-0 (semidet)
+            HeadVar__1 = [1, 2, 5, 4, 3]
+ 1: E stop  specific  pred queens.nodiag/3-0 (semidet) SWTC s2-2;
 mdb> continue -n -S
 [1, 3, 5, 2, 4]
Index: queens.inp
===================================================================
RCS file: /home/mercury/mercury1/repository/tests/debugger/queens.inp,v
retrieving revision 1.18
diff -u -b -r1.18 queens.inp
--- queens.inp	12 Jun 2007 06:06:34 -0000	1.18
+++ queens.inp	15 Jun 2007 04:42:05 -0000
@@ -102,9 +102,20 @@
 continue -n
 retry
 yes
+delete 0
+break safe
+condition HeadVar__1 = [
+condition HeadVar__1 = [a, c
+condition HeadVar__1 = [f(a, b]
+condition HeadVar__1 = [1,2, 5, 4, 3 ]
+continue
+print
+retry 2
+yes
+disable 0
 break nodiag SWTC
 1
 continue
 print *
-delete 0
+delete *
 continue -n -S
cvs diff: Diffing declarative
--------------------------------------------------------------------------
mercury-reviews mailing list
Post messages to:       mercury-reviews at csse.unimelb.edu.au
Administrative Queries: owner-mercury-reviews at csse.unimelb.edu.au
Subscriptions:          mercury-reviews-request at csse.unimelb.edu.au
--------------------------------------------------------------------------



More information about the reviews mailing list