Verbosity and clarity of error messages is not the strongest side of fasm, but in most cases these can be explained. In this case all symbols starting with a digit are reserved. For numbers. As long as the symbol is not recognized as a number (as if it ended with b, d, o, or h) by the assembler it then is interpreted as a name of an identifier, which it can't be as well, as it's reserved for numbers. The error message isn't quite correct, because every reserved word as well as numbers are symbols by definition.
code cannot be generated
The error message is correct. The statement defines a constant (it's not a variable as long as there's no redefinition), which is forward referenced by the same statement. Effectively this is an equation that cannot be solved, because no constant satisfies the equation.
_________________ Faith is a superposition of knowledge and fallacy
Joined: 16 Jun 2003
Location: Kraków, Poland
The error message isn't quite correct, because every reserved word as well as numbers are symbols by definition.
Many of the error messages used in the first versions of fasm were "borrowed" from Turbo Assembler, including this one. This reflects that TASM used the definition of symbol that does not encompass the reserved words. Fasm's terminology did evolve over time, but the error messages stayed unchanged since the beginning.
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum You cannot attach files in this forum You can download files in this forum