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

            Bug ID: 110802
           Summary: Missing warning for attribute deprecated on a function
                    template definition with a previous declaration
           Product: gcc
           Version: 13.1.1
            Status: UNCONFIRMED
          Keywords: diagnostic
          Severity: normal
          Priority: P3
         Component: c++
          Assignee: unassigned at gcc dot gnu.org
          Reporter: redi at gcc dot gnu.org
  Target Milestone: ---

template<typename RAIter>
void
random_shuffle(RAIter, RAIter);

template<typename RAIter>
__attribute__ ((deprecated))
void
random_shuffle(RAIter, RAIter) { }

int main()
{
  int* p = 0;
  random_shuffle(p, p);
}


This is based on std::random_shuffle in libstdc++, which I noticed warns with
Clang but not with GCC.

I added the attribute in r12-2700-g7f2f4b87910506 but it's never warned with
GCC. This doesn't seem to be a regression, as GCC 4.1.2 doesn't warn either.

Reply via email to