(root)/
gcc-13.2.0/
gcc/
testsuite/
g++.dg/
diagnostic/
pr65923.C
// { dg-do compile { target c++14 } }

#include <chrono>

using std::literals::chrono_literals::operator""s;

struct X
{
  friend constexpr std::chrono::duration<long double> std::literals::chrono_literals::operator""s(long double);
};

struct X2
{
  friend constexpr X operator""foo(long double) {return {};} // { dg-warning "literal operator suffixes not preceded" }
};

namespace std
{
  template<> void swap(X&, X&)
  {
    constexpr std::chrono::duration<long double> operator""s(long double);
  }
}