https://issues.dlang.org/show_bug.cgi?id=16963
Walter Bright <[email protected]> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |[email protected] --- Comment #1 from Walter Bright <[email protected]> --- The assembler actually looks for labels first, as this code from iasm.asm_primary_exp() shows: Dsymbol s; if (asmstate.sc.func.labtab) s = asmstate.sc.func.labtab.lookup(asmstate.tok.ident); if (!s) s = asmstate.sc.search(Loc.initial, asmstate.tok.ident, null); if (!s) { // Assume it is a label, and define that label s = asmstate.sc.func.searchLabel(asmstate.tok.ident); } The trouble here is that the label sse is forward referenced, and undefined at the time the asm statement is semantically checked. --
