view gcc/testsuite/g++.dg/diagnostic/pr65923.C @ 131:84e7813d76e9

gcc-8.2
author mir3636
date Thu, 25 Oct 2018 07:37:49 +0900
parents
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);
  }
}