I believe the Wshadow warnings occur when you pass a call to one of the macros as an argument to another macro. This causes the same variable name to occur in the inner and outer macro expansion. This occurs regardless of any underscores.
I'm guessing it requires save-temps to expose it because clang is probably smart enough to suppress the warning when macro expansion and compiling are done together. But with save-temps, compiling happens on the file written out by the preprocessor so clang doesn't know about the macro anymore. This can prevented if you don't create intermediate variables inside the macro. http://reviews.llvm.org/D8088 EMAIL PREFERENCES http://reviews.llvm.org/settings/panel/emailpreferences/ _______________________________________________ cfe-commits mailing list [email protected] http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits
