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

Jakub Jelinek <jakub at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
            Summary|[15/16 regression] error:   |[15 regression] error:
                   |cannot tail-call: other     |cannot tail-call: other
                   |reasons when using address  |reasons when using address
                   |sanitizer with musttail     |sanitizer with musttail

--- Comment #23 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
Fixed for 16+ so far.
Regarding -O0 -fsanitize=address, that is just fine, what I was questioning is
using the musttail attribute for -O0.  I don't care about quality of generated
code, but I do care that this particular call must be tail call optimized.  It
can be meaningful if the program would crash otherwise, even at -O0, because of
too deep recursion.  But if musttail is just used as an optimization rather
than that the code will not really work without it (and in the protobuf case
there are many architectures where the attribute is not used, so it must work
even without it), then using it for -O0 looks quite pointless to me.  So
guarding it on __OPTIMIZE__ > 0 might make sense.
  • [Bug middle-end/120608] [15 reg... jakub at gcc dot gnu.org via Gcc-bugs

Reply via email to