dbxout.c (dbxout_type_methods): Only treat TYPE_METHODS as a TREE_VEC if that's what it really is.

* dbxout.c (dbxout_type_methods): Only treat TYPE_METHODS as a
	TREE_VEC if that's what it really is.

From-SVN: r18487
This commit is contained in:
Mark Mitchell 1998-03-11 23:34:32 +00:00 committed by Mark Mitchell
parent 01c7f3501b
commit 6d89b990a5
4 changed files with 61 additions and 1 deletions

View File

@ -1,3 +1,8 @@
1998-03-11 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.
Wed Mar 11 15:16:01 1998 Michael Meissner <meissner@cygnus.com> Wed Mar 11 15:16:01 1998 Michael Meissner <meissner@cygnus.com>
* {haifa-,}sched.c (rank_for_schedule): Only take void * arguments * {haifa-,}sched.c (rank_for_schedule): Only take void * arguments

View File

@ -824,7 +824,7 @@ dbxout_type_methods (type)
sprintf(formatted_type_identifier_length, "%d", type_identifier_length); sprintf(formatted_type_identifier_length, "%d", type_identifier_length);
if (TREE_CODE (methods) == FUNCTION_DECL) if (TREE_CODE (methods) != TREE_VEC)
fndecl = methods; fndecl = methods;
else if (TREE_VEC_ELT (methods, 0) != NULL_TREE) else if (TREE_VEC_ELT (methods, 0) != NULL_TREE)
fndecl = TREE_VEC_ELT (methods, 0); fndecl = TREE_VEC_ELT (methods, 0);

View File

@ -0,0 +1,48 @@
// Build don't link:
// Special g++ Options: -g
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;
}

View File

@ -0,0 +1,7 @@
// Build don't link:
void f()
{
new int = 1;
}