diff options
author | Mark Mitchell <mark@codesourcery.com> | 1999-09-01 21:56:38 +0000 |
---|---|---|
committer | Mark Mitchell <mmitchel@gcc.gnu.org> | 1999-09-01 21:56:38 +0000 |
commit | c7f9c6f5e30e4bc6e6b1baa083f76edb8cec2403 (patch) | |
tree | af4f5823ff7680f79711fc0f8bd9c6672f197291 /gcc | |
parent | 2219e9215ef55ec201a8395ccd0d194f69d4c794 (diff) | |
download | gcc-c7f9c6f5e30e4bc6e6b1baa083f76edb8cec2403.zip gcc-c7f9c6f5e30e4bc6e6b1baa083f76edb8cec2403.tar.gz gcc-c7f9c6f5e30e4bc6e6b1baa083f76edb8cec2403.tar.bz2 |
cp-tree.h (lang_type): Move align into type_flags.
* cp-tree.h (lang_type): Move align into type_flags.
(CLASSTYPE_ALIGN): Adjust accordingly.
* call.c (direct_reference_binding): Remove misleading comment.
From-SVN: r29035
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/cp/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/cp/call.c | 7 | ||||
-rw-r--r-- | gcc/cp/cp-tree.h | 9 |
3 files changed, 13 insertions, 9 deletions
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index 68c35907..1f418a9 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,3 +1,9 @@ +1999-09-01 Mark Mitchell <mark@codesourcery.com> + + * cp-tree.h (lang_type): Move align into type_flags. + (CLASSTYPE_ALIGN): Adjust accordingly. + * call.c (direct_reference_binding): Remove misleading comment. + 1999-08-30 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> * parse.y (language_string): Constify. diff --git a/gcc/cp/call.c b/gcc/cp/call.c index eed211f..0eefa7f 100644 --- a/gcc/cp/call.c +++ b/gcc/cp/call.c @@ -987,10 +987,9 @@ direct_reference_binding (type, conv) /* Returns the conversion path from type FROM to reference type TO for purposes of reference binding. For lvalue binding, either pass a - reference type to FROM or an lvalue expression to EXPR. - - Currently does not distinguish in the generated trees between binding to - an lvalue and a temporary. Should it? */ + reference type to FROM or an lvalue expression to EXPR. If the + reference will be bound to a temporary, NEED_TEMPORARY_P is set for + the conversion returned. */ static tree reference_binding (rto, rfrom, expr, flags) diff --git a/gcc/cp/cp-tree.h b/gcc/cp/cp-tree.h index 40d280a..8448b10 100644 --- a/gcc/cp/cp-tree.h +++ b/gcc/cp/cp-tree.h @@ -809,7 +809,9 @@ struct lang_type /* The MIPS compiler gets it wrong if this struct also does not fill out to a multiple of 4 bytes. Add a member `dummy' with new bits if you go over the edge. */ - unsigned dummy : 14; + unsigned dummy : 6; + + unsigned char align; } type_flags; int vsize; @@ -822,9 +824,6 @@ struct lang_type union tree_node *search_slot; - unsigned char align; - /* Room for another three unsigned chars. */ - union tree_node *size; union tree_node *abstract_virtuals; @@ -999,7 +998,7 @@ struct lang_type /* These are the size, mode and alignment of the type without its virtual base classes, for when we use this type as a base itself. */ #define CLASSTYPE_SIZE(NODE) (TYPE_LANG_SPECIFIC(NODE)->size) -#define CLASSTYPE_ALIGN(NODE) (TYPE_LANG_SPECIFIC(NODE)->align) +#define CLASSTYPE_ALIGN(NODE) (TYPE_LANG_SPECIFIC(NODE)->type_flags.align) /* A cons list of virtual functions which cannot be inherited by derived classes. When deriving from this type, the derived |