From c15398de775ea6bb100d761e7ebad03d2daec8a4 Mon Sep 17 00:00:00 2001
From: Mark Mitchell <mark@codesourcery.com>
Date: Mon, 17 May 1999 07:21:14 +0000
Subject: tree.def (TYPE_NONCOPIED_PARTS): Revise documentation to match
 reality.

	* tree.def (TYPE_NONCOPIED_PARTS): Revise documentation to match
        reality.
        * expr.c (init_noncopied_parts): Don't generate initializers for
        parts that don't need them.

From-SVN: r26969
---
 gcc/tree.def | 10 ++++++++--
 1 file changed, 8 insertions(+), 2 deletions(-)

(limited to 'gcc/tree.def')

diff --git a/gcc/tree.def b/gcc/tree.def
index 64fe0e4..2056c62 100644
--- a/gcc/tree.def
+++ b/gcc/tree.def
@@ -98,8 +98,14 @@ DEFTREECODE (BLOCK, "block", 'b', 0)
      points to the start of the chain.
    The TYPE_NONCOPIED_PARTS field is a list specifying which parts
      of an object of this type should *not* be copied by assignment.
-     The TREE_PURPOSE of each element is the offset of the part
-     and the TREE_VALUE is the size in bits of the part.
+     The TREE_VALUE of each is a FIELD_DECL that should not be
+     copied.  The TREE_PURPOSE is an initial value for that field when
+     an object of this type is initialized via an INIT_EXPR.  It may
+     be NULL if no special value is required.  Even the things in this
+     list are copied if the right-hand side of an assignment is known
+     to be a complete object (rather than being, perhaps, a subobject
+     of some other object.)  The determination of what constitutes a
+     complete object is done by fixed_type_p.
    The TYPE_NAME field contains info on the name used in the program
      for this type (for GDB symbol table output).  It is either a
      TYPE_DECL node, for types that are typedefs, or an IDENTIFIER_NODE
-- 
cgit v1.1

