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

            Bug ID: 107502
           Summary: GCC fails to detect
                    foo(first_const,last)-first_const+first pattern
           Product: gcc
           Version: 13.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: tree-optimization
          Assignee: unassigned at gcc dot gnu.org
          Reporter: unlvsur at live dot com
  Target Milestone: ---

GCC fails to detect foo(first_const,last)-first_const+first pattern.

This is to use C++ std::contiguous_iterator interfaces with char const*
foo(char const* first, char const* last) noexcept; like APIs. However, GCC
fails to detect they are the same in IR and make them tail calls.

See godbolt:

https://godbolt.org/z/67PvYPar8

Reply via email to