https://issues.dlang.org/show_bug.cgi?id=13307

--- Comment #2 from Orvid King <[email protected]> ---
A small snippet from the ASM parsing in Mono-D:

case "near":
case "far":
case "byte":
case "short":
case "int":
case "word":
case "dword":
case "qword":
case "float":
case "double":
case "real":
    // TODO: Put this information in the AST
    Step();
    if (laKind == Identifier && la.Value == "ptr")
            Step();
    else if (t.Value != "short")
        SynErr(Identifier, "Expected ptr!");
    else if (!(Parent is AsmStatement.InstructionStatement) ||
!((AsmStatement.InstructionStatement)Parent).IsJmpFamily)
        SynErr(Identifier, "A short reference is only valid for the jmp family
of instructions!");
    return ParseAsmExpression(Scope, Parent);

--

Reply via email to