Hello, I was wondering why in ccache we are expanding @file https://github.com/venkrao/ccache-1/blob/59e5244dd79b0fc7df682c8f3c05b778a3d00f91/ccache.c#L1951 Essentially, the arguments that are to be listed in @file are those that affect the preprocessor.
Is it safe to just not expand the arguments onto the commandline via ccache function above, but, just pass on the @file argument as-is to the compiler command-line? The reason I'm asking this is, Intel compiler, apparently accepts shell comments(# comments) inside the .cfg file, as well as new line characters. And as far as my test results reveal, those fail ccache, as we do not care filtering our the shell comments inside ccache, instead, read the entire file content and put it into the command-line, and this results in "Preprocessor error" So, is it safe to just pass on the @file as-is to compiler, without letting ccache read and expand the arguments? I can think of a bad case, where the user puts in an absolute path -I path inside the @file, and that results in cache miss in direct mode.. I'm unable to decide how to go about supporting Intel compiler, especially with the @file. Intel compiler apparently even accepts special char like hello.h$ or regex based input args inside the @file which might make ccache handle them more difficult. Regards, Venkat. _______________________________________________ ccache mailing list ccache@lists.samba.org https://lists.samba.org/mailman/listinfo/ccache