Why does nvcc preprocess with gcc and compiles with a different compiler?

I think my answer is over here: nvcc preprocessing - #8 by njuffa