- print.lineno++;
-}
-
-static void
-do_pragma_implementation (pfile)
- cpp_reader *pfile;
-{
- /* Be quiet about `#pragma implementation' for a file only if it hasn't
- been included yet. */
- cpp_token token;
-
- cpp_start_lookahead (pfile);
- cpp_get_token (pfile, &token);
- cpp_stop_lookahead (pfile, 0);
-
- /* If it's not a string, pass it through and let the front end complain. */
- if (token.type == CPP_STRING)
- {
- /* Make a NUL-terminated copy of the string. */
- char *filename = alloca (token.val.str.len + 1);
- memcpy (filename, token.val.str.text, token.val.str.len);
- filename[token.val.str.len] = '\0';
- if (cpp_included (pfile, filename))
- cpp_warning (pfile,
- "#pragma GCC implementation for \"%s\" appears after file is included",
- filename);
- }
- else if (token.type != CPP_EOF)
- {
- cpp_error (pfile, "malformed #pragma GCC implementation");
- return;
- }
-
- /* Output? This is nasty, but we don't have [GCC] implementation in
- the buffer. */
- if (pfile->cb.def_pragma)
- {
- maybe_print_line (cpp_get_line (pfile)->output_line);
- fputs ("#pragma GCC implementation ", print.outf);
- cpp_output_line (pfile, print.outf);
- print.lineno++;
- }