Giving a file the extension .cu causes the preprocessing output (-E) of clang to be duplicated:
.cu
-E
$ cat main.cu int main(){} $ clang