mirror of
https://github.com/cc65/cc65.git
synced 2025-01-16 13:31:16 +00:00
Allow to leave of the end address of a range if it is identical to the start
address. Currently unused. git-svn-id: svn://svn.cc65.org/cc65/trunk@5059 b7a2c559-68d2-44c3-8de9-860c34a00d81
This commit is contained in:
parent
51ccf2d576
commit
244ca4daf7
@ -1733,14 +1733,6 @@ static int ConsumeEqual (InputData* D)
|
||||
|
||||
|
||||
|
||||
static int ConsumeMinus (InputData* D)
|
||||
/* Consume a minus sign */
|
||||
{
|
||||
return Consume (D, TOK_MINUS, "'-'");
|
||||
}
|
||||
|
||||
|
||||
|
||||
static void ConsumeEOL (InputData* D)
|
||||
/* Consume an end-of-line token, if we aren't at end-of-file */
|
||||
{
|
||||
@ -1959,14 +1951,18 @@ static void ParseLine (InputData* D)
|
||||
}
|
||||
Start = (cc65_addr) D->IVal;
|
||||
NextToken (D);
|
||||
if (!ConsumeMinus (D)) {
|
||||
goto ErrorExit;
|
||||
if (D->Tok == TOK_MINUS) {
|
||||
/* End of range follows */
|
||||
NextToken (D);
|
||||
if (!IntConstFollows (D)) {
|
||||
goto ErrorExit;
|
||||
}
|
||||
End = (cc65_addr) D->IVal;
|
||||
NextToken (D);
|
||||
} else {
|
||||
/* Start and end are identical */
|
||||
End = Start;
|
||||
}
|
||||
if (!IntConstFollows (D)) {
|
||||
goto ErrorExit;
|
||||
}
|
||||
End = (cc65_addr) D->IVal;
|
||||
NextToken (D);
|
||||
InfoBits |= ibRange;
|
||||
break;
|
||||
|
||||
@ -2237,7 +2233,7 @@ static void ParseSym (InputData* D)
|
||||
|
||||
/* Something we know? */
|
||||
if (D->Tok != TOK_ADDRSIZE && D->Tok != TOK_NAME &&
|
||||
D->Tok != TOK_SEGMENT && D->Tok != TOK_SIZE &&
|
||||
D->Tok != TOK_SEGMENT && D->Tok != TOK_SIZE &&
|
||||
D->Tok != TOK_TYPE && D->Tok != TOK_VALUE) {
|
||||
|
||||
/* Try smart error recovery */
|
||||
|
Loading…
x
Reference in New Issue
Block a user