Keil Logo

Technical Support

On-Line Manuals

C251 User's Guide

C251 Introduction Compiling Programs Language Extensions Preprocessor Advanced Programming Error Messages Fatal Errors Actions Messages Errors and Warnings Reference Error C1 Warning C2 Error C3 Error C4 Error C5 Error C6 Error C8 Warning C9 Warning C10 Error C11 Warning C13 Warning C14 Error C15 Error C16 Error C17 Error C18 Error C19 Error C20 Error C21 Error C22 Error C23 Error C24 Error C25 Error C26 Error C27 Error C28 Error C29 Error C30 Error C31 Error C32 Error C33 Warning C34 Warning C35 Error C36 Error C37 Warning C38 Error C39 Warning C40 Error C41 Error C42 Error C43 Error C44 Error C45 Warning C46 Warning C47 Error C48 Error C49 Error C50 Error C51 Warning C52 Error C53 Error C54 Error C55 Error C56 Warning C57 Error C58 Error C59 Error C60 Error C61 Error C62 Error C63 Error C64 Error C65 Error C66 Error C67 Error C68 Error C69 Error C70 Error C71 Warning C72 Error C73 Error C74 Error C75 Error C76 Error C77 Error C78 Error C79 Error C80 Error C81 Error C82 Error C83 Error C84 Error C85 Error C86 Error C87 Error C88 Warning C89 Error C90 Warning C91 Error C92 Error C93 Error C94 Error C95 Warning C96 Error C97 Warning C98 Error C99 Error C100 Warning C101 Warning C102 Error C103 Error C104 Warning C105 Error C106 Warning C107 Error C109 Error C110 Warning C111 Warning C112 Warning C113 Warning C114 Warning C115 Error C116 Error C117 Warning C118 Error C119 Error C120 Error C121 Error C122 Error C123 Warning C124 Error C125 Error C126 Error C127 Error C128 Error C129 Error C130 Error C131 Error C132 Error C133 Warning C135 Error C136 Warning C137 Warning C138 Error C139 Warning C140 Error C141 Error C142 Error C143 Error C144 Warning C145 Warning C146 Error C148 Warning C149 Warning C150 Warning C151 Error C152 Warning C153 Error C154 Error C155 Error C156 Error C159 Error C160 Warning C161 Error C167 Error C168 Error C169 Error C170 Error C171 Error C172 Warning C173 Warning C174 Error C175 Error C176 Warning C177 Warning C179 Warning C180 Error C181 Warning C182 Warning C183 Warning C184 Warning C186 Error C187 Warning C188 Warning C189 Error C190 Error C191 Error C192 Warning C193 Warning C194 Warning C195 Error C196 Error C198 Warning C199 Warning C200 Warning C201 Warning C202 Warning C203 Warning C204 Warning C205 Warning C206 Warning C207 Warning C208 Warning C209 Warning C210 Warning C211 Warning C212 Warning C213 Error C214 Error C300 Error C301 Error C302 Error C303 Error C304 Error C305 Error C306 Error C307 Error C308 Error C309 Error C310 Error C311 Error C312 Error C313 Error C314 Error C315 Error C316 Warning C317 Error C318 Error C319 Error C320 Error C321 Warning C322 Warning C323 Warning C324 Error C325 Error C326 Error C327 Error C328 Warning C500 Library Reference Appendix


  • '(' After Control Expected
    Some control parameters need an argument enclosed in parentheses. This message is displayed when the left parenthesis is missing.
  • ')' After Parameter Expected
    This message indicates that the right parenthesis of the enclosed argument is missing.
  • '=' After Parameter Expected
    The specified WARNING control or pragma is syntactically incorrect.
  • Bad Digit In Number
    The numerical argument of a control parameter contains invalid characters. Only decimal digits are acceptable.
  • Can't Create File
    The filename defined on the FILE line cannot be created.
  • Can't Have General Control In Invocation Line
    General controls like EJECT cannot be included on the command line. Place these controls in the source file using the #pragma statement.
  • File Does Not Exist
    The filename defined on the FILE line cannot be found.
  • File Write-Error
    An error occurred while writing to the list, preprint, work, or object file because of insufficient disk space.
  • Identifier Expected
    This message is generated when the DEFINE directive has no arguments. The DEFINE directive requires an identifier as its argument. This is the same convention as in the C language.
  • Invalid Function Model Specifier
    The function model selection is invalid. For example, functions using the PLM model can't be reentrant.
  • Invalid Sub-Control
    The argument given to the ROM control must be one of: SMALL, MEDIUM, COMPACT, LARGE, or HUGE.
  • Line Too Long
    The maximum length of the invocation line must not exceed 500 characters. The same limit applies also if the compiler controls are passed via command file (@cmdfile).
  • Memory Space Exhausted
    The compiler could not allocate enough memory to compile the specified source file. If you receive this message consistently, you should split the source file into two or more smaller files and re-compile. Alternatively, you can add more memory to your PC because the C251 compiler uses a DOS extender to utilize all extended memory available.
  • More Than 400 Errors in Source-File
    During the compilation more than 400 errors were detected. This causes the termination of the compiler.
  • Non-Null Argument Expected
    The selected control parameter needs an argument (for example, a filename or a number) enclosed in parentheses.
  • Numeric Value Out Of Range
    The numerical argument of a control parameter is out of range. For instance, the OPTIMIZE directive allows the numbers 0 through 9. A value of 10 would generate this error message.
  • Parse Stack Overflow / Statements Are Too Nested
    The parse stack has overflowed. This can occur if the source program contains extremely complex expressions or if blocks are nested more than 32 levels deep.
  • Preprocessor: Line Too Long (32K)
    An intermediate expansion exceeded 32K characters in length.
  • Preprocessor: Macros Too Nested
    During macro expansion, the stack consumption of the preprocessor grew too large to continue. This message usually indicates a recursive macro definition, but can also indicate a macro with too many levels of nesting.
  • Respecified Or Conflicting Control
    A command-line parameter was specified twice or conflicting command-line parameters were specified. Conflicting parameters can occur also when pragma statements are used within the source code. For example, this error is reported when a memory model is specified at the command-line and a different memory model is selected with pragma in the source file.
  • Source Must Come From A Disk-File
    The source and include files must exist on either a hard disk or diskette. The console CON:, :CI:, or similar devices are not allowed as input files.
  • Unknown Classname
    The first parameter given to the USERCLASS control must be the name of a predefined class name. The predefined classes are: UCODE, DATA, IDATA, PDATA, XDATA, NEAR, FAR, and HUGE.
  • Unknown Control
    The selected control parameter is not recognized by the compiler.
  Arm logo
Important information

This site uses cookies to store information on your computer. By continuing to use our site, you consent to our cookies.

Change Settings

Privacy Policy Update

Arm’s Privacy Policy has been updated. By continuing to use our site, you consent to Arm’s Privacy Policy. Please review our Privacy Policy to learn more about our collection, use and transfers
of your data.