[m-rev.] diff: fix debugger/interactive failures

Zoltan Somogyi zs at cs.mu.OZ.AU
Fri Sep 27 13:00:44 AEST 2002


I wrote this diff with Fergus sitting next to me, so effectively it has
already been reviewed.

Zoltan.

Fix some test case failures.

browser/interactive_query.m:
	Flush the output stream before invoking the compiler, to ensure that
	the output appears in the desired order.

tests/debugger/interactive.{inp,exp}:
	Test only the interactive commands of mdb. The other commands are well
	exercised by the other test cases; duplicating them only leads to
	double maintenance of the expected outputs.

cvs diff: Diffing .
cvs diff: Diffing bench
cvs diff: Diffing bench/progs
cvs diff: Diffing bench/progs/compress
cvs diff: Diffing bench/progs/icfp2000
cvs diff: Diffing bench/progs/icfp2001
cvs diff: Diffing bench/progs/nuc
cvs diff: Diffing bench/progs/ray
cvs diff: Diffing bench/progs/tree234
cvs diff: Diffing bindist
cvs diff: Diffing boehm_gc
cvs diff: Diffing boehm_gc/Mac_files
cvs diff: Diffing boehm_gc/cord
cvs diff: Diffing boehm_gc/cord/private
cvs diff: Diffing boehm_gc/doc
cvs diff: Diffing boehm_gc/include
cvs diff: Diffing boehm_gc/include/private
cvs diff: Diffing boehm_gc/tests
cvs diff: Diffing browser
Index: browser/interactive_query.m
===================================================================
RCS file: /home/mercury1/repository/mercury/browser/interactive_query.m,v
retrieving revision 1.16
diff -u -r1.16 interactive_query.m
--- browser/interactive_query.m	1 Jul 2002 09:27:10 -0000	1.16
+++ browser/interactive_query.m	26 Sep 2002 06:03:56 -0000
@@ -90,6 +90,12 @@
 			query(QueryType, NewImports, Options,
 				MDB_Stdin, MDB_Stdout)
 		else
+			% The flush ensures that all output generated by the
+			% debugger up to this point appears in the output
+			% stream before any messages generated by the
+			% compilation of the query, which is done by another
+			% process.
+			io__flush_output(MDB_Stdout),
 			run_query(Options,
 				prog(QueryType, Imports, Term, VarSet)),
 			query(QueryType, Imports, Options,
cvs diff: Diffing bytecode
cvs diff: Diffing compiler
cvs diff: Diffing compiler/notes
cvs diff: Diffing debian
cvs diff: Diffing deep_profiler
cvs diff: Diffing deep_profiler/notes
cvs diff: Diffing doc
cvs diff: Diffing extras
cvs diff: Diffing extras/aditi
cvs diff: Diffing extras/cgi
cvs diff: Diffing extras/complex_numbers
cvs diff: Diffing extras/complex_numbers/samples
cvs diff: Diffing extras/complex_numbers/tests
cvs diff: Diffing extras/concurrency
cvs diff: Diffing extras/curs
cvs diff: Diffing extras/curs/samples
cvs diff: Diffing extras/curses
cvs diff: Diffing extras/curses/sample
cvs diff: Diffing extras/dynamic_linking
cvs diff: Diffing extras/graphics
cvs diff: Diffing extras/graphics/mercury_opengl
cvs diff: Diffing extras/graphics/mercury_tcltk
cvs diff: Diffing extras/graphics/samples
cvs diff: Diffing extras/graphics/samples/calc
cvs diff: Diffing extras/graphics/samples/maze
cvs diff: Diffing extras/graphics/samples/pent
cvs diff: Diffing extras/lazy_evaluation
cvs diff: Diffing extras/lex
cvs diff: Diffing extras/lex/samples
cvs diff: Diffing extras/logged_output
cvs diff: Diffing extras/moose
cvs diff: Diffing extras/moose/samples
cvs diff: Diffing extras/morphine
cvs diff: Diffing extras/morphine/non-regression-tests
cvs diff: Diffing extras/morphine/scripts
cvs diff: Diffing extras/morphine/source
cvs diff: Diffing extras/odbc
cvs diff: Diffing extras/posix
cvs diff: Diffing extras/quickcheck
cvs diff: Diffing extras/quickcheck/tutes
cvs diff: Diffing extras/references
cvs diff: Diffing extras/references/samples
cvs diff: Diffing extras/references/tests
cvs diff: Diffing extras/stream
cvs diff: Diffing extras/trailed_update
cvs diff: Diffing extras/trailed_update/samples
cvs diff: Diffing extras/trailed_update/tests
cvs diff: Diffing extras/xml
cvs diff: Diffing extras/xml/samples
cvs diff: Diffing java
cvs diff: Diffing java/library
cvs diff: Diffing java/runtime
cvs diff: Diffing library
cvs diff: Diffing profiler
cvs diff: Diffing robdd
cvs diff: Diffing runtime
cvs diff: Diffing runtime/GETOPT
cvs diff: Diffing runtime/machdeps
cvs diff: Diffing samples
cvs diff: Diffing samples/c_interface
cvs diff: Diffing samples/c_interface/c_calls_mercury
cvs diff: Diffing samples/c_interface/cplusplus_calls_mercury
cvs diff: Diffing samples/c_interface/mercury_calls_c
cvs diff: Diffing samples/c_interface/mercury_calls_cplusplus
cvs diff: Diffing samples/c_interface/mercury_calls_fortran
cvs diff: Diffing samples/c_interface/simpler_c_calls_mercury
cvs diff: Diffing samples/c_interface/simpler_cplusplus_calls_mercury
cvs diff: Diffing samples/diff
cvs diff: Diffing samples/muz
cvs diff: Diffing samples/rot13
cvs diff: Diffing samples/solutions
cvs diff: Diffing samples/tests
cvs diff: Diffing samples/tests/c_interface
cvs diff: Diffing samples/tests/c_interface/c_calls_mercury
cvs diff: Diffing samples/tests/c_interface/cplusplus_calls_mercury
cvs diff: Diffing samples/tests/c_interface/mercury_calls_c
cvs diff: Diffing samples/tests/c_interface/mercury_calls_cplusplus
cvs diff: Diffing samples/tests/c_interface/mercury_calls_fortran
cvs diff: Diffing samples/tests/c_interface/simpler_c_calls_mercury
cvs diff: Diffing samples/tests/c_interface/simpler_cplusplus_calls_mercury
cvs diff: Diffing samples/tests/diff
cvs diff: Diffing samples/tests/muz
cvs diff: Diffing samples/tests/rot13
cvs diff: Diffing samples/tests/solutions
cvs diff: Diffing samples/tests/toplevel
cvs diff: Diffing scripts
cvs diff: Diffing tests
cvs diff: Diffing tests/benchmarks
cvs diff: Diffing tests/debugger
Index: tests/debugger/interactive.exp
===================================================================
RCS file: /home/mercury1/repository/tests/debugger/interactive.exp,v
retrieving revision 1.7
diff -u -r1.7 interactive.exp
--- tests/debugger/interactive.exp	12 Jun 2002 14:27:02 -0000	1.7
+++ tests/debugger/interactive.exp	26 Sep 2002 15:13:21 -0000
@@ -1,118 +1,19 @@
        1:      1  1 CALL pred interactive:main/2-0 (cc_multi) interactive.m:21
 mdb> echo on
 Command echo enabled.
-mdb> print *
-       DCG_0 (arg 1)          	state('<<c_pointer>>')
-mdb> 
-       2:      2  2 CALL pred interactive:data/1-0 (det) interactive.m:40 (interactive.m:19)
-mdb> print *
-mdb: there are no live variables.
-mdb> 
-       3:      2  2 EXIT pred interactive:data/1-0 (det) interactive.m:40 (interactive.m:19)
-mdb> print *
-       HeadVar__1             	[1, 2, 3, 4, 5]
-mdb> 
-       4:      3  2 CALL pred interactive:queen/2-0 (nondet) interactive.m:42 (interactive.m:19)
-mdb> print *
-       Data (arg 1)           	[1, 2, 3, 4, 5]
-mdb> 
-       5:      4  3 CALL pred interactive:qperm/2-0 (nondet) interactive.m:46 (interactive.m:43)
-mdb> print *
-       HeadVar__1             	[1, 2, 3, 4, 5]
-mdb> 
-       6:      4  3 SWTC pred interactive:qperm/2-0 (nondet) s2; interactive.m:47
-mdb> print *
-       HeadVar__1             	[1, 2, 3, 4, 5]
-mdb> 
-       7:      5  4 CALL pred interactive:qdelete/3-0 (nondet) interactive.m:52 (interactive.m:48)
-mdb> print *
-       HeadVar__2             	[1, 2, 3, 4, 5]
-mdb> 
-       8:      5  4 DISJ pred interactive:qdelete/3-0 (nondet) c2;d1; interactive.m:52
-mdb> print *
-       HeadVar__2             	[1, 2, 3, 4, 5]
-mdb> level 1
-Ancestor level set to 1:
-   1  pred interactive:qperm/2-0 (nondet) interactive.m:48
-mdb> print *
-       HeadVar__1             	[1, 2, 3, 4, 5]
-mdb> up 1
-Ancestor level set to 2:
-   2  pred interactive:queen/2-0 (nondet) interactive.m:43
-mdb> vars
-        1 Data (arg 1)
-mdb> print *
-       Data (arg 1)           	[1, 2, 3, 4, 5]
-mdb> 
-       9:      5  4 EXIT pred interactive:qdelete/3-0 (nondet) interactive.m:52 (interactive.m:48)
-mdb> print HeadVar__1
-       HeadVar__1             	1
-mdb> print HeadVar__2
-       HeadVar__2             	[1, 2, 3, 4, 5]
-mdb> print HeadVar__3
-       HeadVar__3             	[2, 3, 4, 5]
-mdb> 
-      10:      6  4 CALL pred interactive:qperm/2-0 (nondet) interactive.m:46 (interactive.m:50)
-mdb> print *
-       HeadVar__1             	[2, 3, 4, 5]
-mdb> 
-      11:      6  4 SWTC pred interactive:qperm/2-0 (nondet) s2; interactive.m:47
-mdb> print *
-       HeadVar__1             	[2, 3, 4, 5]
-mdb> 
-      12:      7  5 CALL pred interactive:qdelete/3-0 (nondet) interactive.m:52 (interactive.m:48)
-mdb> print *
-       HeadVar__2             	[2, 3, 4, 5]
-mdb> 
-      13:      7  5 DISJ pred interactive:qdelete/3-0 (nondet) c2;d1; interactive.m:52
-mdb> print *
-       HeadVar__2             	[2, 3, 4, 5]
-mdb> 
-      14:      7  5 EXIT pred interactive:qdelete/3-0 (nondet) interactive.m:52 (interactive.m:48)
-mdb> print *
-       HeadVar__1             	2
-       HeadVar__2             	[2, 3, 4, 5]
-       HeadVar__3             	[3, 4, 5]
-mdb> 
-      15:      8  5 CALL pred interactive:qperm/2-0 (nondet) interactive.m:46 (interactive.m:50)
-mdb> goto -a 20
-      16:      8  5 SWTC pred interactive:qperm/2-0 (nondet) s2; interactive.m:47
-      17:      9  6 CALL pred interactive:qdelete/3-0 (nondet) interactive.m:52 (interactive.m:48)
-      18:      9  6 DISJ pred interactive:qdelete/3-0 (nondet) c2;d1; interactive.m:52
-      19:      9  6 EXIT pred interactive:qdelete/3-0 (nondet) interactive.m:52 (interactive.m:48)
-      20:     10  6 CALL pred interactive:qperm/2-0 (nondet) interactive.m:46 (interactive.m:50)
-mdb> stack
-   0    4* pred interactive:qperm/2-0 (nondet) (interactive.m:46 and others)
-   4       pred interactive:queen/2-0 (nondet) (interactive.m:43)
-   5       pred interactive:main/2-0 (cc_multi) (interactive.m:19)
-mdb> stack -d
-   0      20      10    6 pred interactive:qperm/2-0 (nondet) (interactive.m:46) (empty)
-   1      15       8    5 pred interactive:qperm/2-0 (nondet) (interactive.m:50) s2;c2;
-   2      10       6    4 pred interactive:qperm/2-0 (nondet) (interactive.m:50) s2;c2;
-   3       5       4    3 pred interactive:qperm/2-0 (nondet) (interactive.m:50) s2;c2;
-   4       4       3    2 pred interactive:queen/2-0 (nondet) (interactive.m:43) c2;
-   5       1       1    1 pred interactive:main/2-0 (cc_multi) (interactive.m:19) ?;c2;q!;
-mdb> print *
-       HeadVar__1             	[4, 5]
-mdb> #
-Unknown command `#'. Give the command `help' for help.
-mdb> # Test interactive queries.
-Unknown command `#'. Give the command `help' for help.
-mdb> #
-Unknown command `#'. Give the command `help' for help.
 mdb> query interactive list
-?- <stdin>:026: Inferred :- pred query((list:list(character)), (list:list(character))).
+?- append(X, Y, ['a', 'b', 'c']).
+<stdin>:026: Inferred :- pred query((list:list(character)), (list:list(character))).
 <stdin>:026: Inferred :- mode query(out, out) is multi.
-append(X, Y, ['a', 'b', 'c']).
 X = [], Y = ['a', 'b', 'c'], true ;
 X = ['a'], Y = ['b', 'c'], true ;
 X = ['a', 'b'], Y = ['c'], true ;
 X = ['a', 'b', 'c'], Y = [], true ;
 fail.
 No (more) solutions.
-?- <stdin>:026: Inferred :- pred query((list:list(int))).
+?- qperm([1,2,3], List).
+<stdin>:026: Inferred :- pred query((list:list(int))).
 <stdin>:026: Inferred :- mode query(out) is nondet.
-qperm([1,2,3], List).
 List = [1, 2, 3], true ;
 List = [1, 3, 2], true ;
 List = [2, 1, 3], true ;
@@ -121,7 +22,8 @@
 List = [3, 2, 1], true ;
 fail.
 No (more) solutions.
-?- <stdin>:012: In clause for predicate `mdb_query:run/2':
+?- qperm([1,2,3], List), List = [2 | _].
+<stdin>:012: In clause for predicate `mdb_query:run/2':
 <stdin>:012:   warning: variable `_2' occurs more than once in this scope.
 <stdin>:014: In clause for predicate `mdb_query:run/2':
 <stdin>:014:   warning: variable `_2' occurs more than once in this scope.
@@ -135,12 +37,12 @@
 <stdin>:001:   warning: variable `_2' occurs more than once in this scope.
 <stdin>:026: Inferred :- pred query((list:list(int)), (list:list(int))).
 <stdin>:026: Inferred :- mode query(out, out) is nondet.
-qperm([1,2,3], List), List = [2 | _].
 List = [2, 1, 3], _2 = [1, 3], true ;
 List = [2, 3, 1], _2 = [3, 1], true ;
 fail.
 No (more) solutions.
-?- <stdin>:012: In clause for predicate `mdb_query:run/2':
+?- qperm([1,2,3], List), List = [4 | _].
+<stdin>:012: In clause for predicate `mdb_query:run/2':
 <stdin>:012:   warning: variable `_2' occurs more than once in this scope.
 <stdin>:014: In clause for predicate `mdb_query:run/2':
 <stdin>:014:   warning: variable `_2' occurs more than once in this scope.
@@ -154,10 +56,10 @@
 <stdin>:001:   warning: variable `_2' occurs more than once in this scope.
 <stdin>:026: Inferred :- pred query((list:list(int)), (list:list(int))).
 <stdin>:026: Inferred :- mode query(out, out) is nondet.
-qperm([1,2,3], List), List = [4 | _].
 fail.
 No (more) solutions.
-?- <stdin>:001: In clause for predicate `mdb_query:query/1':
+?- qperm([1,2,"foo"], List).
+<stdin>:001: In clause for predicate `mdb_query:query/1':
 <stdin>:001:   in argument 1 of call to predicate `qperm/2':
 <stdin>:001:   in argument 2 of functor `[|]/2':
 <stdin>:001:   in argument 2 of functor `[|]/2':
@@ -167,9 +69,9 @@
 <stdin>:001:   argument has type `int',
 <stdin>:001:   constant `"foo"' has type `string'.
 For more information, try recompiling with `-E'.
-qperm([1,2,"foo"], List).
 Compilation error(s) occurred.
-?- <stdin>:026: Inferred :- pred query((list:list(int))).
+?- qperm(List, [1]).
+<stdin>:026: Inferred :- pred query((list:list(int))).
 <stdin>:014: In clause for `run(di, uo)':
 <stdin>:014:   in call to predicate `mdb_query:query/1':
 <stdin>:014:   mode error: arguments `List'
@@ -181,20 +83,20 @@
 <stdin>:026:   mode error: variable `HeadVar__2' has instantiatedness `free',
 <stdin>:026:   expected instantiatedness was `ground'.
 For more information, try recompiling with `-E'.
-qperm(List, [1]).
 Compilation error(s) occurred.
 ?- quit.
 
 mdb> cc_query interactive list
-?- <stdin>:017: Inferred :- pred query((list:list(character)), (list:list(character))).
+?- append(X, Y, ['a', 'b', 'c']).
+<stdin>:017: Inferred :- pred query((list:list(character)), (list:list(character))).
 <stdin>:017: Inferred :- mode query(out, out) is multi.
-append(X, Y, ['a', 'b', 'c']).
 X = [], Y = ['a', 'b', 'c'], true.
-?- <stdin>:017: Inferred :- pred query((list:list(int))).
+?- qperm([1,2,3], List).
+<stdin>:017: Inferred :- pred query((list:list(int))).
 <stdin>:017: Inferred :- mode query(out) is nondet.
-qperm([1,2,3], List).
 List = [1, 2, 3], true.
-?- <stdin>:011: In clause for predicate `mdb_query:run/2':
+?- qperm([1,2,3], List), List = [2 | _].
+<stdin>:011: In clause for predicate `mdb_query:run/2':
 <stdin>:011:   warning: variable `_2' occurs more than once in this scope.
 <stdin>:012: In clause for predicate `mdb_query:run/2':
 <stdin>:012:   warning: variable `_2' occurs more than once in this scope.
@@ -204,9 +106,9 @@
 <stdin>:001:   warning: variable `_2' occurs more than once in this scope.
 <stdin>:017: Inferred :- pred query((list:list(int)), (list:list(int))).
 <stdin>:017: Inferred :- mode query(out, out) is nondet.
-qperm([1,2,3], List), List = [2 | _].
 List = [2, 1, 3], _2 = [1, 3], true.
-?- <stdin>:011: In clause for predicate `mdb_query:run/2':
+?- qperm([1,2,3], List), List = [4 | _].
+<stdin>:011: In clause for predicate `mdb_query:run/2':
 <stdin>:011:   warning: variable `_2' occurs more than once in this scope.
 <stdin>:012: In clause for predicate `mdb_query:run/2':
 <stdin>:012:   warning: variable `_2' occurs more than once in this scope.
@@ -216,7 +118,6 @@
 <stdin>:001:   warning: variable `_2' occurs more than once in this scope.
 <stdin>:017: Inferred :- pred query((list:list(int)), (list:list(int))).
 <stdin>:017: Inferred :- mode query(out, out) is nondet.
-qperm([1,2,3], List), List = [4 | _].
 No solution.
 ?- quit.
 
@@ -233,58 +134,5 @@
 No solution, as expected.
 run <-- quit.
 
-mdb> retry
-This command is a no-op from this port.
-mdb> print *
-       HeadVar__1             	[4, 5]
-mdb> finish -a
-      21:     10  6 SWTC pred interactive:qperm/2-0 (nondet) s2; interactive.m:47
-      22:     11  7 CALL pred interactive:qdelete/3-0 (nondet) interactive.m:52 (interactive.m:48)
-      23:     11  7 DISJ pred interactive:qdelete/3-0 (nondet) c2;d1; interactive.m:52
-      24:     11  7 EXIT pred interactive:qdelete/3-0 (nondet) interactive.m:52 (interactive.m:48)
-      25:     12  7 CALL pred interactive:qperm/2-0 (nondet) interactive.m:46 (interactive.m:50)
-      26:     12  7 SWTC pred interactive:qperm/2-0 (nondet) s2; interactive.m:47
-      27:     13  8 CALL pred interactive:qdelete/3-0 (nondet) interactive.m:52 (interactive.m:48)
-      28:     13  8 DISJ pred interactive:qdelete/3-0 (nondet) c2;d1; interactive.m:52
-      29:     13  8 EXIT pred interactive:qdelete/3-0 (nondet) interactive.m:52 (interactive.m:48)
-      30:     14  8 CALL pred interactive:qperm/2-0 (nondet) interactive.m:46 (interactive.m:50)
-      31:     14  8 SWTC pred interactive:qperm/2-0 (nondet) s1; interactive.m:46
-      32:     14  8 EXIT pred interactive:qperm/2-0 (nondet) interactive.m:46 (interactive.m:50)
-      33:     12  7 EXIT pred interactive:qperm/2-0 (nondet) interactive.m:46 (interactive.m:50)
-      34:     10  6 EXIT pred interactive:qperm/2-0 (nondet) interactive.m:46 (interactive.m:50)
-mdb> register --quiet
-mdb> break print_list
- 0: + stop  interface pred interactive:print_list/3-0 (det)
-mdb> break qdelete
- 1: + stop  interface pred interactive:qdelete/3-0 (nondet)
-mdb> continue -a
-      35:      8  5 EXIT pred interactive:qperm/2-0 (nondet) interactive.m:46 (interactive.m:50)
-      36:      6  4 EXIT pred interactive:qperm/2-0 (nondet) interactive.m:46 (interactive.m:50)
-      37:      4  3 EXIT pred interactive:qperm/2-0 (nondet) interactive.m:46 (interactive.m:43)
-      38:     15  3 CALL pred interactive:safe/1-0 (semidet) interactive.m:56 (interactive.m:44)
-      39:     15  3 SWTC pred interactive:safe/1-0 (semidet) s2; interactive.m:57
-      40:     16  4 CALL pred interactive:nodiag/3-0 (semidet) interactive.m:61 (interactive.m:58)
-      41:     16  4 SWTC pred interactive:nodiag/3-0 (semidet) s2; interactive.m:62
-      42:     16  4 THEN pred interactive:nodiag/3-0 (semidet) s2;c6;t; interactive.m:66
-      43:     16  4 FAIL pred interactive:nodiag/3-0 (semidet) interactive.m:61 (interactive.m:58)
-      44:     15  3 FAIL pred interactive:safe/1-0 (semidet) interactive.m:56 (interactive.m:44)
-      45:      4  3 REDO pred interactive:qperm/2-0 (nondet) interactive.m:46 (interactive.m:43)
-      46:      6  4 REDO pred interactive:qperm/2-0 (nondet) interactive.m:46 (interactive.m:50)
-      47:      8  5 REDO pred interactive:qperm/2-0 (nondet) interactive.m:46 (interactive.m:50)
-      48:     10  6 REDO pred interactive:qperm/2-0 (nondet) interactive.m:46 (interactive.m:50)
-      49:     12  7 REDO pred interactive:qperm/2-0 (nondet) interactive.m:46 (interactive.m:50)
-      50:     14  8 REDO pred interactive:qperm/2-0 (nondet) interactive.m:46 (interactive.m:50)
-      51:     14  8 FAIL pred interactive:qperm/2-0 (nondet) interactive.m:46 (interactive.m:50)
-      52:     13  8 REDO pred interactive:qdelete/3-0 (nondet) interactive.m:52 (interactive.m:48)
-mdb> step -aS 5
-      53:     13  8 DISJ pred interactive:qdelete/3-0 (nondet) c2;d2; interactive.m:53
-      54:     17  9 CALL pred interactive:qdelete/3-0 (nondet) interactive.m:52 (interactive.m:54)
-      55:     17  9 FAIL pred interactive:qdelete/3-0 (nondet) interactive.m:52 (interactive.m:54)
-      56:     13  8 FAIL pred interactive:qdelete/3-0 (nondet) interactive.m:52 (interactive.m:48)
-      57:     12  7 FAIL pred interactive:qperm/2-0 (nondet) interactive.m:46 (interactive.m:50)
-mdb> disable 1
- 1: - stop  interface pred interactive:qdelete/3-0 (nondet)
-mdb> continue -n
-     675:    141  2 CALL pred interactive:print_list/3-0 (det) interactive.m:83 (interactive.m:20)
 mdb> continue -n -S
 [1, 3, 5, 2, 4]
Index: tests/debugger/interactive.inp
===================================================================
RCS file: /home/mercury1/repository/tests/debugger/interactive.inp,v
retrieving revision 1.5
diff -u -r1.5 interactive.inp
--- tests/debugger/interactive.inp	29 Apr 2002 08:22:06 -0000	1.5
+++ tests/debugger/interactive.inp	26 Sep 2002 05:24:19 -0000
@@ -1,45 +1,3 @@
-print *
-
-print *
-
-print *
-
-print *
-
-print *
-
-print *
-
-print *
-
-print *
-level 1
-print *
-up 1
-vars
-print *
-
-print HeadVar__1
-print HeadVar__2
-print HeadVar__3
-
-print *
-
-print *
-
-print *
-
-print *
-
-print *
-
-goto -a 20
-stack
-stack -d
-print *
-#
-# Test interactive queries.
-#
 query interactive list
 append(X, Y, ['a', 'b', 'c']).
 qperm([1,2,3], List).
@@ -61,14 +19,4 @@
 if { qperm([1,2,3], List), List = [2 | _] } then print(List), nl else { true }.
 if { qperm([1,2,3], List), List = [4 | _] } then print(List), nl else print("No solution, as expected."), io__nl.
 quit.
-retry
-print *
-finish -a
-register --quiet
-break print_list
-break qdelete
-continue -a
-step -aS 5
-disable 1
-continue -n
 continue -n -S
cvs diff: Diffing tests/debugger/declarative
cvs diff: Diffing tests/dppd
cvs diff: Diffing tests/general
cvs diff: Diffing tests/general/accumulator
cvs diff: Diffing tests/general/structure_reuse
cvs diff: Diffing tests/hard_coded
cvs diff: Diffing tests/hard_coded/exceptions
cvs diff: Diffing tests/hard_coded/purity
cvs diff: Diffing tests/hard_coded/sub-modules
cvs diff: Diffing tests/hard_coded/typeclasses
cvs diff: Diffing tests/invalid
cvs diff: Diffing tests/invalid/purity
cvs diff: Diffing tests/misc_tests
cvs diff: Diffing tests/recompilation
cvs diff: Diffing tests/tabling
cvs diff: Diffing tests/term
cvs diff: Diffing tests/valid
cvs diff: Diffing tests/warnings
cvs diff: Diffing tools
cvs diff: Diffing trace
cvs diff: Diffing util
cvs diff: Diffing vim
cvs diff: Diffing vim/after
cvs diff: Diffing vim/ftplugin
cvs diff: Diffing vim/syntax
--------------------------------------------------------------------------
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