Number | Message |
HI1003 | error count exceeds n; stopping compilation |
Errors in the program were too numerous or too severe to allow recovery, and the compiler must terminate. | |
HI1004 | unexpected end-of-file found |
The default disk drive did not contain sufficient space for the compiler to create temporary files. The space required is approximately two times the size of the source file. | |
This message also appears when the #if directive occurs without a corresponding closing #endif directive while the #if test directs the compiler to skip the section. | |
HI1007 | unrecognized flag string in option |
The string in the command-line option was not a valid option. | |
HI1008 | no input file specified |
The compiler was not given a file to compile. | |
HI1009 | compiler limit : macros nested too deeply |
Too many macros were being expanded at the same time. | |
This error occurs when a macro definition contains macros to be expanded and those macros contain other macros. | |
Try to split the nested macros into simpler macros. | |
HI1011 | compiler limit : identifier : macro definition too big |
The macro definition was longer than allowed. | |
Split the definition into shorter definitions. | |
HI1012 | unmatched parenthesis nesting - missing character |
The parentheses in a preprocessor directive were not matched. The missing character is either a left, (, or right, ), parenthesis. | |
HI1016 | #if[n]def expected an identifier |
An identifier must be specified with the #ifdef and #ifndef directives. | |
HI1017 | invalid integer constant expression |
The expression in an #if directive either did not exist or did not evaluate to a constant. | |
HI1018 | unexpected '#elif' |
The #elif directive is legal only when it appears within an #if, #ifdef, or #ifndef construct. | |
HI1019 | unexpected '#else' |
The #else directive is legal only when it appears within an #if, #ifdef, or #ifndef construct. | |
HI1020 | unexpected '#endif' |
An #endif directive appeared without a matching #if, #ifdef, or #ifndef directive. | |
HI1021 | invalid preprocessor command string |
The characters following the number sign (#) did not form a valid preprocessor directive. | |
HI1022 | expected '#endif' |
An #if, #ifdef, or #ifndef directive was not terminated with an #endif directive. | |
HI1023 | cannot open source file filename |
The given file either did not exist, could not be opened, or was not found. | |
Make sure the environment settings are valid and that the correct path name for the file is specified. | |
If this error appears without an error message, the compiler has run out of file handles. If in DOS, increase the number of file handles by changing the FILES setting CONFIG.SYS to allow a larger number of open files. FILES=20 is the recommended setting. | |
HI1024 | cannot open include file filename |
The specified file in an #include preprocessor directive could not be found. | |
Make sure settings for the INCLUDE and TMP environment variables are valid and that the correct path name for the file is specified. | |
If this error appears without an error message, the compiler has run out of file handles. If in DOS, increase the number of file handles by changing the FILES setting in CONFIG.SYS to allow a larger number of open files. FILES=20 is the recommended setting. | |
HI1026 | parser stack overflow, please simplify your program |
The program cannot be processed because the space required to parse the program causes a stack overflow in the compiler. | |
Simplify the program by decreasing the complexity of expressions. Decrease the level of nesting in for and switch statements by putting some of the more deeply nested statements in separate functions. Break up very long expressions involving ',' operators or function calls. | |
HI1033 | cannot open assembly language output file filename |
There are several possible causes for this error:
The given name is not valid. The file cannot be opened for lack of space. A read-only file with the given name already exists. |
|
HI1036 | cannot open source listing file filename |
There are several possible causes for this error:
The given name is not valid. The file cannot be opened for lack of space. A read-only file with the given name already exists. |
|
HI1039 | unrecoverable heap overflow in Pass 3 |
The post-optimizer compiler pass overflowed the heap and could not continue. | |
One of the following may be a solution:
Break up the function containing the line that caused the error. Recompile with the /Od option, removing optimization. In OS/2, recompile using the /B3 C3L option to invoke the large-model version of the third pass of the compiler. In DOS, remove other programs or drivers running in the system which could be consuming significant amounts of memory. In DOS, if using NMAKE, compile without using NMAKE. |
|
HI1040 | unexpected end-of-file in source file filename |
The compiler detected an unexpected end-of-file condition while creating a source listing or mingled source/object listing. | |
This occurs under OS/2 if the source file is deleted or overwritten while it is being read. | |
HI1047 | limit of option exceeded at string |
The given option was specified too many times. The given string is the argument to the option that caused the error. | |
If the CL or H2INC environment variables have been set, options in these variables are read before options specified on the command line. The CL environment variable is read before the H2INC environment variable. | |
HI1048 | unknown option character in option |
The given character was not a valid letter for the option. | |
For example, the following line
#pragma optimize("q", on) |
|
causes the following error
unknown option 'q' in '#pragma optimize' |
|
HI1049 | invalid numerical argument string |
A numerical argument was expected instead of the given string. | |
HI1050 | segment : code segment too large |
A code segment grew to within 36 bytes of 64K during compilation. | |
A 36-byte pad is used because of a bug in some 80286 chips that can cause programs to exhibit strange behavior when, among other conditions, the size of a code segment is within 36 bytes of 64K. | |
HI1052 | compiler limit : #if/#ifdef nested too deeply |
The program exceeded the maximum of 32 nesting levels for #if and #ifdef directives. | |
HI1053 | compiler limit : struct/union nested too deeply |
A structure or union definition was nested to more than 15 levels. | |
Break the structure or union into two parts by defining one or more of the nested structures using typedef. | |
HI1090 | segment data allocation exceeds 64K |
The size of the named segment exceeds 64K. | |
This error occurs with _based allocation. | |
HI1800 | option : unrecognized option |
A command-line option was specified that was not understood by H2INC. |