Label field

The label field is the first field in a source line. A label is a symbol followed by a colon. Labels can include letters (A-Z or a-z), underscores, periods and numbers. The first character must not be a number.

Note: For compatibility with other Assembler vendors, an identifier starting on column 1 is considered to be a label, even when it is not terminated by a colon. When the -MCUasm: Switch compatibility with MCUasm ON assembler option is activated, you MUST terminate labels with a colon. The Assembler produces an error message when a label is not followed by a colon.

Labels are required on assembler directives that define the value of a symbol (SET or EQU). For these directives, labels are assigned the value corresponding to the expression in the operand field.

Labels specified in front of another directive, instruction or comment are assigned the value of the location counter in the current section.

Note: When the Macro Assembler expands a macro it generates internal symbols starting with an underscore `_'. Therefore, to avoid potential conflicts, user defined symbols should not begin with an underscore
Note: For the Macro Assembler, a .B or .W at the end of a label has a specific meaning. Therefore, to avoid potential conflicts, user- defined symbols should not end with .B or .W.