On 9/17/2020 7:08 PM, Gavin Lambert via Boost wrote:
On 18/09/2020 10:10, Joaquín M López Muñoz wrote:
I did discover that if gcc or clang is compiled at the C++03 level with -pedantic there will be a ton of warnings, and if with -pedantic-errros there will be a ton of errors for those warnings.
Don’t warning disabling pragmas *around preprocessor definitions* solve the issue?
Depends on the specific warnings. Often the disables are needed at the call site instead or in addition.
I've also seen some warnings raised by template code that are essentially impossible to pragma away (without disabling for the entire translation unit) as they get attributed to the instantiation "line" outside of all user code. Those are especially annoying.
As you presciently guessed it is impossible to change a "-Wpedantic" to either a "warning" if -pedantic-errors is specified or to an "ignore" if either -pedantic or -pedantic-errors is specified. I tried: #pragma GCC diagnostic ignore "-Wpedantic" or #pragma GCC diagnostic warning "-Wpedantic" and neither does anything.