Files
mercury/tests/debugger/breakpoints.exp2
2018-02-15 09:06:54 +11:00

288 lines
12 KiB
Plaintext

E1: C1 CALL pred breakpoints.main/2-0 (cc_multi) breakpoints.m:30
mdb> echo on
Command echo enabled.
mdb> register --quiet
mdb> break data
Ambiguous procedure specification. The matches are:
0: func breakpoints.data/0-0 (det)
1: pred breakpoints.data/1-0 (det)
Which do you want to put a breakpoint on (0-1 or *)? *
0: + stop interface func breakpoints.data/0-0 (det)
1: + stop interface pred breakpoints.data/1-0 (det)
mdb> delete 1
1: E stop interface pred breakpoints.data/1-0 (det)
mdb> delete 0
0: E stop interface func breakpoints.data/0-0 (det)
mdb> break data
Ambiguous procedure specification. The matches are:
0: func breakpoints.data/0-0 (det)
1: pred breakpoints.data/1-0 (det)
Which do you want to put a breakpoint on (0-1 or *)? 1
0: + stop interface pred breakpoints.data/1-0 (det)
mdb> continue
E2: C2 CALL pred breakpoints.data/1-0 (det) breakpoints.m:64 (breakpoints.m:62)
mdb> disable 0
0: - stop interface pred breakpoints.data/1-0 (det)
mdb> break info
0: - stop interface pred breakpoints.data/1-0 (det)
mdb> break qperm
1: + stop interface pred breakpoints.qperm/2-0 (nondet)
mdb> break safe
2: + stop interface pred breakpoints.safe/1-0 (semidet)
mdb> break -e qperm
3: + stop entry pred breakpoints.qperm/2-0 (nondet)
mdb> break -a qperm
4: + stop all pred breakpoints.qperm/2-0 (nondet)
mdb> break /
Ambiguous procedure specification. The matches are:
0: func breakpoints.//2-0 (det)
1: func breakpoints.print_list.//2-0 (det)
2: func dir.//2-0 (det)
3: func float.//2-0 (det)
4: func int.//2-0 (det)
5: func int16.//2-0 (det)
6: func int32.//2-0 (det)
7: func int64.//2-0 (det)
8: func int8.//2-0 (det)
9: func rational.//2-0 (det)
10: func uint.//2-0 (det)
11: func uint16.//2-0 (det)
12: func uint32.//2-0 (det)
13: func uint64.//2-0 (det)
14: func uint8.//2-0 (det)
Which do you want to put a breakpoint on (0-14 or *)? 0
5: + stop interface func breakpoints.//2-0 (det)
mdb> break //2
Ambiguous procedure specification. The matches are:
0: func breakpoints.//2-0 (det)
1: func breakpoints.print_list.//2-0 (det)
2: func dir.//2-0 (det)
3: func float.//2-0 (det)
4: func int.//2-0 (det)
5: func int16.//2-0 (det)
6: func int32.//2-0 (det)
7: func int64.//2-0 (det)
8: func int8.//2-0 (det)
9: func rational.//2-0 (det)
10: func uint.//2-0 (det)
11: func uint16.//2-0 (det)
12: func uint32.//2-0 (det)
13: func uint64.//2-0 (det)
14: func uint8.//2-0 (det)
Which do you want to put a breakpoint on (0-14 or *)? 0
6: + stop interface func breakpoints.//2-0 (det)
mdb> break breakpoints.print_list.-/2
7: + stop interface func breakpoints.print_list.-/2-0 (det)
mdb> break breakpoints.print_list.--0
8: + stop interface func breakpoints.print_list.-/2-0 (det)
mdb> break breakpoints__print_list__/-0
9: + stop interface func breakpoints.print_list.//2-0 (det)
mdb> break breakpoints__print_list__print_list
10: + stop interface pred breakpoints.print_list.print_list/3-0 (det)
mdb> break breakpoints.print_list.print_list/3
11: + stop interface pred breakpoints.print_list.print_list/3-0 (det)
mdb> break info
0: - stop interface pred breakpoints.data/1-0 (det)
1: + stop interface pred breakpoints.qperm/2-0 (nondet)
2: + stop interface pred breakpoints.safe/1-0 (semidet)
3: + stop entry pred breakpoints.qperm/2-0 (nondet)
4: + stop all pred breakpoints.qperm/2-0 (nondet)
5: + stop interface func breakpoints.//2-0 (det)
6: + stop interface func breakpoints.//2-0 (det)
7: + stop interface func breakpoints.print_list.-/2-0 (det)
8: + stop interface func breakpoints.print_list.-/2-0 (det)
9: + stop interface func breakpoints.print_list.//2-0 (det)
10: + stop interface pred breakpoints.print_list.print_list/3-0 (det)
11: + stop interface pred breakpoints.print_list.print_list/3-0 (det)
mdb> delete 0
0: D stop interface pred breakpoints.data/1-0 (det)
mdb> break info
1: + stop interface pred breakpoints.qperm/2-0 (nondet)
2: + stop interface pred breakpoints.safe/1-0 (semidet)
3: + stop entry pred breakpoints.qperm/2-0 (nondet)
4: + stop all pred breakpoints.qperm/2-0 (nondet)
5: + stop interface func breakpoints.//2-0 (det)
6: + stop interface func breakpoints.//2-0 (det)
7: + stop interface func breakpoints.print_list.-/2-0 (det)
8: + stop interface func breakpoints.print_list.-/2-0 (det)
9: + stop interface func breakpoints.print_list.//2-0 (det)
10: + stop interface pred breakpoints.print_list.print_list/3-0 (det)
11: + stop interface pred breakpoints.print_list.print_list/3-0 (det)
mdb> disable 3
3: - stop entry pred breakpoints.qperm/2-0 (nondet)
mdb> break nodiag
0: + stop interface pred breakpoints.nodiag/3-0 (semidet)
mdb> break_print -v -n -b1 HeadVar__1 HeadVar__2
1: + stop interface pred breakpoints.qperm/2-0 (nondet)
HeadVar__1 (verbose, nowarn), HeadVar__2 (verbose, nowarn)
mdb> continue
E3: C3 CALL pred breakpoints.qperm/2-0 (nondet) breakpoints.m:70 (breakpoints.m:67)
HeadVar__1
[|]
1-1
2-[|]
1-2
2-[|]
1-3
2-[|]/2
mdb> break_print -b1 none
1: + stop interface pred breakpoints.qperm/2-0 (nondet)
mdb> format_param -p depth 10
mdb> format_param -p size 20
mdb> break_print -p -n -b1 HeadVar__1 HeadVar__2
1: + stop interface pred breakpoints.qperm/2-0 (nondet)
HeadVar__1 (pretty, nowarn), HeadVar__2 (pretty, nowarn)
mdb> continue
E4: C3 SWTC pred breakpoints.qperm/2-0 (nondet) s2-2; breakpoints.m:71
mdb> finish -N
E5: C4 CALL pred breakpoints.qperm/2-0 (nondet) breakpoints.m:70 (breakpoints.m:74)
HeadVar__1
[2, 3, 4, 5]
mdb> finish -n
E6: C4 EXIT pred breakpoints.qperm/2-0 (nondet) breakpoints.m:70 (breakpoints.m:74)
HeadVar__1
[2, 3, 4, 5]
HeadVar__2
[2, 3, 4, 5]
mdb> break_print -b1 none
1: + stop interface pred breakpoints.qperm/2-0 (nondet)
mdb> break_print -f -n -b1 HeadVar__1
1: + stop interface pred breakpoints.qperm/2-0 (nondet)
HeadVar__1 (flat, nowarn)
mdb> break_print -f -e -n -b1 HeadVar__2
1: + stop interface pred breakpoints.qperm/2-0 (nondet)
HeadVar__1 (flat, nowarn), HeadVar__2 (flat, nowarn)
mdb> continue
E7: C3 EXIT pred breakpoints.qperm/2-0 (nondet) breakpoints.m:70 (breakpoints.m:67)
HeadVar__1 [1, 2, 3, 4, 5]
HeadVar__2 [1, 2, 3, 4, 5]
mdb> continue
E8: C5 CALL pred breakpoints.safe/1-0 (semidet) breakpoints.m:80 (breakpoints.m:68)
mdb> finish
E9: C6 CALL pred breakpoints.nodiag/3-0 (semidet) breakpoints.m:85 (breakpoints.m:82)
E10: C6 FAIL pred breakpoints.nodiag/3-0 (semidet) breakpoints.m:85 (breakpoints.m:82)
E11: C5 FAIL pred breakpoints.safe/1-0 (semidet) breakpoints.m:80 (breakpoints.m:68)
mdb> delete *
0: E stop interface pred breakpoints.nodiag/3-0 (semidet)
1: E stop interface pred breakpoints.qperm/2-0 (nondet)
2: E stop interface pred breakpoints.safe/1-0 (semidet)
3: D stop entry pred breakpoints.qperm/2-0 (nondet)
4: E stop all pred breakpoints.qperm/2-0 (nondet)
5: E stop interface func breakpoints.//2-0 (det)
6: E stop interface func breakpoints.//2-0 (det)
7: E stop interface func breakpoints.print_list.-/2-0 (det)
8: E stop interface func breakpoints.print_list.-/2-0 (det)
9: E stop interface func breakpoints.print_list.//2-0 (det)
10: E stop interface pred breakpoints.print_list.print_list/3-0 (det)
11: E stop interface pred breakpoints.print_list.print_list/3-0 (det)
mdb> break info
There are no break points.
mdb> delete *
There are no break points.
mdb> break -i -I3 qperm
0: + stop interface pred breakpoints.qperm/2-0 (nondet)
(ignore next 3 interface events)
mdb> continue
E12: C7 REDO pred breakpoints.qperm/2-0 (nondet) breakpoints.m:70 (breakpoints.m:74)
mdb> print *
HeadVar__1 [4, 5]
mdb> ignore -E4 0
0: + stop interface pred breakpoints.qperm/2-0 (nondet)
(ignore next 4 call events)
mdb> continue
E13: C8 CALL pred breakpoints.qperm/2-0 (nondet) breakpoints.m:70 (breakpoints.m:74)
mdb> print *
HeadVar__1 []
mdb> delete *
0: E stop interface pred breakpoints.qperm/2-0 (nondet)
mdb> break -O test_in_both
Ambiguous procedure specification. The matches are:
0: pred breakpoints.test_in_both/2-0 (det)
1: pred breakpoints.print_list.test_in_both/2-0 (det)
mdb> break breakpoints.test_in_both
0: + stop interface pred breakpoints.test_in_both/2-0 (det)
mdb> break breakpoints.print_list.test_in_both
1: + stop interface pred breakpoints.print_list.test_in_both/2-0 (det)
mdb> delete *
0: E stop interface pred breakpoints.test_in_both/2-0 (det)
1: E stop interface pred breakpoints.print_list.test_in_both/2-0 (det)
mdb> break print_list.test_in_both
0: + stop interface pred breakpoints.print_list.test_in_both/2-0 (det)
mdb> break print_list.test_only_in_printlist
1: + stop interface pred breakpoints.print_list.test_only_in_printlist/2-0 (det)
mdb> delete *
0: E stop interface pred breakpoints.print_list.test_in_both/2-0 (det)
1: E stop interface pred breakpoints.print_list.test_only_in_printlist/2-0 (det)
mdb> break test_only_in_printlist
0: + stop interface pred breakpoints.print_list.test_only_in_printlist/2-0 (det)
mdb> delete *
0: E stop interface pred breakpoints.print_list.test_only_in_printlist/2-0 (det)
mdb> procedures testmod
Module name `testmod' is ambiguous.
The matches are:
breakpoints.a.testmod
breakpoints.b.testmod
mdb> procedures a
List of procedures in module `a'
func breakpoints.a.afunc/0-0 (det)
mdb> procedures a.testmod
List of procedures in module `a.testmod'
func breakpoints.a.testmod.test_in_a/0-0 (det)
func breakpoints.a.testmod.test_in_ab/0-0 (det)
mdb> break -O test_in_ab
Ambiguous procedure specification. The matches are:
0: func breakpoints.a.testmod.test_in_ab/0-0 (det)
1: func breakpoints.b.testmod.test_in_ab/0-0 (det)
mdb> break -O testmod.test_in_ab
Ambiguous procedure specification. The matches are:
0: func breakpoints.a.testmod.test_in_ab/0-0 (det)
1: func breakpoints.b.testmod.test_in_ab/0-0 (det)
mdb> break -O a.testmod.test_in_ab
0: + stop interface func breakpoints.a.testmod.test_in_ab/0-0 (det)
mdb> break -O b.testmod.test_in_ab
1: + stop interface func breakpoints.b.testmod.test_in_ab/0-0 (det)
mdb> delete *
0: E stop interface func breakpoints.a.testmod.test_in_ab/0-0 (det)
1: E stop interface func breakpoints.b.testmod.test_in_ab/0-0 (det)
mdb> break -O -p goal test_in_a
0: + stop interface func breakpoints.a.testmod.test_in_a/0-0 (det)
goal (flat)
mdb> break -O -P -p HeadVar__1 test_in_b
1: + print interface func breakpoints.b.testmod.test_in_b/0-0 (det)
HeadVar__1 (flat)
mdb> break info
0: + stop interface func breakpoints.a.testmod.test_in_a/0-0 (det)
goal (flat)
1: + print interface func breakpoints.b.testmod.test_in_b/0-0 (det)
HeadVar__1 (flat)
mdb> continue
[1, 3, 5, 2, 4]
E14: C9 CALL func breakpoints.a.testmod.test_in_a/0-0 (det) breakpoints.a.testmod.m:14 (breakpoints.m:33)
test_in_a = '_'
mdb> break_print -b0 none
0: + stop interface func breakpoints.a.testmod.test_in_a/0-0 (det)
mdb> break_print -b0 *
0: + stop interface func breakpoints.a.testmod.test_in_a/0-0 (det)
all (flat)
mdb> break nonexistent.m:1000
mdb: there is no debuggable source file named nonexistent.m.
mdb> break breakpoints.m:1000
mdb: there is no event at line 1000 in breakpoints.m.
mdb> continue
E15: C9 EXIT func breakpoints.a.testmod.test_in_a/0-0 (det) breakpoints.a.testmod.m:14 (breakpoints.m:33)
HeadVar__1 "a"
mdb> continue
"a"
E16: C10 CALL func breakpoints.b.testmod.test_in_b/0-0 (det) breakpoints.b.testmod.m:14 (breakpoints.m:35)
mdb: there is no variable named HeadVar__1.
E17: C10 EXIT func breakpoints.b.testmod.test_in_b/0-0 (det) breakpoints.b.testmod.m:14 (breakpoints.m:35)
HeadVar__1 "b"
"b"