C 6.00 /G1 Option Puts .286 Specifier in Assembly Listings

ID Number: Q65331

6.00 | 6.00

MS-DOS | OS/2

buglist6.00 fixlist6.00a

Summary:

When using the Microsoft C Compiler version 6.00 to generate an

assembly listing with the /Fa or /Fc option, .286 and .287 processor

specifiers are incorrectly inserted when the /G1 option is specified.

/G1 should produce .8087 processor code.

This can be seen be compiling the sample code below and viewing the

.COD file generated by /Fc (which is also shown below). As a

workaround, /G0 may be used instead of /G1.

Microsoft has confirmed this to be a problem in C version 6.00. This

problem was corrected in C version 6.00a.

Sample Code

-----------

/* Compile options needed: /G1 /Fc

*/

void main (void)

{

int a;

a = 25;

}

.COD File Generated

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

; Static Name Aliases

;

TITLE test.c

.286p ; Should be blank line

.287 ; Should be .8087

INCLUDELIB SLIBCE

_TEXT SEGMENT WORD PUBLIC 'CODE'

_TEXT ENDS

_DATA SEGMENT WORD PUBLIC 'DATA'

_DATA ENDS