[Bug c++/42338] [c++0x] ICE on decltype usage with templates

2010-02-09 Thread jason at gcc dot gnu dot org


--- Comment #5 from jason at gcc dot gnu dot org  2010-02-09 22:30 ---
Fixed.


-- 

jason at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution||FIXED


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=42338



[Bug c++/42338] [c++0x] ICE on decltype usage with templates

2010-01-21 Thread paolo dot carlini at oracle dot com


--- Comment #4 from paolo dot carlini at oracle dot com  2010-01-21 10:17 
---
Thus, Jason, it turns out this is *not* a duplicate of c++/38600, doesn't have
to do with mangling template_id_expr, right? By the way, if you have got two
spare minutes, could you maybe add something about the latter in that audit
trail? Duplicates are coming and coming, I'm afraid people (myself included ;)
are a bit confused about why we cannot mangle that.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=42338



[Bug c++/42338] [c++0x] ICE on decltype usage with templates

2010-01-20 Thread jason at gcc dot gnu dot org


--- Comment #3 from jason at gcc dot gnu dot org  2010-01-21 01:59 ---
Subject: Bug 42338

Author: jason
Date: Thu Jan 21 01:58:53 2010
New Revision: 156103

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=156103
Log:
PR c++/42338
* mangle.c (write_expression): Handle tree codes that have extra
arguments in the middle-end.
* cp-demangle.c (d_print_comp): Fix array index printing.

Added:
trunk/gcc/testsuite/g++.dg/abi/mangle39.C
Modified:
trunk/gcc/cp/ChangeLog
trunk/gcc/cp/mangle.c
trunk/libiberty/ChangeLog
trunk/libiberty/cp-demangle.c


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=42338



[Bug c++/42338] [c++0x] ICE on decltype usage with templates

2010-01-20 Thread jason at gcc dot gnu dot org


-- 

jason at gcc dot gnu dot org changed:

   What|Removed |Added

 AssignedTo|unassigned at gcc dot gnu   |jason at gcc dot gnu dot org
   |dot org |
 Status|UNCONFIRMED |ASSIGNED
 Ever Confirmed|0   |1
   Last reconfirmed|-00-00 00:00:00 |2010-01-20 22:42:01
   date||


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=42338



[Bug c++/42338] [c++0x] ICE on decltype usage with templates

2009-12-17 Thread redi at gcc dot gnu dot org


--- Comment #2 from redi at gcc dot gnu dot org  2009-12-18 00:42 ---
I suspect this is the same issue, as it also passes a null argument to
write_expression

$ cat ice.cc
template
auto f(T t) -> decltype(++t, 0)
{
++t;
return 0;
}

int main()
{
f((int*)0);
}
$ ~/gcc/4.x/bin/g++ -std=c++0x ice.cc
ice.cc: In instantiation of 'decltype (((++ t), 0)) f(T) [with T = int*,
decltype (((++ t), 0)) = int]':
ice.cc:10:14:   instantiated from here
ice.cc:6:1: internal compiler error: Segmentation fault
Please submit a full bug report,
with preprocessed source if appropriate.
See  for instructions.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=42338



[Bug c++/42338] [c++0x] ICE on decltype usage with templates

2009-12-09 Thread paolo dot carlini at oracle dot com


--- Comment #1 from paolo dot carlini at oracle dot com  2009-12-09 09:50 
---
Jason, the ICE happens in mangle.c, write_expression gets a null argument. Is
this another variant of c++/38600 and the likes?


-- 

paolo dot carlini at oracle dot com changed:

   What|Removed |Added

 CC||jason at gcc dot gnu dot org


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=42338