https://gcc.gnu.org/bugzilla/show_bug.cgi?id=123613

Daniel Katz <katzdm at gmail dot com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |katzdm at gmail dot com

--- Comment #1 from Daniel Katz <katzdm at gmail dot com> ---
Minimal reproduction:

```
#include <meta>


// #define CRASH_BABY_CRASH
template <typename T, auto ... Vs>
#ifdef CRASH_BABY_CRASH
  constexpr auto construct_from = T{Vs...};
#else
  constexpr T construct_from {Vs...};
#endif

struct Inner {};
struct Outer { Inner m; };

constexpr auto r = substitute(^^construct_from,
                              { ^^Outer, ^^construct_from<Inner> });

```

https://godbolt.org/z/Gc7Yos1GW


As a nice aside, the entire original example works on trunk with that little
change:
https://godbolt.org/z/Th5x4jKrE

Really nice work :)

Reply via email to