(macroexpand): Before concatenated empty rest arg,
do copy constant chars, but delete last run of nonwhitespace chars.
(rescan): Handle Newline-Hyphen in expand_to_temp_buffer
as well as when scanning a macro body.
(main): If we are creating a new dependency file with -MD
or -MMD, use "w" fopen mode instead of "a".
(rescan): Prevent token pasting before macro call.
(macroexpand): Prevent token pasting around an arg unless it's raw.
(main): Implement -iwithprefix.
(check_preconditions, do_error, do_warning, do_xifdef):
Don't use signed chars to index into arrays; they might be negative.
From-SVN: r3199