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

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

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |RESOLVED
         Resolution|---                         |WONTFIX

--- Comment #1 from David Malcolm <dmalcolm at gcc dot gnu.org> ---
Thanks for filing this bug.

I think you'll see the fix-its appear/disappear under similar situations if you
look at the output of -fdiagnostics-format=json.

GCC only generates fix-it hints in sufficiently simple situations, but gives up
in some cases involving macros, or where the locations appear unsuitable.  The
specifics are in:
  https://gcc.gnu.org/git/?p=gcc.git;a=blob;f=libcpp/line-map.cc
where various rich_location::add_fixit_* methods can fail and call
rich_location::stop_supporting_fixits, which has many ways in which the
locations of a fix-it hint can be sufficiently "awkward" for the hints in that
rich_location to be rejected.

I'm going to mark this as WONTFIX as I don't intend to try to handle these
awkward cases (macros, in particular), but if it's failing on something else
you think is reasonable to support, feel free to reopen.

Reply via email to