]> gcc.gnu.org Git - gcc.git/blame - gcc/cp/ChangeLog
cp-tree.h: Tweak documentation.
[gcc.git] / gcc / cp / ChangeLog
CommitLineData
5c24fba6
MM
12000-03-14 Mark Mitchell <mark@codesourcery.com>
2
3 * cp-tree.h: Tweak documentation.
4 * class.c (build_vbase_pointer_fields): Layout the fields, too.
5 (avoid_overlap): Remove.
6 (get_binfo_offset_as_int): New function.
7 (dfs_serach_base_offsets): Likewise.
8 (layout_nonempty_base_or_field): Likewise.
9 (build_base_field): Layout fields here. Avoid placing two objects
10 of the same type at the same address, under the new ABI.
11 (build_base_fields): Adjust accordingly.
12 (create_vtable_ptr): Return the new field, but don't attach it to
13 TYPE_FIELDS.
14 (remove_base_field): Remove.
15 (remove_base_fields): Remove.
16 (layout_basetypes): Adjust accordingly.
17 (layout_class_type): Call layout_field for each field, rather than
18 just making a wholesale call to layout_type.
19
d9420976
JS
202000-03-14 Jeff Sturm <jsturm@sigma6.com>
21
22 * except.c (expand_throw): Fix typo in _Jv_Sjlj_Throw.
23
93ca4ba7
JM
242000-03-13 Jason Merrill <jason@casey.cygnus.com>
25
26 * decl.c (grokfndecl): Set TREE_NOTHROW if TYPE_NOTHROW_P.
27
28 * except.c (dtor_nothrow): New fn.
29 (do_pop_exception): Use it. Take type parm.
30 (push_eh_cleanup): Take type parm.
31 (expand_start_catch_block): Pass it.
32 (build_eh_type_type_ref): Accept null type.
33
3afb32a4
MM
342000-03-12 Mark Mitchell <mark@codesourcery.com>
35
36 * cp-tree.h (revert_static_member_fn): Change prototype.
37 * decl.c (grokfndecl): Adjust call to revert_static_member_fn.
38 (grok_op_properties): Likewise.
39 (start_function): Likewise.
40 (revert_static_member_fn): Simplify.
41 * pt.c (check_explicit_specialization): Adjust call to
42 revert_static_member_fn.
43
74b846e0
MM
442000-03-11 Mark Mitchell <mark@codesourcery.com>
45
46 * cp-tree.h (scope_kind): New type.
47 (tmpl_spec_kind): Likewise.
48 (declare_pseudo_global_level): Remove.
49 (pseudo_global_level_p): Rename to template_parm_scope_p.
50 (pushlevel): Remove declaration.
51 (begin_scope): New function.
52 (finish_scope): Likewise.
53 (current_tmpl_spec_kind): Likewise.
54 * decl.c (struct binding_level): Shorten parm_flag to 2 bits.
55 Shorten keep to 2 bits. Rename pseudo_global to template_parms_p.
56 Add template_spec_p.
57 (toplevel_bindings_p): Adjust.
58 (declare_pseudo_global_level): Remove.
59 (pseudo_global_level_p): Rename to template_parm_scope_p.
60 (current_tmpl_spec_kind): New function.
61 (begin_scope): Likewise.
62 (finish_scope): Likewise.
63 (maybe_push_to_top_level): Adjust.
64 (maybe_process_template_type_declaration): Likewise.
65 (pushtag): Likewise.
66 (pushdecl_nonclass_level): Likewise.
67 (lookup_tag): Likewise.
68 (grokfndecl): Handle member template specializations. Share
69 constructor and non-constructor code.
70 * decl2.c (check_classfn): Handle member template specializations.
71 * pt.c (begin_template_parm_list): Use begin_scope.
72 (begin_specialization): Likewise.
73 (end_specialization): Likewise.
74 (check_explicit_specialization): Use current_tmpl_spec_kind.
75 Handle member template specializations.
76 (end_template_decl): Use finish_scope. Remove call to
77 get_pending_sizes.
78 (push_template_decl_real): Remove bogus error message.
79 (tsubst_decl): Fix typo in code contained in comment.
80 (instantiate_template): Handle member template specializations.
81 (most_general_template): Likewise.
82
b4f4233d
GDR
832000-03-11 Gabriel Dos Reis <gdr@codesourcery.com>
84
85 * lex.c (whitespace_cr): Compress consecutive calls to warning().
86 (do_identifier): Ditto for error().
87
88 * pt.c (convert_nontype_argument): Ditto for cp_error().
89 (convert_template_argument): Ditto for cp_pedwarn().
90
1ef9f749
JM
912000-03-11 Jason Merrill <jason@casey.cygnus.com>
92
93 * exception.cc (__check_null_eh_spec): New fn.
94 * except.c (expand_end_eh_spec): Call it if the spec is throw().
95
cf74fb86
JM
962000-03-10 Jason Merrill <jason@casey.cygnus.com>
97
98 * decl.c (push_throw_library_fn): Take the FUNCTION_TYPE.
99 * except.c (expand_end_eh_spec): Add the return type.
100 * rtti.c (throw_bad_cast): Add the parmtypes.
101 (throw_bad_typeid): Likewise.
102
103 * semantics.c (expand_stmt): Only leave out rtl for unused
104 artificials, and set DECL_IGNORED_P on them as well.
105 * decl.c (wrapup_globals_for_namespace): Likewise.
106
1072000-03-09 Nathan Sidwell <nathan@codesourcery.com>
108
109 * decl.c (maybe_commonize_var): Skip all artificial decls.
110 * pt.c (tsubst_decl): Don't copy TREE_ASM_WRITTEN.
111
0c11ada6
JM
1122000-03-10 Jason Merrill <jason@casey.cygnus.com>
113
1660cb3a
JM
114 * lang-options.h, decl2.c: Add -fno-enforce-eh-specs.
115 * cp-tree.h: Declare flag_enforce_eh_specs.
116 * decl.c (store_parm_decls, finish_function): Check it.
117
118 C library functions don't throw.
119 * Makefile.in (cfns.h): New target.
120 (except.o): Depend on it.
121 * Make-lang.in (cc1plus): Depend on cfns.gperf.
122 * cfns.gperf: New file.
123 * cfns.h: Generated.
124 * except.c: Include it.
125 (nothrow_libfn_p): New fn.
126 * decl.c (grokfndecl): Use it.
127 * cp-tree.h: Declare it.
128
0c11ada6
JM
129 * decl.c (push_overloaded_decl_1, auto_function,
130 define_function): Lose.
131 (build_library_fn_1): New static fn.
132 (builtin_function): Use it.
133 (get_atexit_node): Use build_library_fn_ptr.
134 (build_library_fn, build_cp_library_fn, build_library_fn_ptr,
135 build_cp_library_fn_ptr, push_library_fn, push_cp_library_fn,
136 push_void_library_fn, push_throw_library_fn): New fns.
137 * cp-tree.h: Declare them.
138 (cp_tree_index): Remove CPTI_BAD_CAST, CPTI_BAD_TYPEID.
139 (throw_bad_cast_node, throw_bad_typeid_node): Lose.
140 * except.c (init_exception_processing, call_eh_info, do_pop_exception,
141 (expand_end_eh_spec, alloc_eh_object, expand_throw): Use above fns.
142 * rtti.c (build_runtime_decl): Lose.
143 (throw_bad_cast, throw_bad_typeid, get_tinfo_decl,
144 build_dynamic_cast_1, expand_si_desc, expand_class_desc,
145 expand_ptr_desc, expand_attr_desc, expand_generic_desc): Use above fns.
146
147 * call.c (build_call): Remove result_type parm.
148 Call mark_used on unused artificial fns.
149 * init.c, method.c, typeck.c, except.c, rtti.c: Adjust.
150
12a22e76
JM
1512000-03-09 Jason Merrill <jason@casey.cygnus.com>
152
153 * call.c (build_call): Set TREE_NOTHROW on the CALL_EXPR as
154 appropriate.
155 * decl.c (define_function): Set TREE_NOTHROW on the FUNCTION_DECL.
156 * except.c (call_eh_info, alloc_eh_object, expand_throw): Set
157 TREE_NOTHROW or TREE_THIS_VOLATILE on the function as appropriate.
158 * rtti.c (build_runtime_decl, get_tinfo_decl, build_dynamic_cast_1,
159 expand_si_desc, expand_class_desc, expand_ptr_desc, expand_attr_desc,
160 expand_generic_desc): Likewise.
161
99f80c8b
NS
1622000-03-08 Nathan Sidwell <nathan@codesourcery.com>
163
164 * exception.cc (__cp_pop_exception): Cleanup the original object.
165
17708e90
NS
1662000-03-08 Nathan Sidwell <nathan@codesourcery.com>
167
168 * decl.c (grok_op_properties): Merge conversion to void warning
169 with other silly op warnings.
170
96756199
JM
1712000-03-08 Jason Merrill <jason@casey.cygnus.com>
172
173 * typeck2.c (process_init_constructor): Set TREE_PURPOSE of
174 array CONSTRUCTOR elements. Don't use expr_tree_cons.
175
2ce07e2d
NS
1762000-03-08 Nathan Sidwell <nathan@codesourcery.com>
177
178 * decl.c (cp_make_fname_decl): New function.
179 (wrapup_globals_for_namespace): Don't emit unused static vars.
180 (init_decl_processing): Remove comment about use of
181 array_domain_type. Set make_fname_decl.
182 (cp_finish_decl): Remove __FUNCTION__ nadgering.
183 * semantics.c (begin_compound_stmt): Remove
184 current_function_name_declared flagging.
185 (expand_stmt): Don't emit unused local statics.
186 * typeck.c (decay_conversion): Don't treat __FUNCTION__ decls
187 specially.
188
2abda418
NS
1892000-03-08 Nathan Sidwell <nathan@codesourcery.com>
190
191 * typeck.c (convert_for_assignment): Don't look at array
192 initializer.
193 * call.c (convert_like_real): Likewise.
194
15f1a795
JM
1952000-03-07 Jason Merrill <jason@casey.cygnus.com>
196
1c089156
JM
197 Add initial support for '\uNNNN' specifier.
198 * lex.c (read_ucs): New fn.
199 (readescape, skip_white_space): Call it.
200 (is_extended_char, is_extended_char_1): New fns.
201 (utf8_extend_token): New fn, #if 0'd out.
202 (real_yylex): Treat extended chars like letters.
203
15f1a795
JM
204 * search.c (note_debug_info_needed): Walk the bases even if we
205 weren't deferring the type itself.
206
3cce094d
KG
2072000-03-07 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
208
209 * decl2.c (finish_objects): Constify a char*.
210
211 * method.c (emit_thunk): Likewise.
212
55df0175
NS
2132000-03-06 Nathan Sidwell <nathan@codesourcery.com>
214
215 * typeck.c (dubious_conversion_warnings): Look through
216 REFERENCE_TYPE.
217
efd3d4a6
RK
218Mon Mar 6 08:46:47 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
219
05bccae2
RK
220 * class.c (dfs_modify_vtables): I is now unsigned.
221 (check_bitfield_decl): Use tree_int_cst_sgn and compare_tree_int.
222 (build_base_field): Add casts of TREE_INT_CST_LOW to HOST_WIDE_INT.
223 * error.c (dump_expr): Cast TREE_INT_CST_HIGH to unsigned.
224 * init.c (build_vec_init): Cast TREE_INT_CST_LOW to HOST_WIDE_INT.
225 * method.c (build_overload_int): Cast TREE_INT_CST_HIGH to unsigned.
226 * typeck.c (build_binary_op, case TRUNC_DIV_EXPR):
227 Call integer_all_onesp.
228 * typeck2.c (process_init_constructor): Use compare_tree_int.
229
efd3d4a6
RK
230 * lang-specs.h (as): Don't call if -syntax-only.
231
64dc53f3
MM
2322000-03-06 Mark Mitchell <mark@codesourcery.com>
233
234 * expr.c (cplus_expand_expr, case STMT_EXPR): Don't set
235 RTL_EXPR_HAS_NO_SCOPE after all.
236
971cbc14
MM
2372000-03-05 Mark Mitchell <mark@codesourcery.com>
238
239 * expr.c (cplus_expand_expr, case STMT_EXPR): Use
240 expand_start_stmt_expr and expand_end_stmt_expr directly. Set
241 RTL_EXPR_HAS_NO_SCOPE.
242
243 * pt.c (instantiate_decl): Clear TI_PENDING_TEMPLATE_FLAG a little
244 later.
245
246 * dump.c (dequeue_and_dump): Dump SCOPE_NO_CLEANUPS_P.
247
c3f08228
NS
2482000-03-05 Nathan Sidwell <nathan@codesourcery.com>
249
250 * call.c (convert_like): Macrofy.
251 (convert_like_with_context): New macro.
252 (convert_like_real): Renamed from convert_like. Add calling
253 context parameters, for diagnostics. Add recursive flag. Call
254 dubious_conversion_warnings for outer conversion.
255 (build_user_type_conversion): Use convert_like_with_context.
256 (build_over_call): Likewise. Don't warn about dubious
257 conversions here. Adjust convert_default_arg calls.
258 (convert_default_arg): Add context parameters for diagnostics.
259 Pass throught to convert_like_with_context.
260 * cp-tree.h (convert_default_arg): Add context parameters.
261 (dubious_conversion_warnings): Prototype new function.
262 * typeck.c (convert_arguments): Adjust convert_default_arg call.
263 (dubious_conversion_warnings): New function, broken
264 out of convert_for_assignment.
265 (convert_for_assignment): Adjust.
266
6db20143
JM
2672000-03-03 Jason Merrill <jason@casey.cygnus.com>
268
269 * decl2.c (key_method): Break out from...
270 (import_export_vtable, import_export_class): ...here.
271
272 * decl.c (finish_function): Don't mess with flag_keep_inline_functions.
273 * decl2.c (finish_vtable_vardecl): Don't check decl_function_context.
274
275 * search.c (note_debug_info_needed, dfs_debug_mark,
276 dfs_debug_unmarkedp): Uncomment. Adjust for new scheme.
277 * decl2.c (finish_vtable_vardecl): Call note_debug_info_needed.
278
920f9474
NS
2792000-03-03 Nathan Sidwell <nathan@codesourcery.com>
280
281 * decl.c (cp_finish_decl): Remove obsolete obstack comments, fix
282 typos.
283
834c6dff
MM
2842000-03-02 Mark Mitchell <mark@codesourcery.com>
285
286 * cp-tree.h (TYPE_NEEDS_DESTRUCTOR): Rename to ...
287 (TYPE_HAS_NONTRIVIAL_DESTRUCTOR): ... this.
288 (TYPE_HAS_TRIVIAL_DESTRUCTOR): New macro.
289 (lang_type): Split gets_new into has_new and has_array_new.
290 (TYPE_VEC_NEW_USES_COOKIE): Use TYPE_HAS_NONTRIVIAL_DESTRUCTOR.
291 (TYPE_GETS_NEW): Split into ...
292 (TYPE_HAS_NEW_OPERATOR): ... this, and ...
293 (TYPE_HAS_ARRAY_NEW_OPERATOR): ... this.
294 (DECL_ARRAY_DELETE_OPERATOR_P): New macro
295 (build_op_new_call): Don't declare.
296 (build_new_1): Likewise.
297 * call.c (build_op_new_call): Remove.
298 * class.c (check_bases): Use TYPE_HAS_NONTRIVIAL_DESTRUCTOR
299 instead of TYPE_NEEDS_DESTRUCTOR.
300 (finish_struct_bits): Likewise.
301 (add_implicitly_declared_members): Likewise.
302 (check_field_decl): Likewise.
303 (check_methods): Set TYPE_VEC_DELETE_TAKES_SIZE here, and set it
304 correctly under the new ABI.
305 * decl.c (start_decl_1): Use TYPE_HAS_NONTRIVIAL_DESTRUCTOR
306 instead of TYPE_NEEDS_DESTRUCTOR.
307 (initialize_local_var): Likewise.
308 (destroy_local_var): Likewise.
309 (cp_finish_decl): Likewise.
310 (register_dtor_fn): Likewise.
311 (grok_op_properties): Set TYPE_HAS_NEW_OPERATOR and
312 TYPE_HAS_ARRAY_NEW_OPERATOR, not TYPE_HAS_NEW. Don't set
313 TYPE_VEC_DELETE_TAKES_SIZE here.
314 (xref_basetypes): Set TYPE_HAS_NEW_OPERATOR and
315 TYPE_HAS_ARRAY_NEW_OPERATOR, not TYPE_HAS_NEW.
316 (store_parm_decls): Use TYPE_HAS_NONTRIVIAL_DESTRUCTOR.
317 (finish_destructor_body): Likewise.
318 (maybe_build_cleanup_1): Likewise.
319 * decl2.c (do_static_destruction): Likewise.
320 * init.c (build_new_1): Make it static.
321 (perform_member_init): Use TYPE_HAS_NONTRIVIAL_DESTRUCTOR.
322 (expand_cleanup_for_base): Likewise.
323 (get_cookie_size): New function.
324 (build_new_1): Handle array-new cookies correctly under the new
325 ABI.
326 (build_vec_delete_1): Likewise.
327 (build_vec_init): Use TYPE_HAS_NONTRIVIAL_DESTRUCTOR.
328 (build_delete): Likewise.
329 (build_vec_delete): Handle array-new cookies correctly under the new
330 ABI.
331 * lex.c (do_identifier): Use TYPE_HAS_NONTRIVIAL_DESTRUCTOR.
332 * pt.c (instantiate_class_template): Set TYPE_HAS_NEW_OPERATOR and
333 TYPE_HAS_ARRAY_NEW_OPERATOR.
334 * ptree.c (print_lang_type): Check them.
335 * search.c (context_for_name_lookup): Fix typo in comment.
336 (tree_has_any_destructor_p): Use TYPE_HAS_NONTRIVIAL_DESTRUCTOR.
337 * tree.c (break_out_cleanups): Likewise.
338 (build_cplus_array_test_1): Likewise.
339 (cp_build_qualified_type_real): Likewise.
340 * typeck.c (complete_type): Likewise.
341
342 * g++spec.c (lang_specific_driver): Add -fnew-abi at the start of
343 the command-line, not the end.
344
06f07977
JM
3452000-03-01 Jason Merrill <jason@casey.cygnus.com>
346
347 * pt.c (instantiate_decl): Clear TI_PENDING_TEMPLATE_FLAG.
348
e97f22c9
TT
3492000-03-02 Tom Tromey <tromey@cygnus.com>
350
351 * cp-tree.h (build_java_class_ref): Declare.
352 * init.c (build_java_class_ref): No longer static.
353 * except.c (expand_throw): Generate a Java-style `throw' if the
354 thrown object is a "Java" object.
355 (initialize_handler_parm): Generate a Java-style lookup of
356 exception info if the caught object is a "Java" object.
357 (catch_language, catch_language_init): New globals.
358 (decl_is_java_type): New function.
359 (expand_start_catch_block): Don't call push_eh_info() or
360 push_eh_cleanup() when handling a Java-style "catch". Pass Java
361 class reference to build_catch_block.
362
21318741
RK
363Thu Mar 2 13:32:01 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
364
365 * typeck.c (comptypes): Treat sizetype like its language equivalent.
366
2bfa73e4
BS
3672000-03-01 Bernd Schmidt <bernds@cygnus.co.uk>
368
369 * typeck.c (maybe_warn_about_returning_address_of_local): Reorganize
370 to merge reference/pointer code and fix incorrect warnings.
371
aa1e6de6
JM
3722000-02-29 Jason Merrill <jason@casey.cygnus.com>
373
e185aa16
JM
374 * search.c (protected_accessible_p): Use context_for_name_lookup.
375
aa1e6de6 376 * init.c (construct_virtual_bases): Fix thinko.
e185aa16 377 * typeck.c (expand_ptrmemfunc_cst): Fix thinko.
aa1e6de6 378
00262c8a
ML
3792000-03-01 Martin von Loewis <loewis@informatik.hu-berlin.de>
380
381 * decl.c (current_function_decl): Move to toplev.c.
382
8d3631f8
NS
3832000-02-29 Nathan Sidwell <nathan@codesourcery.com>
384
385 * pt.c (fn_type_unification): Unify return type, whenever
386 provided.
387 (get_bindings_real): Only pass return type when necessary.
388 Remove explicit return type check.
389 * class.c (resolve_address_of_overloaded_function): Pass desired
390 return type to fn_type_unification.
391
9df2c88c
RK
392Mon Feb 28 08:15:23 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
393
394 * class.c (build_vtbl_or_vbase_field, check_methods): Don't clear
395 DECL_FIELD_SIZE.
396 (check_bitfield_decl, check_field_decls): Set DECL_SIZE, not
397 DECL_FIELD_SIZE.
398 * rtti.c (expand_class_desc): Likewise.
399 * cp-tree.h (DECL_INIT_PRIORITY): Use underlying union name.
400 (THUNK_VCALL_OFFSET): Likewise.
401 (THUNK_DELTA): Reflect changes in ../tree.h.
402
d7cca31e
JM
4032000-02-28 Jason Merrill <jason@casey.cygnus.com>
404
405 * search.c (protected_accessible_p): Also allow the access if
406 the member is public in DERIVED. Lose TYPE parm.
407 (friend_accessible_p): Lose TYPE parm.
408 (accessible_p): Adjust.
409
fed3cef0
RK
410Sun Feb 27 16:40:33 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
411
412 * class.c (dfs_build_vtable_offset_vtbl_entries): Don't use size_binop
413 on things that are not sizes; ssize_binop deleted.
414 Call size_diffop when appropriate.
415 (dfs_build_vcall_offset_vtbl_entries): Likewise.
416 (build_primary_vtable, build_secondary_vtable): Likewise.
417 (dfs_set_offset_for_unshared_vbases, dfs_modify_vtables): Likewise.
418 Variable I is HOST_WIDE_INT.
419 (get_vfield_offset): Pass proper types to size_binop.
420 (size_extra_vtbl_entries, layout_virtual_bases): Likewise.
421 (finish_struct_1): Likewise.
422 (skip_rtti_stuff): Arg N is now pointer to signed.
423 (layout_class_type): Use size_zero_node.
424 * cp-tree.h (skip_rtti_stuff): Arg N is pointer to signed.
425 * cvt.c (cp_convert_to_pointer): Pass proper types to size_binop.
426 * decl.c (complete_arry_type): Pass proper types to size_binop.
427 (xref_basetypes): BINFO_OFFSET is sizetype.
428 * error.c (dump_expr): Don't use size_binop non-sizes.
429 * expr.c (cplus_expand_constant): Pass proper types to size_binop.
430 * init.c (construct_virtual_bases): Fix type error.
431 (build_vec_delete_1): Pass proper type to size_binop and don't
432 fold result.
433 * lex.c (cp_make_lang_type): BINFO_OFFSET is sizetype.
434 * rtti.c (get_base_offset): Pass proper type to size_binop.
435 * search.c (dfs_find_vbases): Fix type error.
436 (expand_upcast_fixups): Arg to skip_rtti_stuff is pointer to signed.
437 (dfs_get_vbase_types): BINFO_OFFSET is sizetype.
438 * tree.c (debug_binfo): Variable N is signed.
439 Use HOST_WIDE_INT_PRINT_DEC.
440 * typeck.c (comptypes): sizetype is same as equivalent integer type.
441 (c_sizeof, c_sizeof_nowarn, expr_sizeof): Use TYPE_SIZE_UNIT,
442 size_one_node and size_zero_node.
443 (c_alignof): Use size_one_node.
444 (build_component_addr): Pass proper types to size_binop.
445 (expand_ptrmemfunc_cst): Don't use size_binop on non-sizes.
446
aa52c1ff
JM
4472000-02-26 Jason Merrill <jason@casey.cygnus.com>
448
449 Implement class scope using-declarations for functions.
450 * class.c (handle_using_decl): Call add_method for used functions.
451 Use IDENTIFIER_CLASS_VALUE to check for conflicts.
452 (add_method): Used functions are hidden by local functions.
453 (check_bases_and_members): Handle using-decls before finalizing
454 CLASSTYPE_METHOD_VEC.
455 * call.c (add_function_candidate): Add ctype parm; if non-zero,
456 override the type of 'this' accordingly.
457 (add_template_candidate, add_template_candidate_real): Add ctype parm.
458 (convert_class_to_reference, build_user_type_conversion_1,
459 build_new_function_call, build_object_call, build_new_op,
460 build_new_method_call): Pass ctype parm.
461
462 * search.c (lookup_member): Put rval_binfo, not basetype_path, in
463 the baselink.
464 * call.c (convert_class_to_reference, build_user_type_conversion_1,
465 build_new_function_call, build_object_call, build_new_op,
466 build_new_method_call, build_op_delete_call): Don't get basetype_path
467 from a baselink.
468 * typeck.c (build_component_ref): Likewise.
469 * init.c (build_offset_ref): Likewise.
470 (resolve_offset_ref): Don't call enforce_access.
471 Call build_scoped_ref.
472 * typeck2.c (build_scoped_ref): Simplify. Do nothing if it
473 would cause an error or if -pedantic.
474 * class.c (alter_access): Lose binfo parm.
475
22e92ac3
MM
4762000-02-26 Mark Mitchell <mark@codesourcery.com>
477
478 * semantics.c (simplify_aggr_init_exprs_p): Don't walk into
479 types.
480
42789557
AM
4812000-02-25 Alfred Minarik <a8601248@unet.univie.ac.at>
482
483 * rtti.c (get_vmi_pseudo_type_info): Move __vmi_class_type_info
484 pseudo_type_info creation into the std namespace
485
27d26ee7
MM
4862000-02-26 Mark Mitchell <mark@codesourcery.com>
487
488 * cp-tree.h (DECL_NEEDED_P): Tweak to correct usage before EOF.
489 (import_export_class): Remove declaration.
490 * decl2.c (import_export_class): Make it static.
491 * dump.c (dequeue_and_dump): Handle PREDECREMENT_EXPR,
492 PREINCREMENT_EXPR, POSTDECREMENT_EXPR, POSTINCREMENT_EXPR,
493 EXPR_WITH_FILE_LOCATION.
494 * lex.c (check_newline): Tweak filename/lineno setting.
495 * semantics.c (begin_while_stmt): Fix typo in comment.
496
ca888935
RK
497Sat Feb 26 19:50:23 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
498
363e6541
RK
499 * lang-options.h (-fmessage-length=): Add missing option.
500
ca888935
RK
501 * Make-lang.in (CXX_SRCS): Add .h files and sort list.
502
f95e46b9
ZW
5032000-02-26 Zack Weinberg <zack@wolery.cumb.org>
504
505 * Make-lang.in: Delete refs to LIBGCC2_DEPS.
506
3431f196
JW
507Fri Feb 25 14:52:33 2000 Jim Wilson <wilson@cygnus.com>
508
509 * optimize.c (expand_call_inline): Emit the return label before
510 evaluating the return value.
511
574a0ef5
MM
5122000-02-24 Mark Mitchell <mark@codesourcery.com>
513
514 * lex.c (check_newline): Use push_srcloc and pop_srcloc, rather
515 than duplicating functionality here.
516 * optimize.c: Include input.h.
517 (expand_call_inline): Use push_srcloc and pop_srcloc.
518 * parse.y (maybe_cv_qualifier): Remove calls to emit_line_note.
519 * parse.c: Regenerated.
520 * Makefile.in (lex.o): Depend on input.h.
521 (optimize.o): Likewise.
522
41cbc04c
NS
5232000-02-24 Nathan Sidwell <nathan@codesourcery.com>
524
525 * decl.c (grokdeclarator): Diagnose qualifiers on non-member
526 function type, rather than ICE.
527
9fc336c7
JM
5282000-02-23 Jason Merrill <jason@casey.cygnus.com>
529
530 * decl.c (grokdeclarator): Call decl_type_access_control.
531 * parse.y (parse_end_decl): Don't call decl_type_access_control if
532 decl is null.
533
e867a179
NS
5342000-02-23 Nathan Sidwell <nathan@codesourcery.com>
535
536 * decl.c (decls_match): Remove obsolete static member nadgering.
537
cab1f180
ML
538