ibType = 0x08,
ibSize = 0x10,
ibSegment = 0x20,
+ ibFile = 0x40,
ibRequired = ibSymName | ibValue | ibAddrSize | ibType,
} InfoBits = ibNone;
Token Tok;
/* Something we know? */
- if (D->Tok != TOK_ADDRSIZE && D->Tok != TOK_NAME &&
- D->Tok != TOK_SEGMENT && D->Tok != TOK_SIZE &&
- D->Tok != TOK_TYPE && D->Tok != TOK_VALUE) {
+ if (D->Tok != TOK_ADDRSIZE && D->Tok != TOK_FILE &&
+ D->Tok != TOK_NAME && D->Tok != TOK_SEGMENT&&
+ D->Tok != TOK_SIZE && D->Tok != TOK_TYPE &&
+ D->Tok != TOK_VALUE) {
/* Try smart error recovery */
if (D->Tok == TOK_IDENT || TokenIsKeyword (D->Tok)) {
InfoBits |= ibAddrSize;
break;
+ case TOK_FILE:
+ if (!IntConstFollows (D)) {
+ goto ErrorExit;
+ }
+ /* ### Drop value for now */
+ InfoBits |= ibFile;
+ NextToken (D);
+ break;
+
case TOK_NAME:
if (!StrConstFollows (D)) {
goto ErrorExit;