https://gcc.gnu.org/bugzilla/show_bug.cgi?id=120780
Jakub Jelinek <jakub at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |jakub at gcc dot gnu.org --- Comment #12 from Jakub Jelinek <jakub at gcc dot gnu.org> --- (In reply to Siddhesh Poyarekar from comment #11) > OK, so we don't really need a FAM based reproducer either, here's one > without it. FAM just makes this case more likely because due to it, __bdos > succeeds more often in the kernel code: And the problem with that is what? Using warning attribute with __bdos based guards makes no sense. __bdos is intentionally dynamic, so often it doesn't yield a constant, e.g. can result in minimum of a constant and some variable. With warning attribute you get a warning whenever it doesn't fold into a constant.