Microsoft KB Archive/29441

INF: QuickC 1.01 README.DOC: New Error and Warning Messages PSS ID Number: Q29441 Article last modified on 12-09-1992 PSS database name: S_QuickC

1.01

MS-DOS

Summary:

The following information is from “Part 12: Error Messages” of the QuickC Version 1.01 README.DOC file.

More Information:

The following new error and warning messages have been added (where the number in parentheses after a warning message indicates the minimum warning level that must be set for the warning to appear):

C1031 compiler limit: function calls too deeply nested

The program exceeded the compiler limit on nested function calls.

C1062 error writing to preprocessor output file

You compiled with the /P, /E, or /EP option to produce a preprocessor output file, but not enough room was available to hold the file.

C2176 static far data not supported

You cannot declare data items with the far attribute in the QuickC environment. Declare a pointer to the data item instead.

C2180 controlling expression has type ‘void’

The controlling expression in an if, while, for, or do statement was a function with void return type.

C2182 ‘ ’ : ‘void’ on variable

The given variable was declared with the void keyword. The void keyword can be used only in function declarations.

C4088 ‘ ’ : pointer mismatch : parameter parameter list

The argument in the given function call has a different level of indirection, as in the following example:

int (*sample (void *)) (void *); main {       sample(10) (10); /* pointer mismatch: parameter 1, parameter list 2 */ } C4089 ‘function’ : different types : parameter int parameter list int

The pointer argument in the given function call did not have the same type as the pointer argument in the function prototype, as in the following example:

int (*myfunc(int, int))(char *); main {           int i;

(*myfunc(10, 20))(i);/* pointer mismatch : parameter 1, parameter list 2. */   } C4098 void function returning a value

A function declared with void return type also returned a value, as in the following example:

void func {           .            .            .            return(10); } C4100 ‘ ’ : unreferenced formal parameter

The given formal parameter was never referenced in the body of the function for which it was declared. (3)

C4101 ‘ ’ : unreferenced local variable

The given local variable was never used. (3)

C4102 ‘ ’ : unreferenced label

The given label was defined but never referenced. (3)

C4103 ‘ ’ : function definition used as prototype

A function definition appeared before its prototype in the program. (3)

C4105 : ‘interrupt’ must be function/pointer to function

The interrupt attribute was used to declare something other than a function or function pointer.

Copyright Microsoft Corporation 1992.