mirror of
https://github.com/curl/curl.git
synced 2026-08-24 22:13:33 +03:00
gcc: guard #pragma diagnostic in core code for <4.6, disable picky warnings
Extend `#pragma diagnostic push`/`pop` guards to the whole codebase
(from tests and examples only) to disable it for GCC <4.6. Rename guard
to `CURL_HAVE_DIAG` and make it include llvm/clang to be interchangeable
with `__GNUC__ || __clang__` in this context.
The above means no longer disabling certain warnings locally, so pair
this with disabling all picky warnings for GCC <4.6.
Also:
- drop global workarounds for misbehaving GCC <4.6 compiler warnings.
Not needed with picky warnings disabled.
Reported-by: fds242 on github
Reported-by: Sergey Fedorov
Thanks-to: Orgad Shaneh
Follow-up to f07a98ae11 #20366
Fixes #20892
Fixes #20924
Closes #20902
Closes #20907
This commit is contained in:
parent
c3f04e76ae
commit
578ee6b79b
25 changed files with 56 additions and 68 deletions
|
|
@ -34,7 +34,7 @@
|
|||
* warning: conversion to 'long unsigned int' from 'curl_socket_t' {aka 'int'}
|
||||
* may change the sign of the result [-Wsign-conversion]
|
||||
*/
|
||||
#ifdef __GNUC__
|
||||
#ifdef __GNUC__ /* keep outside functions and without push/pop for GCC <4.6 */
|
||||
#pragma GCC diagnostic ignored "-Wsign-conversion"
|
||||
#elif defined(_MSC_VER)
|
||||
#pragma warning(disable:4127) /* conditional expression is constant */
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue