Files
mercury/tests/declarative_debugger/throw.exp3
Zoltan Somogyi d9a1050af6 Flatten the test directories, step 1.
Specifically, rename the following subdirectories of the test directory:

    old dir name                new dir name

    analysis/ext                analysis_external
    analysis/ctgc               analysis_ctgc
    analysis/excp               analysis_excp
    analysis/table              analysis_table
    analysis/trail              analysis_trail
    invalid/purity              invalid_purity
    analysis/sharing            analysis_sharing
    hard_coded/purity           purity
    general/accumulator         accumulator
    analysis/unused_args        analysis_unused_args
    debugger/declarative        declarative_debugger
    hard_coded/exceptions       exceptions
    general/string_format       string_format
    hard_coded/sub-modules      submodules
    hard_coded/typeclasses      typeclasses
    general/structure_reuse     structure_reuse

Some subdirectories are still there, to wit, the subdirs of the inactive
test directory stm, each of which (if I remember correctly) holds only one
test case.

The general/structure_reuse directory previously wasn't enabled; I think
this was a bug.

tests/Mmakefile:
tools/bootcheck:
    List the new test directories.

tests/Mmake.common:
    The analysis_* directories each need to know whether the workspace
    uses subdirs. This used to be controlled from one place,
    analysis/Mmakefile, but since analysis_* are not subdirs of analysis,
    we need a new central place to find this out.

tests/analysis/common.sh:
    Update documentation for the move.

tests/OLDDIRS/Mmakefile:
    Set the subdir list to empty.

tests/NEWDIRS/Mmakefile:
    Update the "this" directory's name, as well as TESTS_DIR.

    In analysis_*/Mmakefile, use the new mechanism for detecting the presence
    of subdirs.
2015-02-10 00:43:02 +11:00

48 lines
1.1 KiB
Plaintext

1: 1 1 CALL pred throw.main/2-0 (cc_multi) throw.m:10
mdb> echo on
Command echo enabled.
mdb> register --quiet
mdb> break p
0: + stop interface pred throw.p/1-0 (cc_nondet)
mdb> break q
1: + stop interface pred throw.q/1-0 (semidet)
mdb> continue
13: 9 7 CALL pred throw.p/1-0 (cc_nondet) throw.m:20 (exception.m:NNNN)
mdb> finish
70: 9 7 EXCP pred throw.p/1-0 (cc_nondet)
mdb> dd -d 3 -n 7
Call p(_)
Throws "Too big"
Expected? no
a(3)
Valid? yes
Call b(3, _)
Throws "Too big"
Expected? yes
Found unhandled or incorrect exception:
p(_)
"Too big"
Is this a bug? yes
70: 9 7 EXCP pred throw.p/1-0 (cc_nondet)
mdb> continue
exception(univ_cons("Too big"))
1210: 466 7 CALL pred throw.q/1-0 (semidet) throw.m:48 (exception.m:NNNN)
mdb> finish
1267: 466 7 EXCP pred throw.q/1-0 (semidet)
mdb> dd -d 3 -n 7
Call q(_)
Throws "Too big"
Expected? no
a2(3)
Valid? yes
Call b2(3, _)
Throws "Too big"
Expected? yes
Found unhandled or incorrect exception:
q(_)
"Too big"
Is this a bug? yes
1267: 466 7 EXCP pred throw.q/1-0 (semidet)
mdb> continue
exception(univ_cons("Too big"))