diff options
author | jason <jason@138bc75d-0d04-0410-961f-82ee72b054a4> | 1998-04-03 14:13:24 +0000 |
---|---|---|
committer | jason <jason@138bc75d-0d04-0410-961f-82ee72b054a4> | 1998-04-03 14:13:24 +0000 |
commit | d729e3b1a1d95cebc497ccff79fb8c934760b59f (patch) | |
tree | 78b6049387f4015025e8331467e00ee2485df68d /gcc/c-tree.h | |
parent | 1cd80523a7f9b340b7cecbe9d66cd2707d1f0988 (diff) | |
download | gcc-d729e3b1a1d95cebc497ccff79fb8c934760b59f.tar.gz |
Implement empty base optimization.
* class.c (finish_struct_1): Add vbase fields earlier. Set
CLASSTYPE_SIZE of an empty base to 0. Types with bases can be empty.
* search.c (dfs_check_overlap, dfs_no_overlap_yet): New fns.
(types_overlap_p): New fn.
* tree.c (avoid_overlap): New fn.
(build_base_fields): Use it to avoid overlapping empty bases.
* cp-tree.h, decl2.c, lang-options.h: Add -fnew-abi.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@18978 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/c-tree.h')
0 files changed, 0 insertions, 0 deletions