* pre-release-g++: cold ICE
@ 1998-03-08 13:06 Max Lawson
1998-03-10 18:13 ` Mark Mitchell
0 siblings, 1 reply; 3+ messages in thread
From: Max Lawson @ 1998-03-08 13:06 UTC (permalink / raw)
To: egcs; +Cc: egcs-bugs
typedef unsigned int size_t;
struct dummy { };
struct arrrrrgh { };
template<class Par,class Rand = arrrrrgh>
struct whyyyyyyy { };
template<class T, class S =dummy>
struct grrrrrrrr { };
template<class Par, class Par2 =Par, class Rand =arrrrrgh>
class no_future
{
public:
template<class S>
no_future(const grrrrrrrr<whyyyyyyy<Par,Rand>*,S>& man ) { }
~no_future( ) { }
private:
no_future(const no_future&);
no_future& operator=(const no_future&);
};
int main( )
{
grrrrrrrr<whyyyyyyy<double>*> man;
no_future<double> here(man);
return 0;
}
/*
Here I am again :-)
the above program give an ICE output when I try to compile
with the -g flag on (and u guess it, I need this flag to debug
a program which is segfaulting):
$ g++ -g bug.cc
bug.cc:42: Internal compiler error.
bug.cc:42: Please submit a full bug report to `egcs-bugs@cygnus.com'.
the implied compiler is
$ g++ -v
Reading specs from /usr/local/egcs-release-cvs-980303/lib/gcc-lib/i586-pc-linux-gnulibc1/egcs-2.90.25/specs
gcc version egcs-2.90.25 980302 (egcs-1.0.2 prerelease)
Max
*/
^ permalink raw reply [flat|nested] 3+ messages in thread
* pre-release-g++: cold ICE
1998-03-08 13:06 pre-release-g++: cold ICE Max Lawson
@ 1998-03-10 18:13 ` Mark Mitchell
1998-03-11 16:23 ` Jim Wilson
0 siblings, 1 reply; 3+ messages in thread
From: Mark Mitchell @ 1998-03-10 18:13 UTC (permalink / raw)
To: Max Lawson; +Cc: egcs, egcs-bugs
>>>>> "Max" == Max Lawson <mlawson@drfmc.ceng.cea.fr> writes:
Max> the above program give an ICE output when I try to compile
Max> with the -g flag on (and u guess it, I need this flag to
Max> debug a program which is segfaulting):
The problem was that dbxout_type_methods did not deal gracefully with
a TEMPLATE_DECL. I've attached a patch. Jeff, may I check this in?
--
Mark Mitchell mmitchell@usa.net
Stanford University http://www.stanford.edu
1998-03-10 Mark Mitchell <mmitchell@usa.net>
* dbxout.c (dbxout_type_methods): Only treat TYPE_METHODS as a
TREE_VEC if that's what it really is.
Index: dbxout.c
===================================================================
RCS file: /egcs/carton/cvsfiles/egcs/gcc/dbxout.c,v
retrieving revision 1.8
diff -c -p -r1.8 dbxout.c
*** dbxout.c 1998/02/07 22:54:16 1.8
--- dbxout.c 1998/03/11 00:33:43
*************** dbxout_type_methods (type)
*** 824,830 ****
sprintf(formatted_type_identifier_length, "%d", type_identifier_length);
! if (TREE_CODE (methods) == FUNCTION_DECL)
fndecl = methods;
else if (TREE_VEC_ELT (methods, 0) != NULL_TREE)
fndecl = TREE_VEC_ELT (methods, 0);
--- 824,830 ----
sprintf(formatted_type_identifier_length, "%d", type_identifier_length);
! if (TREE_CODE (methods) != TREE_VEC)
fndecl = methods;
else if (TREE_VEC_ELT (methods, 0) != NULL_TREE)
fndecl = TREE_VEC_ELT (methods, 0);
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: pre-release-g++: cold ICE
1998-03-10 18:13 ` Mark Mitchell
@ 1998-03-11 16:23 ` Jim Wilson
0 siblings, 0 replies; 3+ messages in thread
From: Jim Wilson @ 1998-03-11 16:23 UTC (permalink / raw)
To: mmitchell; +Cc: Max Lawson, egcs, egcs-bugs
This is OK to check in.
Jim
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~1998-03-11 16:23 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
1998-03-08 13:06 pre-release-g++: cold ICE Max Lawson
1998-03-10 18:13 ` Mark Mitchell
1998-03-11 16:23 ` Jim Wilson
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).