https://gcc.gnu.org/bugzilla/show_bug.cgi?id=108535

David Malcolm <dmalcolm at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
     Ever confirmed|0                           |1
   Last reconfirmed|                            |2023-01-26
             Status|UNCONFIRMED                 |WAITING

--- Comment #1 from David Malcolm <dmalcolm at gcc dot gnu.org> ---
As I understand it, cppcheck's attempts to explore all combinations of possible
preprocessor defines.

GCC's -fanalyzer performs coverage-guided symbolic execution to try to explore
the various execution paths in the user's code.  It runs on GCC's intermediate
representation as the code is being compiled.  In particular -fanalyzer runs
internally *after* preprocessing; it uses just the specific defines that the
file was invoked with (via -D at the command-line, or via #defines in headers,
etc).

So I don't think GCC's -fanalyzer can support the "all combinations of
preprocessor defines" approach; it would be a total rewrite.

It sounds like what you really want is for GCC -fanalyzer to be faster on this
particular translation unit.  If so, I can try digging into it to see where the
slowdown happens.

Reply via email to