https://gcc.gnu.org/bugzilla/show_bug.cgi?id=58334
--- Comment #3 from markeggleston at gcc dot gnu.org --- Looks like macro expansion is performed in libcpp/traditional.c by the routine _cpp_scan_out_logical_line called by _cpp_read_logical_line_trad. I'm pretty sure that C style continuations are handled by _cpp_scan_out_logical_line. Fortran continuations are different (further complicated depending on whether it is free form or fixed form) so the continuation is treated as a new logical line and it assumed that that is no open quote thus the macro is expanded inside a string.