Share via


SHASM Error Messages 500-555

The following table shows the SHASM error messages 500-555.

Message # and Severity Message Text Explanation
500 ERROR Label required here A label was supplied for a directive that requires one. As a result, the directive might be ignored.
501 ERROR Illegal value for .ORG%s An .ORG directive was used to move the location counter backward to a lower address than its current value or more than 1 MB forward. If the intent was to move the location counter forward by more than 1 MB, consider that this would occupy that amount of space in the object file, due to the MS-COFF object file format. Another approach may be best.
503 ERROR Exported symbol "%s" not defined The symbol named in the message was declared in a .EXPORT directive, but was not defined anywhere in the source file.
516 ERROR This %s directive conflicts with a previous %s An operand of a .PRINT directive conflicts with an operand of a previous .PRINT directive, or an operand of an .OUTPUT directive conflicts with an operand of a previous .OUTPUT directive.
517 ERROR The result of this expression is not known yet An expression was supplied whose value is not yet defined in a context where the value must be known on the assembler's first pass through the file.
519 ERROR String is %u characters long; maximum is 255 The string(s) supplied for a .SDATAC or .SDATACB directive must be no more than 255 characters long, because the length is represented in a single byte.
520 ERROR A string or string expression is required %s A numeric constant or a numeric-valued symbol or expression was supplied in a context where a string is required.
521 WARN A literal pool would never be put here anyway A .NOPOOL directive was put in a place where the assembler would not have generated a literal pool anyway.
522 WARN .POOL illegal in delay slot of %s A literal pool wound up after a delayed branch instruction; the assembler automatically supplies a NOP instruction to fill the delay slot.
531 ERROR Invalid section type "%s" An invalid section type was specified The valid section types are CODE, DATA, DUMMY, and BSS, without regard to case.
532 ERROR Section type (%s) must follow section name (%s) The section type cannot be specified before the section name.
533 ERROR Section type (%s) cannot have a value A value cannot be specified for the section type.
534 ERROR Invalid option "%s" A keyword option was supplied for a directive for which it is not valid.
535 ERROR Option "%s" cannot have a value A value was supplied for an option that cannot have a value.
536 ERROR Option "%s" must have a numeric value A value was not supplied, or a non-numeric value was supplied, for an option that requires a numeric value.
537 ERROR MS-COFF supports alignments 1, 2, 4, 8, 16, 32, 64 See the .ALIGN directive.
538 ERROR "%s": MS-COFF doesn't support absolute sections This message only occurs if an attempt is made to use a particular feature provided by other Hitachi assemblers that is not supported in this assembler (due to restrictions of the MS-COFF object format).
539 ERROR "%s": MS-COFF Cannot export non-relocatable .EQU's Only relative values may be exported; absolute symbols cannot be exported.
540 ERROR "%s": MS-COFF Cannot export syms from DUMMY section Symbols defined in a section of type DUMMY cannot be exported.
541 ERROR Illegal alignment %u; must be a power of two An alignment value must be a power of two (2^0 through 2^6).
542 ERROR Block count too large (max %u) -- directive ignored A block count was specified that would result in more than 4 GB of data.
543 ERROR Cannot export "%s"; its value depends on "%s" An .EQU symbol was exported whose value is dependent on an external (.IMPORT) symbol.
544 WARN Code not in function; need a .ENTRY All code should appear between an .ENTRY directive and an .ENDF directive.
545 WARN Missing .PROLOG between .ENTRY/.ENDF for "%s" Each function (.ENTRY and .ENDF pair) should have a .PROLOG directive inside it somewhere.
546 WARN Missing .ENDF; closing function "%s" All code should appear between a .ENTRY directive and a .ENDF directive.
547 ERROR No matching .ENTRY for .ENDF The assembler encountered a .ENDF directive that does not seem to have a matching .ENTRY directive.
548 ERROR No active .ENTRY for .PROLOG The assembler encountered a .PROLOG directive when there is no .ENTRY directive active (that is, not yet terminated by a .ENDF directive).
549 ERROR .PROLOG already specified for function "%s" A .PROLOG directive was specified more than once in a single function (.ENTRY and .ENDF pair).
550 WARN .END encountered; ignoring files starting with %s A .END directive was encountered in a file that was not the last file specified on the command line. The rest of the files specified on the command line will be ignored.
551 ERROR .SECTION ASSOC= must be followed by a section name The ASSOC option of the .SECTION directive must have a value that is a section name (including a COMDAT style section name, such as ".text{_main}").
552 ERROR Section "%s" must be COMDAT to allow option "%s" Either the section being declared with the current .SECTION directive or the target of an ASSOC= option of the current .SECTION directive is not a COMDAT style section.
553 ERROR .PDATA is illegal between .ENTRY and .ENDF It is no longer valid to specify a .PDATA directive after a .ENTRY directive and before a .ENDF directive; the .PDATA directive must now be specified before the .ENTRY to which it should apply.
554 ERROR Prolog is too long (%u, max %u); use .BIGENTRY The .BIGENTRY directive must be used in place of the .ENTRY directive for a function whose prolog is more than 510 bytes long.
555 ERROR Function is too long (%u, max %u); use .BIGENTRY The .BIGENTRY directive must be used in place of the .ENTRY directive for a function that is more than 16,777,214 bytes long.

 Last updated on Thursday, April 08, 2004

© 1992-2003 Microsoft Corporation. All rights reserved.