This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug c++/11962] ICE in type_dependent_expression on omitted second operand to ?: in template argument expression
- From: "bangerth at dealii dot org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 18 Aug 2003 14:14:11 -0000
- Subject: [Bug c++/11962] ICE in type_dependent_expression on omitted second operand to ?: in template argument expression
- References: <20030818064333.11962.jbeulich@novell.com>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
PLEASE REPLY TO gcc-bugzilla@gcc.gnu.org ONLY, *NOT* gcc-bugs@gcc.gnu.org.
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=11962
bangerth at dealii dot org changed:
What |Removed |Added
----------------------------------------------------------------------------
Summary|SEGV on omitted second |ICE in
|operand to ?: in template |type_dependent_expression on
|argument expression |omitted second operand to ?:
| |in template argument
| |expression
------- Additional Comments From bangerth at dealii dot org 2003-08-18 14:14 -------
Ugh, another bad interaction between a bad extension and the rest of the language :-(
The ICE happens here:
(gdb) bt
#0 type_dependent_expression_p (expression=0x0) at ../../gcc/gcc/cp/pt.c:11519
#1 0x4001e57c in ?? ()
#2 0x08114138 in build_x_conditional_expr (ifexp=0x4001a360, op1=0x0, op2=0x0)
at ../../gcc/gcc/cp/typeck.c:4244
#3 0x080f5faf in cp_parser_question_colon_clause (parser=0x0,
logical_or_expr=0x4001e144) at ../../gcc/gcc/cp/parser.c:4816
#4 0x080f6026 in cp_parser_assignment_expression (parser=0x403dc780)
at ../../gcc/gcc/cp/parser.c:4848
#5 0x080f61f6 in cp_parser_constant_expression (parser=0x4001a360,
allow_non_constant_p=false, non_constant_p=0x4001e144)
at ../../gcc/gcc/cp/parser.c:5075
#6 0x080f8e5d in cp_parser_template_argument (parser=0x403dc780)
at ../../gcc/gcc/cp/parser.c:7915
Surprising to see that this bug survived the rewrite of the parser...
W.