📄 changelog.1
字号:
Thu Jul 20 01:43:10 1995 Mike Stump <mrs@cygnus.com> * init.c (expand_aggr_init): Assume LOOKUP_ONLYCONVERTING if init is not a parameter list (TREE_LIST). (expand_default_init): If LOOKUP_ONLYCONVERTING is set, then set LOOKUP_NO_CONVERSION so that we don't allow two-level conversions, but don't set it otherwise.Wed Jul 19 20:32:01 1995 Mike Stump <mrs@cygnus.com> * init.c (expand_default_init): Don't allow two-level conversions during construction.Wed Jul 19 18:06:37 1995 Mike Stump <mrs@cygnus.com> * gc.c (build_headof): The type of dyncasting to a pointer to cv void, should be pointer to cv void.Wed Jul 19 17:25:43 1995 Mike Stump <mrs@cygnus.com> * gc.c (build_dynamic_cast): Allow casting in const.Wed Jul 19 16:34:27 1995 Mike Stump <mrs@cygnus.com> * typeck.c (build_const_cast): If we are passed error_mark_node, return it.Wed Jul 19 15:24:48 1995 Brendan Kehoe <brendan@lisa.cygnus.com> * class.c (push_nested_class): Make sure TYPE is non-nil. * cvt.c (type_promotes_to): Watch for error_mark_node on the incoming TYPE.Wed Jul 19 13:23:12 1995 Gerald Baumgartner <gb@alexander.cs.purdue.edu> * cp-tree.h (SIGTABLE_VT_OFF_NAME): Renamed from SIGTABLE_OFFSET_NAME. (SIGTABLE_VB_OFF_NAME): New macro. (vt_off_identifier): Renamed from offset_identifier. (vb_off_identifier): Added extern declaration. * decl.c (vt_off_identifier): Renamed from offset identifier. (vb_off_identifier): New variable to hold the identifier for the sigtable field vb_off. (init_decl_processing): Initialize vb_off_identifier. Renamed vt_off_identifier from offset_identifier. * sig.c (build_signature_method_call): Renamed offset_identifier and local variable offset to vt_off_identifer and vt_off, respecitively. * sig.c (build_signature_table_constructor): Renamed offset to vt_off. * decl.c (init_decl_processing): Add vb_off field to sigtable_entry_type. Reorder fields so that pfn gets properly aligned at a 64 bit boundary on the Alpha. * sig.c (build_signature_table_constructor): Build the constructor according to the new layout. Set the vb_off field to -1 for now. * decl.c (init_decl_processing): Align sigtable_entry_type on word boundaries instead of double word boundaries to save space.Tue Jul 18 16:58:37 1995 Mike Stump <mrs@cygnus.com> * cvt.c (cp_convert): Always call build_cplus_new for a ctor.Tue Jul 18 14:24:53 1995 Brendan Kehoe <brendan@lisa.cygnus.com> * parse.y (opt.component_decl_list): Only forbid private/protected in anonymous unions. We need to make this know when the type is defined for an object, to not give the error.Mon Jul 17 14:22:44 1995 Brendan Kehoe <brendan@lisa.cygnus.com> * parse.y (opt.component_decl_list): Don't allow access control as private or protected for union members.Sun Jul 16 14:01:00 1995 Jim Wilson <wilson@chestnut.cygnus.com> * lex.c (check_newline): For 'p' case, move goto skipline line to before end brace for 'pragma'.Fri Jul 7 13:55:58 1995 Mike Stump <mrs@cygnus.com> * g++.1: Tiny updates.Fri Jul 7 13:05:20 1995 Mike Stump <mrs@cygnus.com> * decl.c (cp_finish_decl): Only destruct local static variables if they are constructed, and only construct the first time control passes completely through its declaration (if not initialized with a constant-expression). (expand_static_init): Likewise.Wed Jul 5 14:05:04 1995 Brendan Kehoe <brendan@lisa.cygnus.com> * typeck.c (comptypes, case OFFSET_REF): If either offset basetype is a TEMPLATE_TYPE_PARM, give a match.Fri Jun 30 15:42:57 1995 Mike Stump <mrs@cygnus.com> * method.c (build_overload_value): Handle encoding of null pointer constants (or any pointer with a constant numeric value) for templates.Fri Jun 30 13:45:51 1995 Brendan Kehoe <brendan@lisa.cygnus.com> * call.c (convert_harshness): Add QUAL_CODE when we're faced with const vs non-const for void conversions.Fri Jun 30 10:19:52 1995 Mike Stump <mrs@cygnus.com> * except.c (expand_start_all_catch): Fix problem with finding an outer nested try block when there is no code to separate it from an inner try block.Fri Jun 30 02:22:26 1995 Mike Stump <mrs@cygnus.com> * search.c (dfs_pushdecls): Consume 2 or 3 orders of magnitude less memory please when virtual bases are used.Thu Jun 29 19:03:47 1995 Mike Stump <mrs@cygnus.com> * class.c (build_vbase_path): Avoid testing things that cannot be null to see if they are null. * cvt.c (convert_pointer_to_vbase): Remove code that doesn't work. * decl.c (finish_function): Pass a type into the new convert_pointer_to_vbase instead of a binfo. * search.c (convert_pointer_to_vbase): Rewritten to use get_vbase and convert_pointer_to_real. (expand_indirect_vtbls_init): Use convert_pointer_to_vbase instead of the more cryptic call to get_vbase.Thu Jun 29 09:35:05 1995 Mike Stump <mrs@cygnus.com> * decl.c (BOOL_TYPE_SIZE): Fix broken SLOW_BYTE_ACCESS check.Thu Jun 29 03:43:55 1995 Jason Merrill <jason@phydeaux.cygnus.com> * pt.c (instantiate_template): Don't strip 'this' twice. * pt.c (coerce_template_parms): Allow null pointer constants. * decl.c (revert_static_member_fn): But only if DECL_ARGUMENTS is set.Wed Jun 28 18:39:03 1995 Jason Merrill <jason@phydeaux.cygnus.com> * decl.c (revert_static_member_fn): Also remove 'this' from DECL_ARGUMENTS. * decl2.c (check_classfn): Don't revert this function until we get a match.Wed Jun 28 14:07:27 1995 Brendan Kehoe <brendan@lisa.cygnus.com> * parse.y (component_decl): Clear PREFIX_ATTRIBUTES here.Wed Jun 28 11:05:13 1995 Mike Stump <mrs@cygnus.com> * decl2.c (finish_file): Handle global vector news. * init.c (build_new): Encode vector news so that later we will know how many elements there are.Mon Jun 26 13:38:06 1995 Jason Merrill <jason@phydeaux.cygnus.com> * expr.c (cplus_expand_expr): Don't mess with temp slots. * decl2.c (warn_if_unknown_interface): Don't crash if tinst_for_decl returns null. * decl2.c (check_classfn): Use revert_static_member_fn. * decl.c (revert_static_member_fn): Diagnose static member functions declared const or volatile. * decl2.c (grokfield): Check for missing default args here, too. (check_default_args): Function to do the checking. * decl.c (pushdecl): Use it. * decl.c (pushdecl): Don't warn about shadowing a member of `this' if there is no `this'.Sun Jun 25 11:34:25 1995 Jason Merrill <jason@phydeaux.cygnus.com> * call.c (build_method_call): Downgrade 'called before definition' to a warning, as it ought to go away after Monterey.Sat Jun 24 14:18:42 1995 Jason Merrill <jason@phydeaux.cygnus.com> * pt.c (coerce_template_parms): Don't do extra checking on pointer to member arguments. * class.c (finish_struct): const and reference members don't prevent a class from being an aggregate. * class.c (finish_struct): Signatures are always aggregates.Fri Jun 23 17:20:29 1995 Jason Merrill <jason@phydeaux.cygnus.com> * decl2.c (check_classfn): Improve error message. * pt.c (tsubst): Handle PROMOTE_PROTOTYPES.Thu Jun 22 01:50:42 1995 Jason Merrill <jason@phydeaux.cygnus.com> * typeck.c (comptypes): Don't ignore method quals. * class.c (finish_struct): Non-abstract virtuals are always USED. * decl.c (build_ptrmemfunc_type): The underlying union type isn't IS_AGGR_TYPE, either. * class.c (finish_struct): Use CLASSTYPE_NON_AGGREGATE instead. * cp-tree.h: Likewise. * cp-tree.h (lang_type): Add aggregate. (CLASSTYPE_AGGREGATE): New macro. (TYPE_NON_AGGREGATE_CLASS): Likewise. * class.c (finish_struct): Determine whether a class is an aggregate. * decl.c (cp_finish_decl): Check TYPE_NON_AGGREGATE_CLASS instead of TYPE_NEEDS_CONSTRUCTING. * typeck2.c (digest_init): Check TYPE_NON_AGGREGATE_CLASS for subobjects, too. * pt.c (tsubst, PARM_TYPE): Propagate DECL_ARTIFICIAL. * decl.c (start_function): For pre-parsed functions, layout all of the parm decls again. (grokvardecl): TREE_PUBLIC depends on DECL_THIS_EXTERN, not DECL_EXTERNAL. * pt.c (coerce_template_parms): Improve checking for invalid template parms.Wed Jun 21 12:01:16 1995 Brendan Kehoe <brendan@lisa.cygnus.com> * decl.c (grokdeclarator): Forbid declaration of a static member with the same name as its enclosing class.Mon Jun 19 10:28:14 1995 Jason Merrill <jason@phydeaux.cygnus.com> * decl.c (finish_function): Clear current_class_decl. * typeck.c (build_conditional_expr): Use convert (boolean_type_node instead of truthvalue_conversion. * class.c (finish_struct): A data member with the same name as the class doesn't suppress constructors.Fri Jun 16 18:11:39 1995 Gerald Baumgartner <gb@alexander.cs.purdue.edu> * decl.c (start_function): If current_class_decl is a signature pointer, don't dereference it but set C_C_D to current_class_decl.Fri Jun 16 17:06:28 1995 Jason Merrill <jason@phydeaux.cygnus.com> * decl.c (duplicate_decls): Complain about virtual functions redeclared to be inline.Fri Jun 16 13:20:38 1995 Mike Stump <mrs@cygnus.com> * decl.c (get_unique_name): New routine to name unnamed namespaces. (push_namespace): Use get_unique_name for naming unnamed namespaces.Thu Jun 15 15:00:41 1995 Jason Merrill <jason@phydeaux.cygnus.com> * parse.y: Call cplus_decl_attributes with prefix_attributes where appropriate.Wed Jun 14 19:24:49 1995 Mike Stump <mrs@cygnus.com> * search.c (get_vbase): New routine to switch hierarchies from the CLASSTYPE_VBASECLASSES to the normal one. (expand_indirect_vtbls_init): Use get_vbase to figure out how we want to convert to a vbase pointer.Mon Jun 12 17:50:30 1995 Jason Merrill <jason@phydeaux.cygnus.com> * pt.c (instantiate_class_template): Add the new instantiation to template_classes. (do_pending_expansions): Call instantiate_member_templates on all of the classes in template_classes.Mon Jun 12 12:36:59 1995 Mike Stump <mrs@cygnus.com> * decl.c (complete_array_type): Fill in the TYPE_DOMAIN of our TYPE_MAIN_VARIANT if it is not filled in. * init.c (build_delete): If the TYPE_DOMAIN is not set, give an error instead of core dumping.Mon Jun 12 10:41:40 1995 Jason Merrill <jason@phydeaux.cygnus.com> * call.c (can_convert): Also check for distance > 0. (can_convert_arg): Likewise. (user_harshness): Likewise.Fri Jun 9 19:17:21 1995 Jason Merrill <jason@phydeaux.cygnus.com> * g++.c (MATH_LIBRARY): Provide default. (main): Always link with the math library if we link with libstdc++. * decl.c (start_function): Complain about redefinition of a function even when the pending_inline version is compiled after the other version.Thu Jun 8 15:44:38 1995 Jason Merrill <jason@phydeaux.cygnus.com> * gc.c (build_dynamic_cast): Build up a reference to a parameter of aggregate type.Wed Jun 7 15:31:57 1995 Brendan Kehoe <brendan@lisa.cygnus.com> * init.c (build_vec_delete): Resolve an offset ref before we try to use it.Wed Jun 7 14:19:32 1995 Jason Merrill <jason@phydeaux.cygnus.com> * typeck.c (build_modify_expr): If the class lacks a constructor or assignment operator, return error_mark_node. (common_type): Use build_cplus_array_type.Tue Jun 6 09:41:27 1995 Mike Stump <mrs@cygnus.com> * class.c (dont_allow_type_definitions): New variable set when types cannot be defined. (finish_struct): Use it. * cp-tree.h (dont_allow_type_definitions): Define it. * parse.y (primary, handler_seq): Set it.Mon Jun 5 18:49:38 1995 Mike Stump <mrs@cygnus.com> * method.c (build_opfncall): Use DECL_CHAIN, not TREE_CHAIN for results from lookup_fnfields. Always give warning/error on bad code.Mon Jun 5 11:39:37 1995 Brendan Kehoe <brendan@lisa.cygnus.com> * init.c (member_init_ok_or_else): Don't allow initialization of an ancestor's member from within a constructor.Mon Jun 5 11:20:34 1995 Gerald Baumgartner <gb@alexander.cs.purdue.edu> * sig.c (build_signature_table_constructor): Use DECL_CONTEXT instead of DECL_CLASS_CONTEXT for calculating the vfield offset so abstract virtual functions are handled correctly. * sig.c (build_signature_table_constructor): Store the correct delta in signature table entries. It does not yet work for classes with virtual base classes as implementations of signatures. (build_signature_method_call): Add the delta to the object_ptr before generating the function call. * call.c (build_method_call): Make instance_ptr the signature pointer itself instead of dereferencing the optr. * sig.c (build_signature_method_call): Dereference the optr for the direct and virtual calls. * sig.c (build_signature_table_constructor): Make the tag for
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -