Files
mercury/tests/debugger/polymorphic_output.exp
Ralph Becket a8ffd3680c Change the compiler and tools so that .' and not :' is now used as the
Estimated hours taken: 14
Branches: main

Change the compiler and tools so that `.' and not `:' is now used as the
module separator in all output.

Infix `.' now has associativity yfx and priority 10.

NEWS:
	Report the change.

configure.in:
	Amend the test for an up-to-date Mercury compiler to check whether
	it recognises `.' as a module qualifier.

compiler/code_gen.m:
compiler/error_util.m:
compiler/hlds_out.m:
compiler/prog_out.m:
compiler/prog_util.m:
compiler/rl_exprn.m:
compiler/rl_gen.m:
compiler/source_file_map.m:
compiler/unused_args.m:
library/io.m:
library/rtti_implementation.m:
library/type_desc.m:
runtime/mercury_debug.c:
runtime/mercury_deconstruct.c:
runtime/mercury_stack_trace.c:
	Change `:' to `.' as module separator for output.

compiler/mercury_to_mercury.m:
compiler/prog_io_typeclass.m:
	As above.
	Fixed a bug where `.' was not being recognised as a module separator.

doc/reference_manual.texi:
	Report the change.

library/term_io.m:
	Ensure that infix `.' is written without surrounding spaces.

tests/hard_coded/dot_separator.m:
tests/hard_coded/dot_separator.exp:
tests/hard_coded/Mmakefile:
	Test case added.
2003-01-17 05:57:20 +00:00

61 lines
1.4 KiB
Plaintext

E1: C1 1 CALL pred polymorphic_output.main/2-0 (det) polymorphic_output.m:20
mdb> echo on
Command echo enabled.
mdb> register --quiet
mdb> context none
Contexts will not be printed.
mdb> b functor_names
0: + stop interface func polymorphic_output.functor_names/1-0 (det)
mdb> c
E2: C2 2 CALL func polymorphic_output.functor_names/1-0 (det)
mdb> delete 0
0: E stop interface func polymorphic_output.functor_names/1-0 (det)
mdb> p goal
functor_names(two("three", 3, three("four", 4, "one", 1, empty, empty, empty), two("two", 2, empty, empty))) = _
mdb> set format verbose
mdb> set lines 100
mdb> p goal
functor_names
1-two
| 1-"three"
| 2-3
| 3-three
| | 1-"four"
| | 2-4
| | 3-"one"
| | 4-1
| | 5-empty
| | 6-empty
| | 7-empty
| 4-two
| 1-"two"
| 2-2
| 3-empty
| 4-empty
2-_
mdb> set format flat
mdb> browse goal
browser> ^1
browser> p
two("three", 3, three("four", 4, "one", 1, empty, empty, empty), two/4)
browser> ^..^2
error: cannot change to subterm
browser> p
two("three", 3, three("four", 4, "one", 1, empty, empty, empty), two/4)
browser> ^..^3
error: cannot change to subterm
browser> p
two("three", 3, three("four", 4, "one", 1, empty, empty, empty), two/4)
browser> ^..^r
browser> p
'_'
browser> quit
mdb> b std_util__det_arg
mdb: there is no such procedure.
mdb> c
Uncaught Mercury exception:
Software Error: det_arg: argument has wrong type
Last trace event was event #E3.
Last trace event before the unhandled exception was event #E4.