📄 changelog
字号:
not squangling.1999-06-04 Jason Merrill <jason@yorick.cygnus.com> * semantics.c (finish_if_stmt_cond): Copy cond to permanent_obstack. (finish_while_stmt_cond, finish_do_stmt, finish_for_cond): Likewise.1999-05-30 Mark Mitchell <mark@codesourcery.com> * lex.c (make_lang_type): Create TYPE_BINFO for TEMPLATE_TYPE_PARMs just like for non-template types.1999-05-28 Nathan Sidwell <nathan@acm.org> * decl.c (complete_array_type): Allocate off same obstack. Fix DO_DEFAULT comment to match reality.1999-05-22 Mark Mitchell <mark@codesourcery.com> * tree.c (mapcar): Handle NON_LVALUE_EXPR.1999-05-21 Mark Mitchell <mark@codesourcery.com> * typeck.c (build_ptrmemfunc): Handle PTRMEM_CSTs carefully to reveal optimization opportunities.1999-05-20 Mark Mitchell <mark@codesourcery.com> * decl.c (grokdeclarator): Don't treat [] as indicating a zero-sized array in a typedef. * call.c (build_object_call): Don't look at DECL_NAME for a type. (pt.c): Or CP_TYPE_QUALS for an ERROR_MARK. (typeck.c): Or TYPE_MAIN_VARIANT for a type.1999-05-20 Jason Merrill <jason@yorick.cygnus.com> * tree.c (lvalue_p_1): A NOP_EXPR can be an lvalue. (build_cplus_new): Make sure that what we return is of the right type.1999-05-20 Mark Mitchell <mark@codesourcery.com> * cp-tree.h (make_ptrmem_cst): New function. * expr.c (cplus_expand_constant): Split out from ... (cplus_expand_expr): Here. Use cplus_expand_constant. (init_cplus_expand): Set lang_expand_constant. * pt.c (convert_nontype_argument): Use make_ptrmem_cst. * tree.c (make_ptrmem_cst): Define. * typeck.c (unary_complex_lvalue): Use make_ptrmem_cst. * typeck2.c (initializer_constant_valid_p): Use make_ptrmem_cst.1999-05-19 Mark Mitchell <mark@codesourcery.com> * decl2.c (start_static_storage_duration_function): Fix comment. (finish_file): Create static storage duration functions lazily.Wed May 19 02:50:53 1999 Arvind Sankar <arvinds@mit.edu> * gxxint.texi: Fix typo.1999-05-18 Jason Merrill <jason@yorick.cygnus.com> * call.c (joust): Compare the types of the conv ops, not the target types of the conversions.Tue May 18 00:21:34 1999 Zack Weinberg <zack@rabi.phys.columbia.edu> * lang-specs.h: Define __GNUC__ and __GNUC_MINOR__ only if -no-gcc was not given.1999-05-17 Mark Mitchell <mark@codesourcery.com> * cp-tree.def (TEMPLATE_ID_EXPR): Update documentation. * decl.c (grokfndecl): Don't allow inline declarations of friend template specializations, or friend template specializations with default arguments. * pt.c (tsubst): Handle substitution into array types that does not yield a fixed upper bound, even when not processing a template. (tsubst_copy): Deal with the fact that the second operand to a TEMPLATE_ID_EXPR may be NULL_TREE, a TREE_LIST, or a TREE_VEC. * search.c (marked_pushdecls_p): Don't descend into TEMPLATE_TYPE_PARMs and the like. (unmarked_pushdecls_p): Likewise. * call.c (build_over_call): Don't throw away initializations/copies of empty classes; use MODIFY_EXPR and INIT_EXPR as for non-empty classes. * class.c (finish_struct_1): Put the padding byte for an empty class on the TYPE_NONCOPIED_PARTS list for the class.1999-05-16 Mark Mitchell <mark@codesourcery.com> * decl2.c (build_expr_from_tree): Handle COMPONENT_REFs that indicate a reference to a field that is a qualified name.1999-05-16 Jason Merrill <jason@yorick.cygnus.com> * decl2.c (finish_objects): Don't use .?tors.* if we don't have ASM_OUTPUT_CONSTRUCTOR. * friend.c (do_friend): Add attrlist arg. Remove support for getting a non-decl as 'decl'. * decl.c (grokfndecl): Remove attrlist arg. Don't set attrs or rtl. (grokdeclarator): Adjust. * cp-tree.h: Adjust.1999-05-16 Mark Mitchell <mark@codesourcery.com> * cp-tree.h (permanent_p): New function. * init.c (build_new_1): Use mapcar, not copy_node, to copy a possibly complex tree node. * tree.c (mapcar): Adjust comments, and follow coding standards in conditional. (permanent_p): New function.1999-05-13 Per Bothner <bothner@cygnus.com> * class.c (push_lang_context): Turn off DECL_IGNORED_P for primitive Java types, if we actually see `extern "Java"'.1999-05-10 18:21 -0400 Zack Weinberg <zack@rabi.phys.columbia.edu> * lang-specs.h: Pass -$ to the preprocessor.1999-05-10 Jason Merrill <jason@yorick.cygnus.com> * init.c (build_offset_ref): Wrap baselinks in OFFSET_REF, too. Don't bother wrapping an OFFSET_TYPE around unknown_type_node. (resolve_offset_ref): Don't handle a raw baselink. * cvt.c (build_expr_type_conversion): Likewise. * typeck.c (decay_conversion, build_c_cast, convert_for_assignment, convert_for_initialization): Likewise. * class.c (instantiate_type): Handle seeing a baselink under an OFFSET_REF. * error.c (dump_expr): Likewise. * pt.c (for_each_template_parm): Likewise. (resolve_overloaded_unification): Likewise. * tree.c (is_overloaded_fn, really_overloaded_fn): Likewise. * typeck.c (expr_sizeof): Also complain about other permutations of overloaded functions.1999-05-07 Jason Merrill <jason@yorick.cygnus.com> * init.c (resolve_offset_ref): Don't return a raw method. Use BASELINK_P. * typeck.c (decay_conversion): Don't handle a raw method. Resolve all OFFSET_REFs. (get_member_function_from_ptrfunc): 0 is a valid vtable index. (build_binary_op_nodefault): Handle resolving overloaded fns. Use same_type_p for pmf bits. Don't use build_binary_op to compare raw pointers to methods. (convert_for_assignment): Check for OFFSET_REF, not OFFSET_TYPE, to decide when to call resolve_offset_ref. (build_c_cast, convert_for_initialization): Likewise. * cvt.c (build_expr_type_conversion): Likewise.1999-05-06 Nathan Sidwell <nathan@acm.org> * call.c (build_new_method_call): Use TYPE_MAIN_VARIANT of class.1999-05-05 Mark Mitchell <mark@codesourcery.com> * decl2.c (start_objects): Don't let static constructors and destructors get inlined. * parse.y (nested_name_specifier): Make sure ordinary types are complete, just like template types. * parse.c: Regenerated. * pt.c (check_explicit_specialization): Improve error messages.1999-05-04 Martin von L鰓is <loewis@informatik.hu-berlin.de> * typeck.c (string_conv_p): Use same_type_p to check whether we try to convert between char and wchar_t.1999-05-03 Mark Mitchell <mark@codesourcery.com> * search.c (lookup_field_r): Set the TREE_TYPE of an ambiguous lookup to error_mark_node here. (lookup_member): Revise documentation. Add comments. Don't set the TREE_TYPE to error_mark_node here, and don't build up an extra TREE_LIST for ambiguous lookups. (setup_class_bindings): Adjust accordingly. (push_class_decls): Revise out-of-date comments. * typeck.c (build_const_cast): Tighten checks for legality.1999-05-02 Martin von L鰓is <loewis@informatik.hu-berlin.de> * init.c (build_member_call): Lookup names coming from namespace-scoped LOOKUP_EXPR.1999-05-03 Jim Blandy <jimb@zwingli.cygnus.com> * gxxint.texi: Add documentation for 'I'.1999-05-02 Martin von L鰓is <loewis@informatik.hu-berlin.de> * tinfo.cc (operator==): Qualify type_info with std::.1999-05-02 Mark Mitchell <mark@codesourcery.com> * cp-tree.h (lang_decl_flags): Remove comdat. Updated dummy. (DECL_COMDAT): Remove definition.1999-05-01 Mark Mitchell <mark@codesourcery.com> * decl.c (wrapup_globals_for_namespace): Fix thinko in previous change.1999-04-30 Mark Mitchell <mark@codesourcery.com> * class.c (build_vtable): Use build_lang_decl when building vtables, not just build_decl. (prepare_fresh_vtable): Likewise. * decl.c (wrapup_globals_for_namespace): Mark vtables as DECL_EXTERNAL when calling wrapup_global_declarations. * decl2.c (priority_info_s): Add initializations_p and destructions_p members. (finish_vtable_vardecl): Use TREE_SYMBOL_REFERENCED, not TREE_USED, when deciding what vtables to write out. (ssdf_decls): New variable. (ssdf_decls_used): Likewise. (start_static_storage_duration_function): Deal with being called multiple times. Avoid inlining this function. (generate_inits_for_priority): Deal with reuse of priority map. (get_priority_info): Clear initializations_p and destructions_p. (do_static_initialization): Tweak comment. (do_static_destruction): Likewise. Fix condition on sentries for destruction. (generate_ctor_or_dtor_function): Call all of the static storage duration functions. (generate_ctor_or_dtor_function_for_priority): Check initializations_p and destructions_p to see what priorities need initialization functions. (finish_file): Rework to generate multiple static storage duration functions, rather than just one. * typeck.c (build_const_cast): Tweak last change to handle templates correctly. * typeck.c (build_const_cast): Disallow use of const_cast to anything but a pointer or reference type.1999-04-30 Nathan Sidwell <nathan@acm.org> * decl.c (cp_finish_decl): Don't permit arrays of abstract or signature type.1999-04-29 Mark Mitchell <mark@codesourcery.com> * decl2.c (do_static_destruction): Remove obsolete FIXME comment. (finish_file): Indent comments properly.1999-04-29 Richard Henderson <rth@cygnus.com> * decl2.c (do_static_initialization): Call do_pending_stack_adjust. (do_static_destruction): Likewise.1999-04-29 Nathan Sidwell <nathan@acm.org> * cp-tree.h (TYPE_NOTHROW_P): New macro. * decl2.c (delete_sanity): Warn on deleting void *. * init.c (build_new_1): Use TYPE_NOTHROW_P. * typeck.c (c_expand_return): cp_pedwarn on returning NULL from throwing operator new.1999-04-28 Nathan Sidwell <nathan@acm.org> * cp-tree.h (build_component_addr): Remove prototype. * typeck.c (build_component_addr): Make static. Remove MSG argument. (build_component_addr): Remove MSG parameter, clean up comment. (build_x_function_call): Use cp_error. (build_unary_op): Adjust call of build_component_addr. 1999-04-28 Mark Mitchell <mark@codesourcery.com> * pt.c (tsubst_friend_class): Check for NULL.Wed Apr 28 11:42:22 1999 Andreas Schwab <schwab@issan.cs.uni-dortmund.de> * search.c (binfo_for_vtable): Initialize bfvi.var.1999-04-27 Nathan Sidwell <nathan@acm.org> * rtti.c (build_x_typeid): Check rtti is enabled.1999-04-26 Mark Mitchell <mark@codesourcery.com> * search.c (is_subobject_of_p): Make sure we're looking at the right baseclasses.1999-04-26 Marc Espie <espie@cvs.openbsd.org> * Make-lang.in (cplib2.ready): Don't depend on phony targets.1999-04-23 Mark Mitchell <mark@codesourcery.com> * decl2.c (finish_file): Tweak handling of extern inlines so that they are not unnecessarily put out. * search.c (is_subobject_of_p): Handle TEMPLATE_TYPE_PARMs and such as base classes.1999-04-22 Brendan Kehoe <brendan@cygnus.com> * tree.c (build_exception_variant): Fix typo: use the chain of U, not trying V, while cycling through U.1999-04-22 Mark Mitchell <mark@codesourcery.com> * cp-tree.h (lang_decl_flags): Remove returns_first_arg and preserves_first_arg. Enlarge dummy accordingly. (DECL_TINFO_FN_P): New macro. (SET_DECL_TINFO_FN_P): Likeiwse. (DECL_RETURNS_FIRST_ARG): Remove. (DECL_PRESERVES_THIS): Likewise. (DECL_INIT_PRIORITY): New macro. (finish_struct_1): Change prototype. (cat_namespace_levels): Remove prototype. (vtable_decl_p): New prototype. (vtype_decl_p): Likewise. (sigtable_decl_p): Likewise. (walk_globals_pred): New typedef. (walk_globals_fn): Likewise. (walk_globals): New prototype. (walk_namespaces_fn): New typedef. (walk_namespaces): New prototype. (wrapup_globals_for_namespace): Likewise. (walk_vtables): Remove prototype. (walk_sigtables): Likewise. (instantiate_pending_templates): New prototype. * class.c (finish_struct_1): Don't return a value. * decl.h (pending_statics): Remove declaration. * decl.c (walk_namespaces_r): New function. (walk_globals_r): Likewise. (vtable_decl_p): Likewise. (vtype_decl_p): Likewise. (sigtable_decl_p): Likewise. (walk_namespaces): Likewise. (walk_globals_data): New type. (walk_globals): New function. (wrapup_globals_for_namespace): Likewise. (expand_static_init): Remove assertion. Remove redundancy in conditional. Don't put static data members in static_aggregates Tidy. (finish_function): Remove redundancy in conditional. Don't set DECL_RETURNS_FIRST_ARG.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -