* c-parse.in (_yylex): Remove CPP_BACKSLASH case.
* cp/spew.c: Similarly.
* cpplex.c (_cpp_lex_token): Backslashes are now CPP_OTHER.
* cppmacro.c (stringify_arg): Similarly.
* cpplib.h (CPP_BACKSLASH): Delete.
From-SVN: r37182
+2000-11-01 Neil Booth <neilb@earthling.net>
+
+ * c-parse.in (_yylex): Remove CPP_BACKSLASH case.
+ * cp/spew.c: Similarly.
+ * cpplex.c (_cpp_lex_token): Backslashes are now CPP_OTHER.
+ * cppmacro.c (stringify_arg): Similarly.
+ * cpplib.h (CPP_BACKSLASH): Delete.
+
2000-10-31 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
* builtins.c (expand_builtin_strstr): New function.
/* These tokens should not survive translation phase 4. */
case CPP_HASH:
case CPP_PASTE:
- case CPP_BACKSLASH:
error ("syntax error before '%s' token", NAME(last_token));
goto retry;
error ("syntax error before '#' token");
goto retry;
- case CPP_BACKSLASH:
- error ("syntax error before '\\' token");
- goto retry;
-
default:
abort ();
}
result->type = CPP_QUERY;
buffer->read_ahead = EOF;
if (c == '\\')
- result->type = CPP_BACKSLASH;
+ goto random_char;
else if (c != '?')
goto do_switch;
}
/* The remainder of the punctuation. Order is not significant. */ \
OP(CPP_SEMICOLON, ";") /* structure */ \
OP(CPP_ELLIPSIS, "...") \
- OP(CPP_BACKSLASH, "\\") \
OP(CPP_PLUS_PLUS, "++") /* increment */ \
OP(CPP_MINUS_MINUS, "--") \
OP(CPP_DEREF, "->") /* accessors */ \
dest = cpp_spell_token (pfile, token, dest);
total_len = dest - start;
- if (token->type == CPP_BACKSLASH)
+ if (token->type == CPP_OTHER && token->val.aux == '\\')
backslash_count++;
else
backslash_count = 0;