CodeView 2.x Cannot Trace into Single-Line Functions

ID Number: Q47624

2.20 2.30 23.5 | 2.20 2.30 2.35

MS-DOS | OS/2

Summary:

CodeView versions 2.2, 2.3, and 2.35 do not trace into a function that

is contained in a single line of code. For example, if the following

program is compiled and loaded into CodeView, an attempt to trace into

the function funct() results in the trace stepping over the function,

rather than tracing into it. CodeView version 3.0 behaves as expected.

Sample Code

-----------

/* Compile options needed: none

*/

int funct(void);

int x;

void main(void)

{

x = funct()

}

/* Single-line function. It does nothing more than return a value. */

int funct(void){return 1;}

If the above function is modified so that it performs exactly the same

task but is located on multiple lines, as follows, then CodeView

handles it correctly:

int funct(void)

{

return 1;

}

Additional reference words: 2.20 2.30 2.35 3.00