How to remove lines added by default by the C preprocessor to the top of the output?

c-preprocessor

Solution

If you're using the gcc preprocessor:

   -P  Inhibit generation of linemarkers in the output from the
       preprocessor.  This might be useful when running the preprocessor
       on something that is not C code, and will be sent to a program
       which might be confused by the linemarkers.

from gcc cpp man page

Problem

I'm trying to use the C preprocessor on non-C code, and it works fine except for creating lines like this at the top: ``` # 1 "test.java" # 1 "<built-in>" # 1 "<command-line>" # 1 "test.java" ``` The problem is that these lines aren't valid in Java. Is there any way to get the preprocessor to not write this stuff? I'd prefer not to have to run this through something else to just remove the first 4 lines every time.

Original source

Related problems