Message280150
GCC supports pragmas to locally control warnings.
https://gcc.gnu.org/onlinedocs/gcc-6.2.0/gcc/Diagnostic-Pragmas.html
Example:
====================================
__attribute__((__deprecated__)) int some_deprecated_function(void)
{
return 0;
};
void some_function(void)
{
int x, y;
#pragma GCC diagnostic push
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
x = some_deprecated_function();
#pragma GCC diagnostic pop
y = x + 1;
}
int main(int argc, char** argv)
{
return 0;
}
====================================
In the above example, call to some_deprecated_function() does not trigger deprecation warning.
'#pragma GCC diagnostic push' and '#pragma GCC diagnostic pop' are supported since GCC 4.6.0.
https://gcc.gnu.org/gcc-4.6/changes.html
'#pragma GCC diagnostic ignored' is documented in documentation of GCC since 4.2.0.
Clang supposedly supports both '#pragma GCC diagnostic ...' and '#pragma clang diagnostic ...':
http://clang.llvm.org/docs/UsersManual.html#controlling-diagnostics-via-pragmas |
|
Date |
User |
Action |
Args |
2016-11-06 16:52:49 | Arfrever | set | recipients:
+ Arfrever, pitrou, vstinner, ezio.melotti, serhiy.storchaka, eryksun |
2016-11-06 16:52:49 | Arfrever | set | messageid: <1478451169.54.0.215521431033.issue19569@psf.upfronthosting.co.za> |
2016-11-06 16:52:49 | Arfrever | link | issue19569 messages |
2016-11-06 16:52:48 | Arfrever | create | |
|