view gcc/testsuite/g++.dg/diagnostic/pr65923.C @ 158:494b0b89df80 default tip

...
author Shinji KONO <kono@ie.u-ryukyu.ac.jp>
date Mon, 25 May 2020 18:13:55 +0900
parents 84e7813d76e9
children
line wrap: on
line source

// { 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);
  }
}