]> gcc.gnu.org Git - gcc.git/blame - gcc/cp/ChangeLog
c-convert.c (convert): Return if output or input type is ERROR_MARK.
[gcc.git] / gcc / cp / ChangeLog
CommitLineData
17aec3eb
RK
1Sun Mar 26 20:15:26 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
2
3 * class.c (check_field_decl): Fix typo.
4 (build_vtbl_or_vbase_field): Don't clear DECL_SAVED_INSNS.
5 (check_methods): Likewise.
6 (check_field_decls): Likewise.
7 Use DECL_CONTEXT, not DECL_FIELD_CONTEXT.
8 * cp-tree.h (DECL_SHADOWED_FOR_VAR, DECL_TEMPLATE_RESULT):
9 Use DECL_RESULT_FLD, not DECL_RESULT.
10 * decl.c (xref_tag): Use DECL_TEMPLATE_RESULT.
11 * lex.c (identifier_type): Likewise.
12 * pt.c (determine_specialization, lookup_template_class): Likewise.
13 (tsubst_friend_function, tsubst_decl, instantiate_template): Likewise.
14 (resolve_overloaded_unification, more_specialized): Likewise.
15 * semantics.c (finish_member_declaration): Likewise.
16 * typeck.c (build_x_function_call): Likewise.
17
ec386958
MM
182000-03-26 Mark Mitchell <mark@codesourcery.com>
19
20 * class.c (layout_empty_base): Handle empty bases with non-byte
21 alignment.
22 (build_base_field): Likewise.
23 (layout_virtual_bases): Likewise.
24
25 * class.c (finish_struct_1): Fix typo in this change:
26
27 Sat Mar 25 09:12:10 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
28
da8a7456
MM
292000-03-25 Mark Mitchell <mark@codesourcery.com>
30
31 * decl.c (grokdeclarator): Count partial specializations when
32 keeping track of how many template classes have been seen.
33
34 * dump.c (dequeue_and_dump): Dump DECL_TEMPLATE_RESULT.
35
770ae6cc
RK
36Sat Mar 25 09:12:10 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
37
38 * class.c (build_vbase_pointer_fields): layout_field now place_field.
39 (get_vfield_offset): Use byte_position.
40 (set_rtti_entry): Set OFFSET to ssizetype zero.
41 (get_binfo_offset_as_int): Deleted.
42 (dfs_record_base_offsets): Use tree_low_cst.
43 (dfs_search_base_offsets): Likewise.
44 (layout_nonempty_base_or_field): Reflect changes in RLI format
45 and call byte_position.
46 (layout_empty_base): Convert offset to ssizetype.
47 (build_base_field): use rli_size_unit_so_far.
48 (dfs_propagate_binfo_offsets): Do computation in proper type.
49 (layout_virtual_bases): Pass ssizetype to propagate_binfo_offsets.
50 (layout_class_type): Reflect changes in RLI names and fields.
51 (finish_struct_1): Set DECL_FIELD_OFFSET.
52 * dump.c (dequeue_and_dump): Call bit_position.
53 * expr.c (cplus_expand_constant): Use byte_position.
54 * rtti.c (expand_class_desc): Use bitsize_one_node.
55 * typeck.c (build_component_addr): Use byte_position and don't
56 special case for zero offset.
57
34249844
NS
582000-03-24 Nathan Sidwell <nathan@codesourcery.com>
59
60 * decl.c (vtype_decl_p): Use TYPE_POLYMORPHIC_P.
61
62 * rtti.c (get_tinfo_decl): Set comdat linkage on new-abi
63 tinfo object.
64 (emit_tinfo_decl): Only emit polymorphic tinfo's when emitting
65 vtable.
66
2f939d94
TP
672000-03-20 Theodore Papadopoulo <Theodore.Papadopoulo@sophia.inria.fr>
68
e5361bbe
MM
69 * call.c (check_dtor_name,build_new_method_call): Use DECL_P and
70 TYPE_P macros.
2f939d94
TP
71 * decl.c (push_class_binding,poplevel,pushtag,lookup_namespace_name,
72 make_typename_type,check_initializer,cp_finish_decl,xref_tag): Likewise.
73 * decl2.c (grokfield,build_expr_from_tree,build_expr_from_tree,
74 decl_namespace,arg_assoc_template_arg,arg_assoc,
75 validate_nonmember_using_decl,do_class_using_decl): Likewise.
76 * error.c (dump_template_argument,dump_expr,cp_file_of,cp_line_of,
77 args_to_string): Likewise.
78 * friend.c (is_friend): Likewise.
79 * lex.c (note_got_semicolon,note_list_got_semicolon,is_global): Likewise.
80 * method.c (build_overload_nested_name,build_overload_value,
81 build_qualified_name,build_qualified_name,hack_identifier): Likewise.
82 * parse.y (typename_sub,typename_sub1): Likewise.
83 * pt.c (push_inline_template_parms_recursive,check_template_shadow,
84 process_partial_specialization,convert_template_argument,
85 template_args_equal,add_pending_template,lookup_template_class,
86 for_each_template_parm_r,maybe_fold_nontype_arg,
87 tsubst,instantiate_template,type_unification_real,unify,
88 instantiate_pending_templates,set_mangled_name_for_template_decl):
89 Likewise.
90 * repo.c (repo_get_id,repo_template_used): Likewise.
91 * search.c (lookup_field_1): Likewise.
92 * tree.c (walk_tree,get_type_decl,cp_tree_equal,member_p): Likewise.
93 * xref.c (classname): Likewise.
94
3c9d6359
MM
952000-03-22 Mark Mitchell <mark@codesourcery.com>
96
97 * cp-tree.h (BINFO_FOR_VBASE): Adjust documentation.
98 (CANONICAL_BINFO): New macro.
99 (BINFO_NEW_VTABLE_MARKED): Use it.
100 (SET_BINFO_NEW_VTABLE_MARKED): Likewise.
101 (CLEAR_BINFO_NEW_VTABLE_MARKED): Likewise.
102 * class.c (dfs_build_vbase_offset_vtbl_entries): Use BINFO_TYPE,
103 not TREE_TYPE.
104 (build_primary_vtable): Adjust usage of BINFO_NEW_VTABLE_MARKED.
105 (build_secondary_vtable): Likewise.
106 (dfs_finish_vtbls): Likewise.
107 (dfs_accumulate_vtbl_inits): Likewise.
108 (accumulate_vtbl_inits): New function.
109 (finish_vtbls): Make sure that virtual bases come after
110 non-virtual bases in the vtable group.
111 (record_base_offsets): Don't save and restore TREE_VIA_VIRTUAL.
112 (finish_struct_1): Adjust usage of BINFO_NEW_VTABLE_MARKED.
113 * search.c (struct vbase_info): Move definition.
114 (marked_new_vtable_p): Adjust usage of BINFO_NEW_VTABLE_MARKED.
115 (unmarked_new_vtable_p): Likewise.
116 (dfs_mark_vtable_path): Remove.
117 (dfs_mark_new_vtable): Remove.
118 (dfs_unmark_new_vtable): Likewise.
119 (dfs_clear_search_slot): Likewise.
120 (dfs_find_vbases): Adjust usage of BINFO_NEW_VTABLE_MARKED.
121 (dfs_clear_vbase_slots): Likewise.
122 (init_vbase_pointers): LIkewise.
123
7e9d4b22
JM
1242000-03-22 Jason Merrill <jason@casey.cygnus.com>
125
126 * typeck.c (type_after_usual_arithmetic_conversions): Prefer a
127 SIZETYPE to a non-SIZETYPE.
128
ec47ccca
MM
1292000-03-21 Mark Mitchell <mark@codesourcery.com>
130
736fb497
MM
131 * class.c (layout_virtual_bases): Adjust names in conditionally
132 compiled code.
133
9785e4b1
MM
134 * class.c (record_base_offsets): New function.
135 (layout_conflict_p): Likewise.
136 (layout_nonempty_base_or_field): Use it.
137 (layout_empty_base): New function.
138 (build_base_field): Use it.
139 (build_base_fields): Update comment.
140 (layout_virtual_bases): Fold in a little code form
141 layout_basetypes. Use layout_empty_base.
142 (layout_basetypes): Remove.
143 (end_of_class): New function.
144 (layout_class_type): Use it. Adjust.
145
146 * cp-tree.h (CLASSTYPE_VBASECLASSES): Fix typo in comment.
147 (fntype_p): Remove.
148 * search.c (dfs_skip_nonprimary_vbases_unmarkedp): Fix typo in
149 comment.
150 (dfs_skip_nonprimary_vbases_markedp): Likewise.
151 * typeck.c (fntype_p): Remove.
152
d8b64f80
MM
153 * cp-tree.h (TI_SPEC_INFO): Remove.
154 (CLASSTYPE_TI_SPEC_INFO): Likewise.
155 * pt.c (process_partial_specialization): Likewise.
156
217f4eb9
MM
157 * class.c (build_base_field): Fix thinko in computation of binfo
158 offsets.
159
ec47ccca
MM
160 * tree.c (mark_local_for_remap_p): Mark variables declared in
161 TARGET_EXPRs as well.
162
d0f062fb
NS
1632000-03-21 Nathan Sidwell <nathan@codesourcery.com>
164
165 * typeck.c (require_complete_type, complete_type,
166 complete_type_or_else, c_sizeof, c_sizeof_nowarn,
167 build_array_ref, convert_arguments, pointer_diff,
168 build_x_unary_op, build_unary_op, build_c_cast,
169 build_modify_expr): Use COMPLETE_TYPE_P etc.
170 * call.c (is_complete, convert_like_real,
171 build_new_method_call): Likewise.
172 * class.c (build_vbase_pointer_fields, check_bases,
173 build_base_field, finish_struct_1, pushclass): Likewise.
174 * cvt.c (cp_convert_to_pointer, convert_to_void): Likewise.
175 * decl.c (maybe_process_template_type_declaration, pushtag,
176 pushdecl, redeclaration_error_message, start_decl, start_decl_1,
177 layout_var_decl, check_initializer, cp_finish_decl,
178 grokdeclarator, require_complete_types_for_parms,
179 grok_op_properties, xref_tag, xref_basetypes,
180 check_function_type): Likewise.
181 * decl2.c (check_classfn, reparse_absdcl_as_casts): Likewise.
182 * friend.c (do_friend): Likewise.
183 * init.c (build_offset_ref): Likewise.
184 * parse.y (structsp): Likewise.
185 * pt.c (maybe_process_partial_specialization,
186 tsubst_friend_function, instantiate_class_template, tsubst,
187 do_type_instantiation, instantiate_pending_templates): Likewise.
188 * repo.c (repo_get_id): Likewise.
189 * rtti.c (build_typeid, get_typeid, build_dynamic_cast_1,
190 synthesize_tinfo_var, emit_support_tinfos): Likewise.
191 * search.c (lookup_fnfields_1, lookup_conversions): Likewise.
192 * semantics.c (begin_class_definition): Likewise.
193 * tree.c (build_cplus_method_type): Likewise.
194 * typeck2.c (digest_init, build_functional_cast,
195 add_exception_specifier): Likewise.
196 * parse.h, parse.c: Regenerated.
197
2854d3c6
NS
1982000-03-21 Nathan Sidwell <nathan@codesourcery.com>
199
200 * inc/cxxabi.h: New header file. Define new-abi entry points.
201 (__pointer_type_info::target): Rename member to ...
202 (__pointer_type_info::type): ... here.
203 (__base_class_info::type): Rename member to ...
204 (__base_class_info::base): ... here.
205 * Make-lang.in (CXX_EXTRA_HEADERS): Add cxxabi.h
206 * cp-tree.h (CPTI_ABI): New global tree enumeration.
207 (abi_node): New global tree node.
208 * decl.c (abi_node): Document.
209 (init_decl_processing): Initialize abi_node.
210 * rtti.c (build_dynamic_cast_1): Use abi_node for new-abi.
211 (get_vmi_pseudo_type_info): Likewise.
212 (create_tinfo_types): Likewise.
213 (emit_support_tinfos): Likewise.
214 * tinfo.h (cxxabi.h): Include for new-abi.
215 Move rtti class definitions to new header file.
216 * tinfo.cc (abi): Use the namespace.
217 (std): Move new abi rtti classes from here ...
218 (__cxxabiv1): ... to here.
219 * tinfo2.cc (cxxabi.h): Include for new-abi.
220 Move rtti class definitions to new header file.
221 (std): Move new abi rtti classes from here ...
222 (__cxxabiv1): ... to here.
223 * inc/typeinfo (__class_type_info): Move into __cxxabiv1
224 namespace.
225
10bd7f8c
JW
2262000-03-20 Jed Wing <jedwin@zloty.ugcs.caltech.edu>
227 Jason Merrill <jason@casey.cygnus.com>
228
229 * method.c (build_overload_int): Use host_integerp.
230
c65a922c
TP
2312000-03-20 Theodore Papadopoulo <Theodore.Papadopoulo@sophia.inria.fr>
232
233 * init.c (build_offset_ref): Handle the case of a templated member
234 function.
235
c14f7160
ML
236