Home | History | Annotate | Download | only in class.inhctor
      1 // RUN: %clang_cc1 -std=c++11 -verify %s
      2 
      3 // expected-no-diagnostics
      4 struct A {
      5   constexpr A(const int&) : rval(false) {}
      6   constexpr A(const int&&) : rval(true) {}
      7   bool rval;
      8 };
      9 struct B : A {
     10   using A::A;
     11 };
     12 
     13 constexpr int k = 0;
     14 constexpr A a0{0};
     15 constexpr A a1{k};
     16 constexpr B b0{0};
     17 // This performs static_cast<(const int&)&&>(k), so calls the A(const int&)
     18 // constructor.
     19 constexpr B b1{k};
     20 
     21 static_assert(a0.rval && !a1.rval && b0.rval && !b1.rval, "");
     22