decl.c (pushtag): Don't put out debugging information for compiler-generated typedefs.

* decl.c (pushtag): Don't put out debugging information for
	compiler-generated typedefs.

From-SVN: r21285
This commit is contained in:
Mark Mitchell 1998-07-19 18:00:47 +00:00 committed by Mark Mitchell
parent 3df095e2f1
commit d92e4d8cba
3 changed files with 24 additions and 0 deletions

View File

@ -1,5 +1,8 @@
1998-07-19 Mark Mitchell <mark@markmitchell.com>
* decl.c (pushtag): Don't put out debugging information for
compiler-generated typedefs.
* error.c (dump_type_real): Don't crash when presented with
intQI_type_node or the like.

View File

@ -2287,6 +2287,14 @@ pushtag (name, type, globalize)
if (current_lang_name == lang_name_java)
TYPE_FOR_JAVA (type) = 1;
SET_DECL_ARTIFICIAL (d);
/* There's no reason to put out debugging information
for these declarations since they are
compiler-generated. Furthermore, if the type makes
use of template parameters, the code that generates
debugging information will get confused. It is safe
to put these out in the non-template case, just
useless. */
DECL_IGNORED_P (d) = 1;
if (! in_class)
set_identifier_type_value_with_scope (name, type, b);
}

View File

@ -0,0 +1,13 @@
// Build don't link:
// Special g++ Options: -g
template <class C>
class CenteringTag {
};
struct S {
template <class B, class C>
static void f() {
CenteringTag<C> ctag;
}
};