Files
mercury/tests/debugger/mdbrc_test.mdbrc
Zoltan Somogyi a1f69d35fc Fix Mantis bug #45, which was that mdb effectively ignored some commands
Estimated hours taken: 1.5
Branches: main

Fix Mantis bug #45, which was that mdb effectively ignored some commands
in .mdbrc files.

trace/mercury_trace_internal.[ch]:
trace/mercury_trace_command_queue.[ch]:
	Move the code for manipulating the command queue from
	mercury_trace_internal.c to a new module. This improves the level of
	abstraction. The ultimate cause of the bug was a lack of abstraction.

	The old code put commands from startup files in the command queue
	in a mixed order: respecting order within each startup file, but
	reversing order among startup files. The cause of the bug was
	that the commands from .mdbrc files were put into the queue
	*after* the commands from the system's standard startup file in time,
	but *before* them in order, so the commands in the standard startup
	file could override commands from .mdbrc files.

	The fix is to consistently put commands in order: from the standard
	system startup file, from .mdbrc, and from the environment.

	Give better names to some functions.

	Provide a mechanism for debugging the command queue mechanism.

trace/mercury_trace_cmd_backward.c:
	Use those better names.

trace/Mmakefile:
	Add the new module.

tests/debugger/mdbrc_test.{m,inp,exp,mdbrc}:
	Add a regression test for this bug, a minimally modified version
	of the bug demo program in Mantis.

tests/debugger/Mmakefile:
	Enable the new test case, which specifies its own .mdbrc file.

tests/Mmake.common:
	Provide a way for a test case to not use the .mdbrc file used by all
	the other debugger tests, so it could specify its own.
2008-02-20 02:59:38 +00:00

4 lines
71 B
Plaintext

format_param depth 10000
format_param lines 10000
format_param size 80