1 // PR c++/67813 2 // { dg-do compile { target c++14 } } 3 4 struct Ptr { 5 int* p; 6 PtrPtr7 constexpr Ptr(int* p) noexcept : p{p} {} 8 constexpr int& operator*() const { 9 return *p; 10 } 11 }; 12 f(int & i)13constexpr int f(int& i) { 14 //Ptr first{&i}; // Works. 15 Ptr first = &i; // Error 16 return *first; 17 } 18 g()19constexpr int g() { 20 int i = 42; 21 return f(i); 22 } 23 24 #define SA(X) static_assert((X), #X) 25 SA(g() == 42); 26