PRB: Error Messages May Say "short" Instead of "enum"

ID Number: Q66778

5.10 6.00 6.00a 6.00ax 7.00 | 5.10 6.00 6.00a

MS-DOS | OS/2

buglist5.10 buglist6.00 buglist6.00a buglist6.00ax buglist7.00

Summary:

SYMPTOMS

In Microsoft C versions 5.0, 5.1, 6.0, 6.0a, 6.0ax, and C/C++

version 7.0, since an enumerated type is handled internally the

same as a short type, certain compiler error messages may refer to

a "short" even though the error involves an "enum". The following

sample code contains an error to demonstrate this situation:

enum {A, B, C} /* missing ';' at end */

double y;

When the above code is compiled with the Microsoft C or QuickC

compiler, the following error message is generated:

error C2139: type following 'short' is illegal

In this particular case, the error should say:

type following 'enum' is illegal"

However, the compiler does not keep track of whether or not an item

was specified as an enum.

STATUS

Microsoft has confirmed this to be a problem in C versions 5.1,

6.0, 6.0a, 6.0ax, and 7.0 and QuickC versions 2.5 and 2.51

(buglist2.50 and buglist2.51). We are researching this problem and

will post new information here as it becomes available.

Additional reference words: 5.00 5.10 6.00 6.00a 6.00ax 7.00 s_quickc 2.50