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

            Bug ID: 100109
           Summary: ICE: unexpected expression 'E' of kind
                    template_parm_index
           Product: gcc
           Version: 11.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: c++
          Assignee: unassigned at gcc dot gnu.org
          Reporter: hewillk at gmail dot com
  Target Milestone: ---

https://godbolt.org/z/Go1W7YrYs

template <int... E>
void f() {
  [] { enum e { e = E }; };
}

template void f<>();

<source>:3:13: internal compiler error: unexpected expression 'E' of kind
template_parm_index
    3 |   [] { enum e { e = E }; };
      |             ^
0x1d02849 internal_error(char const*, ...)
        ???:0
0x7a74bd build_enumerator(tree_node*, tree_node*, tree_node*, tree_node*,
unsigned int)
        ???:0
0x92c3c8 lookup_template_class(tree_node*, tree_node*, tree_node*, tree_node*,
int, int)
        ???:0
0x9182fd tsubst(tree_node*, tree_node*, int, tree_node*)
        ???:0
0x9183a7 tsubst(tree_node*, tree_node*, int, tree_node*)
        ???:0
0x94b882 tsubst_lambda_expr(tree_node*, tree_node*, int, tree_node*)
        ???:0
0x91e1df instantiate_decl(tree_node*, bool, bool)
        ???:0
0x9600bb instantiate_pending_templates(int)
        ???:0
0x7cd579 c_parse_final_cleanups()
        ???:0
Please submit a full bug report,
with preprocessed source if appropriate.

Reply via email to