aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorPer Bothner <bothner@cygnus.com>1998-05-22 12:22:54 +0000
committerPer Bothner <bothner@gcc.gnu.org>1998-05-22 05:22:54 -0700
commitcfdd0551843a8a88336c36f585d692db537c6c32 (patch)
treeeae04dae7ce86d9c879afc4c9534ce5b916df243 /gcc
parent2e0773e8574540c3365294c491ba0576a1bd70f6 (diff)
downloadgcc-cfdd0551843a8a88336c36f585d692db537c6c32.zip
gcc-cfdd0551843a8a88336c36f585d692db537c6c32.tar.gz
gcc-cfdd0551843a8a88336c36f585d692db537c6c32.tar.bz2
cp-tree.h: Add comments documenting which LANG_FLAGS are used.
� * cp-tree.h: Add comments documenting which LANG_FLAGS are used. (C_TYPE_VARIABLE_SIZE, C_DECL_VARIABLE_SIZE): Removed, not used. From-SVN: r19960
Diffstat (limited to 'gcc')
-rw-r--r--gcc/cp/ChangeLog5
-rw-r--r--gcc/cp/cp-tree.h61
2 files changed, 59 insertions, 7 deletions
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog
index 128a932..0c5ddc1 100644
--- a/gcc/cp/ChangeLog
+++ b/gcc/cp/ChangeLog
@@ -1,3 +1,8 @@
+1998-05-22 Per Bothner <bothner@cygnus.com>
+
+ * cp-tree.h: Add comments documenting which LANG_FLAGS are used.
+ (C_TYPE_VARIABLE_SIZE, C_DECL_VARIABLE_SIZE): Removed, not used.
+
1998-05-22 Jason Merrill <jason@yorick.cygnus.com>
* pt.c (print_template_context): Use fprintf instead of cp_error.
diff --git a/gcc/cp/cp-tree.h b/gcc/cp/cp-tree.h
index 38b277c..3cde102 100644
--- a/gcc/cp/cp-tree.h
+++ b/gcc/cp/cp-tree.h
@@ -24,6 +24,58 @@ Boston, MA 02111-1307, USA. */
#include "gansidecl.h"
+/* Usage of TREE_LANG_FLAG_?:
+ 0: TREE_NONLOCAL_FLAG (in TREE_LIST or _TYPE).
+ BINFO_MARKED (BINFO nodes).
+ TI_USES_TEMPLATE_PARMS.
+ COMPOUND_STMT_NO_SCOPE (in COMPOUND_STMT).
+ NEW_EXPR_USE_GLOBAL (in NEW_EXPR).
+ DELETE_EXPR_USE_GLOBAL (in DELETE_EXPR).
+ LOOKUP_EXPR_GLOBAL (in LOOKUP_EXPR).
+ TREE_NEGATED_INT (in INTEGER_CST).
+ (TREE_MANGLED) (in IDENTIFIER_NODE) (commented-out).
+ 1: IDENTIFIER_VIRTUAL_P.
+ TI_PENDING_TEMPLATE_FLAG.
+ TI_PENDING_SPECIALIZATION_FLAG.
+ TEMPLATE_PARMS_FOR_INLINE.
+ DELETE_EXPR_USE_VEC (in DELETE_EXPR).
+ (TREE_CALLS_NEW) (in _EXPR or _REF) (commented-out).
+ TYPE_USES_COMPLEX_INHERITANCE (in _TYPE).
+ C_DECLARED_LABEL_FLAG.
+ 2: IDENTIFIER_OPNAME_P.
+ BINFO_FIELDS_MARKED.
+ TYPE_VIRTUAL_P.
+ PARM_DECL_EXPR (in SAVE_EXPR).
+ 3: TYPE_USES_VIRTUAL_BASECLASSES (in a class TYPE).
+ BINFO_VTABLE_PATH_MARKED.
+ (TREE_REFERENCE_EXPR) (in NON_LVALUE_EXPR) (commented-out).
+ 4: BINFO_NEW_VTABLE_MARKED.
+ TREE_HAS_CONSTRUCTOR (in INDIRECT_REF, SAVE_EXPR, CONSTRUCTOR,
+ or FIELD_DECL).
+ 5: BINFO_VIA_PUBLIC.
+ BINFO_VBASE_INIT_MARKED.
+ 6: Not used.
+
+ Usage of TYPE_LANG_FLAG_?:
+ 0: C_TYPE_FIELDS_READONLY (in RECORD_TYPE or UNION_TYPE).
+ 1: TYPE_HAS_CONSTRUCTOR.
+ 2: TYPE_HAS_DESTRUCTOR.
+ 3: Not used.
+ 4: TYPE_NEEDS_DESTRUCTOR.
+ 5: IS_AGGR_TYPE.
+ 6: TYPE_BUILT_IN
+
+ Usage of DECL_LANG_FLAG_?:
+ 0: DECL_ERROR_REPORTED (in VAR_DECL).
+ 1: C_TYPEDEF_EXPLICITLY_SIGNED (in TYPE_DECL).
+ 2: DECL_THIS_EXTERN (in VAR_DECL or FUNCTION_DECL).
+ 3: DECL_IN_AGGR_P.
+ 4: DECL_MAYBE_TEMPLATE.
+ 5: DECL_INTERFACE_KNOWN.
+ 6: DECL_THIS_STATIC (in VAR_DECL or FUNCTION_DECL).
+ 7: DECL_DEAD_FOR_LOCAL (in VAR_DECL).
+*/
+
/* Language-dependent contents of an identifier. */
struct lang_identifier
@@ -1196,7 +1248,7 @@ struct lang_decl
#define TYPENAME_TYPE_FULLNAME(NODE) CLASSTYPE_SIZE (NODE)
-/* Nonzero in INT_CST means that this int is negative by dint of
+/* Nonzero in INTEGER_CST means that this int is negative by dint of
using a twos-complement negated operand. */
#define TREE_NEGATED_INT(NODE) (TREE_LANG_FLAG_0 (NODE))
@@ -1270,11 +1322,6 @@ extern int flag_new_for_scope;
These may be shadowed, and may be referenced from nested functions. */
#define C_DECLARED_LABEL_FLAG(label) TREE_LANG_FLAG_1 (label)
-/* Record whether a type or decl was written with nonconstant size.
- Note that TYPE_SIZE may have simplified to a constant. */
-#define C_TYPE_VARIABLE_SIZE(type) TREE_LANG_FLAG_4 (type)
-#define C_DECL_VARIABLE_SIZE(type) DECL_LANG_FLAG_8 (type)
-
/* Nonzero for _TYPE means that the _TYPE defines
at least one constructor. */
#define TYPE_HAS_CONSTRUCTOR(NODE) (TYPE_LANG_FLAG_1(NODE))
@@ -1312,7 +1359,7 @@ extern int flag_new_for_scope;
/* Nonzero for _TYPE node means that creating an object of this type
will involve a call to a constructor. This can apply to objects
of ARRAY_TYPE if the type of the elements needs a constructor. */
-#define TYPE_NEEDS_CONSTRUCTING(NODE) (TYPE_LANG_FLAG_3(NODE))
+#define TYPE_NEEDS_CONSTRUCTING(NODE) ... defined in ../tree.h ...
#endif
/* Nonzero means that an object of this type can not be initialized using