| x029 | Multiple base registers not allowed | In 16-bit code, one cannot use both BX and BP in indirect addressing; in 32/64-bit code, ESP/RSP can only appear once in indirect addressing. | |
| x030 | Instruction or register not accepted in current CPU mode | ||
| x031 | Invalid addressing mode with current CPU setting | ||
| x032 | Cannot use TRn-TRn with current CPU setting | The TRx special registers were restricted to 80386 and 80486 cpus. | |
| x033 | Must be index or base register | ||
| x034 | Multiple index registers not allowed | ||
| x035 | |||
| x036 | Scale factor must be 1, 2, 4 or 8 | ||
| x037 | Cannot be used as index register: <register> | Index registers are restricted. In 16-bit mode, only SI and DI can be index registers. In 32-bit mode, all general-purpose registers except ESP can be index registers. | |
| x038 | Base and index register differ in size | ||
| x039 | Expecting comma | ||
| x040 | ORG needs a constant or local offset | ||
| x041 | POP CS is not allowed | ||
| x042 | Only MOV can use special register | The special registers CRx, DRx and TRx can only be moved to/from general purpose registers. | |
| x043 | Cannot use SHORT with CALL | Distance of CALL operands must be NEAR or FAR. | |
| x044 | Only SHORT jump distance is allowed | Some jump instructions accept short distances only (JCXZ, JECXZ, LOOPx). | |
| x045 | Syntax error | ||
| x046 | Prefix must be followed by an instruction | ||
| x047 | Syntax error: Unexpected colon | ||
| x048 | Operands must be the same size: <size op1> - <size op2> | ||
| x049 | Invalid instruction operands | ||
| x050 | Jump distance not possible in current CPU mode | Jcc instructions won't accept type coercions that increase the jump distance (i.e. "jz NEAR PTR label") if current cpu is < 80386. | |
| x051 | Immediate data out of range | ||
| x052 | Can not use short or near modifiers with this instruction | ||
| x053 | Jump out of range by <num> byte(s) | A short distance must be in the range -128 to +127. | |
| x054 | Displacement out of range: <displacement> | ||
| x055 | Initializer value too large | ||
| x056 | Symbol already defined: <symbol> | ||
| x057 | Offset magnitude too large for specified size | ||
| x058 | Magnitude of offset exceeds 16 bit | ||
| x059 | Operand 2 too big | ||
| x060 | Operand 1 too small | ||
| x061 | Line too long | Size of a line ( after concatenation) is restricted to 600. | |
| x062 | Too many tokens in a line | The number of tokens in a line is restricted to 150. | |
| x063 | |||
| x064 | Operand is expected | ||
| x065 | Constant expected | A constant (numeric) value is expected in the current context. Note that a label - more exactly: the offset part of a label's address - is not a constant value, since the final value is calculated by the linker ( or the OS loader ) only. | |
| x066 | Constant operand is expected | The expression evaluator accepts a constant only in the current context. | |
| x067 | .ELSE clause already occured in this .IF block | An .IF block may contain 0 or 1 .ELSE clauses and it must be the last clause before .ENDIF. | |
| x068 | Multiple overrides | ||
| x069 | Segment, group or segment register expected | The operand before the colon operator (:) must be a segment, group or segment register. | |
| x070 | Identifier too long | Identifer names are restricted to 247. This is a hard limit for OMF output format. For other formats, the limit may be extended by adjusting and recompiling the source code. | |
| x071 | Invalid operand size for instruction | ||
| x072 | Not supported: <directive> | Message is displayed if one of the follwing options is specified: OPTION READONLY, OPTION EXPR16, OPTION OLDMACROS. Those are currently not supported. | |
| x073 | Size not specified, assuming: <type> | this is a warning. <type> may be BYTE, WORD or DWORD. The message may occur if an
immediate value is written to an untyped memory reference:
mov [ebx], 1
JWasm makes a guess and displays the warning, while Masm will display an error in such cases. |
|
| x074 | Floating-point initializer ignored | ||
| x075 | Only SHORT and NEAR jump distance is allowed | Conditional jump (Jcc) instruction destination cannot be far. | |
| x076 | Initializer magnitude too large for specified size | ||
| x077 | Segment attribute is defined already: <attribute> | ||
| x078 | Segment definition changed: %s, %s | ||
| x079 | Class name too long | Segment class names are restricted to 255 in size. | |
| x080 | Block nesting error: %s | ||
| x081 | Segment attribute is unknown: %s | ||
| x082 | Must be in segment block | Instructions and directives that generate code or data must be inside a segment block. | |
| x083 | Segment not defined: <segment> | ||
| x084 | Colon is expected | ||
| x085 | Invalid qualified type: %s | ||
| x086 | Qualified type is expected | ||
| x087 | |||
| x088 | Library name is missing | ||
| x089 | Cannot access label through segment registers: <label> | ||
| x090 | Line too long after expansion: <line> | ||
| x091 | Language type must be specified | ||
| x092 | PROC, MACRO or macro loop directive must precede LOCAL | ||
| x093 | Cannot nest procedures | ||
| x094 | VARARG requires C calling convention | ||
| x095 | Multiple .MODEL directives, .MODEL ignored | ||
| x096 | Model is not declared | Without a model, simplified segment directives ( .CODE, .DATA, .CONST, .DATA?, .STACK, .FARDATA and .FARDATA? ) and directives .STARTUP, .EXIT cannot be used. | |
| x097 | Backquote missing: `<identifier> | ||
| x098 | COMMENT delimiter expected | ||
| x099 | END directive required at end of file | ||
| x100 | Nesting level too deep | ||
| x101 | Macro nesting level too deep | ||
| x102 | Symbol not defined : <symbol> | ||
| x103 | |||
| x104 | No filename specified. | ||
| x105 | Out of Memory | This is a fatal error. With the 8086-version of jwasm, JWASMR, you'll see this error if you try to assemble something that contains a few thousand symbols. The 32- or 64-bit versions of jwasm should always have enough memory on modern machines. | |
| x106 | Cannot open file: "<file>" [<error code>] | Error code ENOENT means "file not found". Other error codes are displayed as numbers | |
| x107 | Cannot close file: <file> [<error code>] | ||
| x108 | File write error: <file> [<error code>] | Usually happens if output media is read-only or full. | |
| x109 | Invalid command-line option: <option> | ||
| x110 | Internal error in <source file>(<line>) | This error shouldn't be seen in the release version. It's displayed if the internal assert() function is called, which usually is done when a "virtually impossible" error condition has occurred. | |
| x111 | Expecting closing square bracket | ||
| x112 | Expecting file name | ||
| x113 | Too many errors | Use commandline option -e to set the max. number of errors that are displayed | |
| x114 | forced error <message> | Generic "forced error" message | |
| x115 | forced error: Value not equal to 0: <value> <text> | Error emitted by the .ERRNZ directive. | |
| x116 | forced error: Value equal to 0: <value> <text> | Error emitted by the .ERRE directive. | |
| x117 | forced error: symbol defined: <symbol> | Error emitted by the .ERRDEF directive. | |
| x118 | forced error: symbol not defined: <symbol> | Error emitted by the .ERRNDEF directive. | |
| x119 | forced error: string blank : <string> | Error emitted by the .ERRB directive. | |
| x120 | forced error: string not blank : <string> | Error emitted by the .ERRNB directive. | |
| x121 | forced error: strings not equal : <string> : <string> | Error emitted by the .ERRDIF and .ERRDIFI directives. | |
| x122 | forced error: strings equal : <string> : <string> | Error emitted by the .ERRIDN and .ERRIDNI directives. | |
| x123 | <file>(<line>): Included by | Additional error information if error occured in an include file. | |
| x124 | <file>(<line>)[<macro>]: Macro called from | Additional error information if error occured inside a macro. | |
| x125 | <file>(<line>): iteration <iteration>: Macro called from | Additional error information if error occured inside a loop macro (FOR, FORC, REPEAT, ...). | |
| x126 | <file>(<line>): Main line code | Additional error information if error occured inside an include file or a macro. | |
| x127 | Extending jump | ||
| x128 | Directive ignored: %s | ||
| x129 | number must be a power of 2 | ||
| x130 | Incompatible with segment alignment: %s | ||
| x131 | Segment expected: %s | ||
| x132 | Incompatible CPU mode for 32-bit segment | ||
| x133 | Far call is converted to near call. | ||
| x134 | CPU option %s is not valid for selected CPU. | ||
| x135 | Segment '%s' is in another group already | ||
| x136 | Symbol type conflict: %s | ||
| x137 | Conflicting parameter definition: %s | ||
| x138 | PROC and PROTO calling convention conflict | ||
| x139 | Non-benign %s redefinition: %s | ||
| x140 | Too many bits in RECORD: %s | ||
| x141 | Statement not allowed inside structure definition | ||
| x142 | Unmatched block nesting: %s | ||
| x143 | Symbol redefinition: %s | ||
| x144 | Text item required | ||
| x145 | INVOKE argument type mismatch: argument %u | ||
| x146 | Too few arguments to INVOKE: %s | ||
| x147 | VARARG parameter must be last | ||
| x148 | LABEL parameter must be first | ||
| x149 | Too many arguments in macro call: %s | This is a warning. Macro is invoked with more arguments than expected. | |
| x150 | Missing operator in expression | ||
| x151 | Unexpected literal found in expression: %s | Literals enclosed in <> or {} are items processed by the preprocessor or to initialize "structured" data items. If they're used otherwise, this error will occur. | |
| x152 | Initializer must be a string or single item: %s | ||
| x153 | Too many initial values for structure: %s | ||
| x154 | Too many initial values for array: %s | ||
| x155 | String or text literal too long | ||
| x156 | PROLOGUE must be macro function | The user-defined prologue macro must be a macro function, that is, there must be an EXITM somewhere inside that returns a literal. | |
| x157 | EPILOGUE must be macro procedure: %s | The user-defined epilogue macro must be a macro procedure, that is, there must NOT be an EXITM somewhere inside that returns a literal. | |
| x158 | Reserved word expected | ||
| x159 | INVOKE requires prototype for procedure | ||
| x160 | Invalid type for data declaration: %s | ||
| x161 | Operand must be RECORD type or field | ||
| x162 | Unmatched macro nesting | ||
| x163 | Empty (null) string | ||
| x164 | No segment information to create fixup: %s | ||
| x165 | Register value overwritten by INVOKE | ||
| x166 | Missing quotation mark in string | ||
| x167 | Divide by zero in expression | ||
| x168 | General Failure | ||
| x169 | Cannot have implicit far jump or call to near label | ||
| x170 | Invalid use of register | ||
| x171 | Distance invalid for current segment | ||
| x172 | Initializer magnitude too large: %s | ||
| x173 | Cannot add two relocatable labels | ||
| x174 | Cannot define as public or external: <symbol_name> | Text macros, macros, stack variables, structure fields or segment/groups cannot be public or external. | |
| x175 | Positive value expected | ||
| x176 | FAR not allowed in FLAT model COMM variables | ||
| x177 | Too many arguments to INVOKE | ||
| x178 | Directive must appear inside a macro | ||
| x179 | Invalid type expression | ||
| x180 | Cannot declare scoped code label as PUBLIC: <label> | ||
| x181 | Invalid radix tag | ||
| x182 | Instruction operand must have size | The instruction allows operands with more than just one size, and the wanted size cannot be guessed from the current operands. | |
| x183 | Use of register assumed to ERROR | ||
| x184 | Instructions and initialized data not supported in <seg_type> segments | <seg_type> may be BSS or AT. Such segments don't have data. | |
| x185 | Literal expected after '=' | ||
| x186 | No 4k Page-aligned segments in MS386 OMF | A 4K page-aligned segment isn't compatible with MS OMF format, it's a Phar Lab extension. This warning won't appear in the standard version. | |
| x187 | |||
| x188 | Operand must be relocatable | ||
| x189 | Constant or relocatable label expected | ||
| x190 | [ELSE]IF2/.ERR2 not allowed, single-pass assembler | ||
| x191 | Expression too complex for UNTILCXZ | ||
| x192 | Operands must be in same segment | ||
| x193 | Invalid use of external symbol: <symbol_name> | ||
| x194 | For -coff leading underscore required for start label: <start_label> | ||
| x195 | Invalid command-line value, default is used: %s | ||
| x196 | Unknown fixup type: %u at <segment>.<offset> | ||
| x197 | Unsupported fixup type for <format>: <type> | ||
| x198 | Invalid fixup type for <format> <type> at location <segment>.<offset> | ||
| x199 | Syntax error in control-flow directive | ||
| x200 | Invalid .model parameter for flat model | ||
| x201 | Output format doesn't support externals: <symbol> | In formats BIN and MZ all references must be local to the module. | |
| x202 | Invalid start label for -bin | ||
| x203 | No start label defined | Warning, format MZ only: MZ-binaries usually have a start label. In some cases (i.e. overlays) a missing start label may be ok. | |
| x204 | No stack defined | Warning, format MZ only: MZ-binaries usually have a stack. In some cases (i.e. overlays) a missing stack may be ok. | |
| x205 | Invalid alignment - value must be 2^n (n=4..15) | ||
| x206 | Index value past end of string: <value> | The index argument of SUBSTR or INSTR is beyond the string argument length | |
| x207 | Count value too large | ||
| x208 | Count must be positive or zero | ||
| x209 | Syntax error: <item> | The parser found an item that has no meaning in the current context | |
| x210 | |||
| x211 | |||
| x212 | Must use floating-point initializer | ||
| x213 | ORG directive not allowed in unions | ||
| x214 | Struct alignment must be 1, 2, 4, 8, 16 or 32 | ||
| x215 | Structure cannot be instanced | A structure that has size 0 or that contains an ORG directive cannot be instanced. | |
| x216 | Missing angle bracket or brace in literal | ||
| x217 | Nondigit in number: <number> | ||
| x218 | 16bit fixup for 32bit label: %s | ||
| x219 | Too many macro placeholders | The number of parameters and locals for a macro must not exceed 256 | |
| x220 | Missing macro argument: %s, parameter %u | ||
| x221 | Doesn't work with 32-bit segments: <directive> | Directives .STARTUP and .EXIT work for 16-bit only. | |
| x222 | Segment exceeds 64k limit: %s | In MZ format, 16-bit segments are restricted to 64k. | |
| x223 | Not supported with OMF format: %s | ||
| x224 | Not supported with current output format: %s | The directive or feature isn't supported by all formats. For example, segment-related directives or attributes won't make much sense for flat formats like COFF or ELF. | |
| x225 | Unknown default prologue argument: %s | ||
| x226 | LOADDS ignored in flat model | ||
| x227 | Missing right parenthesis in expression | ||
| x228 | Invalid operand for <operator>: <operand> | ||
| x229 | Structure improperly initialized: %s | ||
| x230 | Expected: %s | ||
| x231 | Invalid data initializer | ||
| x232 | Expected data label | Some operators ( LENGTH, SIZE ) work with data labels only. | |
| x233 | Expression must be a code address | ||
| x234 | -n Option needs a valid name parameter | ||
| x235 | Constant value too large: <value> | the value of the constant doesn't fit in 64 or - if it is a number to be assigned to a symbolic constant - 32 bits. | |
| x236 | Text macro was used before definition | this is a warning only. However, using text macros before they have been defined will force JWasm to do a full second pass, which increases assembly time. | |
| x237 | Offset size incompatible with current segment | ||
| x238 | Instruction form requires 80386 | ||
| x239 | Group/Segment offset size conflict: <group offset> - <segment offset> | Segments within a group must all have the same offset size. | |
| x240 | Assembly passes reached: <passes> | Although this is a warning only it usually indicates a severe problem. The assembler is very probably unable to calculate "final" values of all labels and has to be terminated by pressing Ctrl-C. | |
| x241 | Filename parameter must be enclosed in <> or quotes | The INCBIN directive requires delimiters for its filename. | |
| x242 | Start address on END directive ignored with .STARTUP | ||
| x243 | Invalid symbol type in expression: <symbol> | The expression evaluator has encountered a symbol that is meaningless in expressions, for example a (text) macro. | |
| x244 | Missing right parenthesis | ||
| x245 | Directive must be in control block | .ELSE, .ELSEIF and .ENDIF are valid inside .IF-blocks, .BREAK, .CONTINUE may occur inside .WHILE- or .REPEAT-blocks, .ENDW needs a preceding .WHILE and .UNTIL needs a preceding .REPEAT. | |
| x246 | Expected: memory model | the .MODEL directive needs at least one parameter, the memory model. | |
| x247 | Type is wrong size for register | ||
| x248 | IF[n]DEF expects a plain symbol as argument | this is a warning. Masm accepts any expression as argument for directives [ELSE]IF[N]DEF, but the result probably isn't always what has been expected. | |
| x249 | Jump destination must specify a label | ||
| x250 | Ignored: <attribute> | An attribute or parameter of a directive was found, but not handled. See Known Bugs and missing Features for details about what features aren't implemented yet. | |
| x251 | Missing argument for cmdline option | ||
| x252 | Invalid coprocessor register | ||
| x253 | Registers AH-DH may not be used with SPL-DIL or R8-R15 | 64-bit only. | |
| x254 | .ENDPROLOG found before EH directives | 64-bit only. | |
| x255 | Missing FRAME in PROC, no unwind code will be generated | 64-bit only. | |
| x256 | Bad alignment for offset in unwind code | 64-bit only. | |
| x257 | Nonzero value expected | ||
| x258 | Size of prolog too big, must be < 256 bytes | 64-bit only. | |
| x259 | Missing .ENDPROLOG: %s | 64-bit only. | |
| x260 | .SAFESEH argument must be a PROC | ||
| x261 | Directive ignored without -%s switch | ||
| x262 | ELF GNU extensions (8/16-bit relocations) used | This is a warning only. The extensions are not "official", but the GNU linker LD will understand them. | |
| x263 | Syntax error in expression | ||
| x264 | Macro label not defined: %s | The target of a GOTO must be within the very same macro. | |
| x265 | Procedure argument or local not referenced: %s | This warning is displayed only if at least -W3 is specified. | |
| x266 | Group definition too large, truncated: <group_name> | The size of the OMF record that is to define a group would exceed 4 kB. However, to see this error you'll have to define a group that is to comprise more than 1000 segments, | |
| x267 | COMM variable exceeds 64K: <variable> | in 16-bit, the size of a COMM variable is restricted to 64 kB. | |
| x268 | Must be public or external: %s | Names that are to be known by the linker must be public or external. | |
| x269 | parameter/local name is reserved word: %s | This is a warning. The names of macro parameters or locals have highest priority and hence the reserved word will become inaccessible within the macro. | |
| x270 | real or BCD number not allowed | ||
| x271 | structure field expected | ||
| x272 | Constant value too large: <value> | the value of the constant doesn't fit in 64 or - if it is a number to be assigned to a symbolic constant - 32 bits. | |
| x273 | ELSE clause already occured in this IF block | An IF block may contain 0 or 1 ELSE clauses and it must be the last clause before ENDIF. | |
| x274 | Illegal use of segment register | ||
| x275 | Group exceeds 64K: <group> | MZ format only: a group that contains 16-bit segments cannot be larger than 64 kB, because the group must fit into a physical segment. | |
| x276 | EXPORT must be FAR: <symbol> | A 16-bit procedure that is to be exported must be declared with the FAR distance attribute. |