PRB: Compiler Lacks Warnings for Options Incompatible with /u

ID Number: Q68385

6.00 6.00a 6.00ax | 6.00 6.00a

MS-DOS | OS/2

buglist6.00 buglist6.00a buglist6.00ax

Summary:

SYMPTOMS

In Microsoft C versions 6.0, 6.0a, and 6.0ax, the /u compiler

option turns off the definition of all predefined identifiers.

Therefore, other compiler options that implicitly define

identifiers are incompatible with /u. Nevertheless, no warnings or

errors are generated if an option incompatible with /u is

specified.

For example, the /MT option implicitly defines _MT, which is

necessary for multithreaded programming. If both /u and /MT are

specified, the /MT option is effectively ignored due to /u

undefining _MT.

STATUS

This is expected behavior. the /U (undefine) option turns off the

definition of any identifier that is already defined for the

preprocessor. The /u option turns off every defined identifier.

Both the /U and /u options apply to predefined names and user

defined ones.

Additional reference words: 6.00 6.00a 6.00ax