CodeView Does Not Detect M61xx Math Errors

ID Number: Q72249

2.x 3.00 3.10 3.11 3.14 | 2.x 3.00 3.10 3.11 3.12 3.50

MS-DOS | OS/2

Summary:

When trying to determine which statement in a program is causing a

math error of the form "M61xx", the CodeView debugger will not

explicitly detect the source of the problem. CodeView is not designed

to detect that an error handling routine built into a program is being

called, since CodeView does not differentiate that routine from any

other function.

More Information:

Bringing the program into the CodeView debugger and running it may

generate the error, but CodeView will not break when the error occurs.

Instead, CodeView displays the message "Program terminated normally"

or "Thread terminated normally" and switches to assembly mode

(displaying the C run-time termination code).

Because the error-handling routine calls the operating system to

terminate the process, CodeView generates the same message as when the

program goes through a normal termination; CodeView leaves you in

assembly mode in the termination code just as it does when you reach

the normal end of a program.

The best way to use CodeView to find math errors is to set breakpoints

at strategic locations before running the program, or by animating the

program so that you are shown each line as it is executed. You can

then determine the location that is causing the M61xx error routine to

be called.

Unlike CodeView, the QuickC integrated debugger will place your cursor

on the line that caused the error if you select Animate from the Run

menu.

Additional reference words: 2.2 2.20 2.30 2.30 2.35 3.0 3.00 3.1 3.10

3.11 3.12 3.14 3.5 3.50 M6101 M6102 M6103 M6104 M6105 M6106 M6107

M6108 M6110 M6111 M6112