dbx bug

Mark J. Norton mjn at teddy.UUCP
Thu Dec 20 00:31:43 AEST 1984


*** REPLACE THIS LINE WITH YOUR LINE EATER ***

The articles which follows was posted to a local newsgroup and is being
forwarded to The-Wizards-That-Be for their enlightenment.  If there is
a known fix, or a later version of dbx which corrects this problem, i'd
like to hear about it (via e-mail).

-----------------------------------------------------------------------

I have discovered a bug in dbx which might cause someone a lot of trouble.
Rather than having you discover this on your own, I will relate it.

The problem is with the NEXT command.  Normally this command is used to
trap on the line following the current line.  This skips over all subroutine
calls, rather than following them down (which STEP would do).

If NEXT is used to walk over a line containing a recursive call to the routine
you are currently in, or if the routine called calls the one you are currently
in, NEXT will stop at the next line, but one level down in the recursion.

Its easy to see why this could happen, dbx only cares that it traps on the 
next line, and doesn't check for a recursive call.

Work Around:
	Rather than using NEXT to walk over a program line, use STOP AT <number>
	where number is the line number of the following statement.

		Mark J. Norton
		decvax!genrad!teddy!mjn



More information about the Comp.unix.wizards mailing list