https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86176
--- Comment #5 from Martin Sebor <msebor at gcc dot gnu.org> --- I think the question in comment #2 is whether it's possible to get the full benefit of the latter kind of warnings without relying on the optimizations being performed that they depend on. There is currently no way to do decouple the two: an inlining pass must run in order for the middle-end warnings that detect bugs across function boundaries to trigger. By "static analysis checkers" I meant all the warnings GCC emits today, mainly either from the front-end (with almost no dependency on optimizations) or from the middle-end (with the benefit of the optimizing passes). I wasn't suggesting to change GCC at this basic level (although suggestions along these lines have been made in the past, in hopes that it would avoid some of the false positives that GCC middle-end warnings are susceptible to).