http://gcc.gnu.org/bugzilla/show_bug.cgi?id=56684
Bug #: 56684 Summary: [4.8 Regression] [C++0x] ICE: unexpected expression 'T' of kind template_parm_index Classification: Unclassified Product: gcc Version: 4.8.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++ AssignedTo: unassig...@gcc.gnu.org ReportedBy: zso...@seznam.cz Created attachment 29705 --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=29705 reduced testcase Compiler output: $ gcc -std=gnu++0x testcase.C testcase.C: In constructor 'S<T>::S()': testcase.C:4:11: internal compiler error: unexpected expression 'T' of kind template_parm_index S() { 1 << Ti; } ^ 0x72e441 cxx_eval_constant_expression /mnt/svn/gcc-trunk/gcc/cp/semantics.c:8106 0x731446 cxx_eval_outermost_constant_expr /mnt/svn/gcc-trunk/gcc/cp/semantics.c:8126 0x7342e7 maybe_constant_value(tree_node*) /mnt/svn/gcc-trunk/gcc/cp/semantics.c:8237 0x6ddc84 cp_build_binary_op(unsigned int, tree_code, tree_node*, tree_node*, int) /mnt/svn/gcc-trunk/gcc/cp/typeck.c:4148 0x5b81f7 build_new_op_1 /mnt/svn/gcc-trunk/gcc/cp/call.c:5399 0x5b8b27 build_new_op(unsigned int, tree_code, int, tree_node*, tree_node*, tree_node*, tree_node**, int) /mnt/svn/gcc-trunk/gcc/cp/call.c:5444 0x6cb8e2 build_x_binary_op(unsigned int, tree_code, tree_node*, tree_code, tree_node*, tree_code, tree_node**, int) /mnt/svn/gcc-trunk/gcc/cp/typeck.c:3684 0x60495a tsubst_copy_and_build(tree_node*, tree_node*, int, tree_node*, bool, bool) /mnt/svn/gcc-trunk/gcc/cp/pt.c:13685 0x608154 fold_non_dependent_expr_sfinae(tree_node*, int) /mnt/svn/gcc-trunk/gcc/cp/pt.c:5071 0x6082ac build_non_dependent_expr(tree_node*) /mnt/svn/gcc-trunk/gcc/cp/pt.c:20446 0x713540 finish_expr_stmt(tree_node*) /mnt/svn/gcc-trunk/gcc/cp/semantics.c:616 0x6a4027 cp_parser_statement /mnt/svn/gcc-trunk/gcc/cp/parser.c:8941 0x6a52be cp_parser_statement_seq_opt /mnt/svn/gcc-trunk/gcc/cp/parser.c:9207 0x6a5406 cp_parser_compound_statement /mnt/svn/gcc-trunk/gcc/cp/parser.c:9161 0x6b6843 cp_parser_function_body /mnt/svn/gcc-trunk/gcc/cp/parser.c:17776 0x6b6843 cp_parser_ctor_initializer_opt_and_function_body /mnt/svn/gcc-trunk/gcc/cp/parser.c:17812 0x6b78cf cp_parser_function_definition_after_declarator /mnt/svn/gcc-trunk/gcc/cp/parser.c:21787 0x69dfdc cp_parser_late_parsing_for_member /mnt/svn/gcc-trunk/gcc/cp/parser.c:22428 0x69dfdc cp_parser_class_specifier_1 /mnt/svn/gcc-trunk/gcc/cp/parser.c:18535 0x69dfdc cp_parser_class_specifier /mnt/svn/gcc-trunk/gcc/cp/parser.c:18559 Please submit a full bug report, with preprocessed source if appropriate. Please include the complete backtrace with any bug report. See <http://gcc.gnu.org/bugs.html> for instructions. Tested revisions: r196855 - crash