aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJason Merrill <merrill@gnu.org>1996-04-12 16:42:46 +0000
committerJason Merrill <merrill@gnu.org>1996-04-12 16:42:46 +0000
commit7f6c7be1a037022badf97bf6d9c5510de8df0e13 (patch)
tree5f66b98b5a4c564f0bcd5b1a4373094a5cd458db
parentae8ff0096b382dde3c4ea415513b9bbf550bb4be (diff)
downloadgcc-7f6c7be1a037022badf97bf6d9c5510de8df0e13.zip
gcc-7f6c7be1a037022badf97bf6d9c5510de8df0e13.tar.gz
gcc-7f6c7be1a037022badf97bf6d9c5510de8df0e13.tar.bz2
(dbxout_typedefs): Don't emit incomplete types yet.
(dbxout_symbol): Use DECL_ARTIFICIAL to recognize C++ implicit typedefs. From-SVN: r11703
-rw-r--r--gcc/dbxout.c6
1 files changed, 2 insertions, 4 deletions
diff --git a/gcc/dbxout.c b/gcc/dbxout.c
index 39c61ea..cc6b9ca 100644
--- a/gcc/dbxout.c
+++ b/gcc/dbxout.c
@@ -555,6 +555,7 @@ dbxout_typedefs (syms)
tree type = TREE_TYPE (syms);
if (TYPE_NAME (type)
&& TREE_CODE (TYPE_NAME (type)) == TYPE_DECL
+ && TYPE_SIZE (type) != NULL_TREE
&& ! TREE_ASM_WRITTEN (TYPE_NAME (type)))
dbxout_symbol (TYPE_NAME (type), 0);
}
@@ -1783,10 +1784,7 @@ dbxout_symbol (decl, local)
&& !TREE_ASM_WRITTEN (TYPE_NAME (type))
/* Distinguish the implicit typedefs of C++
from explicit ones that might be found in C. */
- && (!strcmp (lang_identify (), "cplusplus")
- /* The following line maybe unnecessary;
- in 2.6, try removing it. */
- || DECL_SOURCE_LINE (decl) == 0))
+ && DECL_ARTIFICIAL (decl))
{
tree name = TYPE_NAME (type);
if (TREE_CODE (name) == TYPE_DECL)