Commit 7f6c7be1 by Jason Merrill

(dbxout_typedefs): Don't emit incomplete types yet.

        (dbxout_symbol): Use DECL_ARTIFICIAL to recognize C++ implicit
        typedefs.

From-SVN: r11703
parent ae8ff009
...@@ -555,6 +555,7 @@ dbxout_typedefs (syms) ...@@ -555,6 +555,7 @@ dbxout_typedefs (syms)
tree type = TREE_TYPE (syms); tree type = TREE_TYPE (syms);
if (TYPE_NAME (type) if (TYPE_NAME (type)
&& TREE_CODE (TYPE_NAME (type)) == TYPE_DECL && TREE_CODE (TYPE_NAME (type)) == TYPE_DECL
&& TYPE_SIZE (type) != NULL_TREE
&& ! TREE_ASM_WRITTEN (TYPE_NAME (type))) && ! TREE_ASM_WRITTEN (TYPE_NAME (type)))
dbxout_symbol (TYPE_NAME (type), 0); dbxout_symbol (TYPE_NAME (type), 0);
} }
...@@ -1783,10 +1784,7 @@ dbxout_symbol (decl, local) ...@@ -1783,10 +1784,7 @@ dbxout_symbol (decl, local)
&& !TREE_ASM_WRITTEN (TYPE_NAME (type)) && !TREE_ASM_WRITTEN (TYPE_NAME (type))
/* Distinguish the implicit typedefs of C++ /* Distinguish the implicit typedefs of C++
from explicit ones that might be found in C. */ from explicit ones that might be found in C. */
&& (!strcmp (lang_identify (), "cplusplus") && DECL_ARTIFICIAL (decl))
/* The following line maybe unnecessary;
in 2.6, try removing it. */
|| DECL_SOURCE_LINE (decl) == 0))
{ {
tree name = TYPE_NAME (type); tree name = TYPE_NAME (type);
if (TREE_CODE (name) == TYPE_DECL) if (TREE_CODE (name) == TYPE_DECL)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment