* dwarf2out.c (TYPE_DECL_IS_STUB): Extend mechanism to all types.
authorEric Botcazou <ebotcazou@adacore.com>
Mon, 27 Jun 2011 14:54:09 +0000 (14:54 +0000)
committerEric Botcazou <ebotcazou@gcc.gnu.org>
Mon, 27 Jun 2011 14:54:09 +0000 (14:54 +0000)
From-SVN: r175535

gcc/ChangeLog
gcc/dwarf2out.c

index e0abefef6e160403bb124def7bf013328ea84ec7..199b653689b159b0f0784f424ed89d303de1e0ce 100644 (file)
@@ -1,3 +1,7 @@
+2011-06-27  Eric Botcazou  <ebotcazou@adacore.com>
+
+       * dwarf2out.c (TYPE_DECL_IS_STUB): Extend mechanism to all types.
+
 2011-06-27  Eric Botcazou  <ebotcazou@adacore.com>
 
        PR lto/48492
index 63ac527c4af9dcd746afc05eb54bed6e7b7568df..3d63d7b8e3cc193e78cd8305a2948aea096aa673 100644 (file)
@@ -6207,19 +6207,19 @@ skeleton_chain_node;
 #endif
 
 /* Define a macro which returns nonzero for a TYPE_DECL which was
-   implicitly generated for a tagged type.
+   implicitly generated for a type.
 
-   Note that unlike the gcc front end (which generates a NULL named
-   TYPE_DECL node for each complete tagged type, each array type, and
-   each function type node created) the g++ front end generates a
-   _named_ TYPE_DECL node for each tagged type node created.
+   Note that, unlike the C front-end (which generates a NULL named
+   TYPE_DECL node for each complete tagged type, each array type,
+   and each function type node created) the C++ front-end generates
+   _named_ TYPE_DECL node for each tagged type node created.
    These TYPE_DECLs have DECL_ARTIFICIAL set, so we know not to
-   generate a DW_TAG_typedef DIE for them.  */
+   generate a DW_TAG_typedef DIE for them.  Likewise with the Ada
+   front-end, but for each type, tagged or not.  */
 
 #define TYPE_DECL_IS_STUB(decl)                                \
   (DECL_NAME (decl) == NULL_TREE                       \
    || (DECL_ARTIFICIAL (decl)                          \
-       && is_tagged_type (TREE_TYPE (decl))            \
        && ((decl == TYPE_STUB_DECL (TREE_TYPE (decl))) \
           /* This is necessary for stub decls that     \
              appear in nested inline functions.  */    \