[Bug c++/101181] New: ICE when using an alias template

webrown.cpp at gmail dot com gcc-bugzilla@gcc.gnu.org
Wed Jun 23 18:02:14 GMT 2021


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

            Bug ID: 101181
           Summary: ICE when using an alias template
           Product: gcc
           Version: 12.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: c++
          Assignee: unassigned at gcc dot gnu.org
          Reporter: webrown.cpp at gmail dot com
  Target Milestone: ---

The following program produces "Segmentation fault: 11 signal terminated
program cc1plus" when compiled with flags

-std=c++23 -fmodules-ts -pedantic-errors -O0 -c

using gcc trunk version

(Homebrew GCC HEAD-da13e4e_1) 12.0.0 20210623 (experimental)


template< class T
        , bool = requires { typename T::pointer; }
        >
struct p { using type = void; };

template< class T >
struct p<T, true> { using type = T::pointer; };

template< class T > using P = typename p<T>::type;


Without the final alias template, all seems well.


More information about the Gcc-bugs mailing list