[cfe-dev] [clang] How to ignore compiler warnings from macros in system headers?

David Blaikie via cfe-dev cfe-dev at lists.llvm.org
Mon Jan 10 11:23:43 PST 2022


+Some folks who have some interest in clang diagnostic quality.

I'm guessing there isn't an existing solution to this in clang - but maybe
it's possible if you wanted to work on an improvement/patch to Clang?
Though it might be difficult to check that all the relevant code properties
came from the macro and not some from the macro, some from macro arguments,
some from the context the macro was used in, etc.

On Sun, Dec 26, 2021 at 2:29 PM Carlos Galvez via cfe-dev <
cfe-dev at lists.llvm.org> wrote:

> Hi!
>
> I've asked this question in StackOverflow
> <https://stackoverflow.com/questions/70488470/how-to-ignore-compiler-warnings-for-macros-defined-in-third-party-headers>
> without much success so I thought I'd come closer to the source and ask
> here.
>
> My use case is simple: ignore compiler warnings from 3rd-party headers
> that I have no control over. The standard approach for this is simple -
> include them as "system headers" via "-isystem". That works pretty well,
> except for one bit - *macros*. Clang (and GCC) will still report warnings
> if I use problematic macros each time I use them in my code. Why is that?
> Clang knows where the macro comes from, shouldn't it be able to ignore the
> warning? Is there a good way to achieve what I want, without using pragmas
> or re-creating the third-party code myself?
>
> Thanks!
> /Carlos
> _______________________________________________
> cfe-dev mailing list
> cfe-dev at lists.llvm.org
> https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-dev
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/cfe-dev/attachments/20220110/33019e60/attachment.html>


More information about the cfe-dev mailing list