| Tue Dec 28 21:10:03 1993 Mike Stump <mrs@cygnus.com> |
| |
| * cp-init.c (expand_vec_init): Remove comptypes test, as it is too |
| harsh here. |
| |
| Tue Dec 28 13:42:22 1993 Mike Stump <mrs@cygnus.com> |
| |
| * cp-pt.c (do_pending_expansions): Decide to expand a template |
| member function, based upon it's class type, not the class type of |
| the first place it was declared. |
| |
| Tue Dec 28 05:42:31 1993 Mike Stump <mrs@cygnus.com> |
| |
| * cp-class.c (is_normal): New routine, use to determine when the |
| given binfo is the normal one. (The one that should have the simple |
| vtable name.) |
| * cp-class.c (modify_other_vtable_entries): Use DECL_ASSEMBLER_NAME |
| to check if two fndecls are `the same'. Sometimes this routine can |
| modify the main vtable, and normal should be 1, in that case, so use |
| is_normal() to determine if this is the main vtable for the class. |
| Don't recurse down virtual bases, as they are shared, and we take |
| care of them elsewhere. |
| * cp-class.c (modify_vtable_entries): If we have already updated the |
| vtable with the new virtual, don't do it again. |
| * cp-class.c (finish_struct): Set CLASSTYPE_VFIELD_PARENT as |
| appropriate. Do virtual function overriding in virtual bases, after |
| normal overriding, so that the base function list in DECL_VINDEX is |
| not overridden, before we have a chance to run through the list. |
| Use DECL_ASSEMBLER_NAME to check if two fndecls are `the same'. |
| Make sure we pass the right address into modify_vtable_entries. |
| * cp-tree.h (CLASSTYPE_VFIELD_PARENT): New field to indicate which |
| binfo is the one that has the vtable that we based our vtable on. |
| |
| Fri Dec 24 09:40:52 1993 Michael Tiemann <tiemann@blues.cygnus.com> |
| |
| * cp-typeck.c (c_expand_start_case): Use default_conversion to |
| convert expression from reference type if necessary. |
| |
| Wed Dec 22 17:58:43 1993 Jason Merrill <jason@deneb.cygnus.com> |
| |
| * cp-typeck.c (build_unary_op): Make sure that it's a TREE_LIST before |
| trying to read its TREE_VALUE. |
| |
| * cp-class.c (finish_struct_methods): Clear DECL_IN_AGGR_P here. |
| (finish_struct): Instead of here. |
| |
| Tue Dec 21 14:34:25 1993 Brendan Kehoe <brendan@lisa.cygnus.com> |
| |
| * cp-tree.c (list_hash_lookup_or_cons): Make sure the type doesn't |
| have TYPE_PTRMEMFUNC_P set before we try to build its |
| CLASSTYPE_ID_AS_LIST. |
| (get_decl_list): Likewise, when trying to read it. |
| |
| * cp-tree.h (VTABLE_NAME): No def with NO_{DOLLAR,DOT} defined. |
| (VTABLE_NAME_P): Use it instead of VTABLE_NAME_FORMAT. |
| |
| Mon Dec 20 13:35:03 1993 Brendan Kehoe <brendan@lisa.cygnus.com> |
| |
| * cp-typeck.c (rationalize_conditional_expr): New function. |
| (unary_complex_lvalue): Use it. |
| (build_modify_expr): Use it, since trying to do an ADDR_EXPR of it |
| with build_unary_op won't cut it. Don't wrap the COND_EXPR with a |
| SAVE_EXPR either. |
| |
| * cp-decl2.c (explicit_warn_return_type): Deleted variable. |
| (lang_decode_option): Set warn_return_type, not explicit_*, for |
| -Wreturn-type and -Wall. This is what rest_of_compilation uses to |
| decide if it should go into jump_optimize or not. |
| * cp-tree.h (explicit_warn_return_type): Deleted. |
| * cp-decl.c (grokdeclarator): Use warn_return_type, not explicit_*. |
| (finish_function): Also complain about no return in a non-void fn if |
| we're being pedantic (don't rely on use of -Wreturn-type). |
| |
| Fri Dec 17 15:45:46 1993 Brendan Kehoe <brendan@lisa.cygnus.com> |
| |
| * cp-decl.c (grokdeclarator): Forbid declaration of a function as |
| static if it's being done inside another function. |
| |
| * cp-search.c (compute_visibility): Check for friendship both ways. |
| |
| Fri Dec 17 14:28:25 1993 Jason Merrill <jason@deneb.cygnus.com> |
| |
| * cp-cvt.c (build_default_binary_type_conversion): Make error |
| messages more helpful. |
| |
| * cp-error.c (op_as_string): New function, returns "operator ==" |
| given EQ_EXPR or suchlike. |
| |
| Fri Dec 17 13:28:11 1993 Brendan Kehoe <brendan@lisa.cygnus.com> |
| |
| * cp-call.c (print_n_candidates): New function. |
| (build_overload_call_real): Use it when we complain about a call |
| being ambiguous. |
| |
| Fri Dec 17 12:41:17 1993 Jason Merrill <jason@deneb.cygnus.com> |
| |
| * cp-call.c (build_method_call): Fix checking for static call |
| context. |
| |
| * cp-method.c (build_opfncall): Call build_indirect_ref on argument |
| to operator new. |
| |
| * cp-init.c (build_new): Don't mess with rval when building |
| indirect ref. |
| |
| Thu Dec 16 16:48:05 1993 Kung Hsu <kung@cirdan.cygnus.com> |
| |
| * cp-lex.c (default_assign_ref_body): Add check when TYPE_NESTED_ |
| NAME(type) may not be exist. It's not a problem for old compiler. |
| |
| Thu Dec 16 14:46:06 1993 Brendan Kehoe <brendan@lisa.cygnus.com> |
| |
| * cp-tree.h (CLASSTYPE_ALTERS_VISIBILITIES_P): Delete macro, it's |
| never used for anything. |
| (struct lang_type, member type_flags): Delete field |
| `alters_visibility', and up `dummy' by 1. |
| * cp-class.c (finish_base_struct): Delete code that copies the |
| setting of CLASSTYPE_ALTERS_VISIBILITIES_P. |
| (finish_struct): Delete code that sets it. |
| |
| Thu Dec 16 14:44:39 1993 Jason Merrill <jason@deneb.cygnus.com> |
| |
| * cp-decl.c, cp-init.c, cp-typeck.c: Fix arguments to |
| build_method_call that I messed up before. |
| |
| * cp-search.c (get_base_distance): If protect > 1, allow immediate |
| private base. |
| |
| * cp-class.c (finish_base_struct): Set cant_synth_* correctly. |
| (finish_struct): Likewise. Well, nigh-correctly; it won't deal |
| properly with the case where a class contains an object of an |
| ambiguous base class which has a protected op=. Should be fixed |
| when the access control code gets overhauled. |
| (finish_struct_methods): Set TYPE_HAS_NONPUBLIC_* correctly. |
| |
| Thu Dec 16 12:17:06 1993 Brendan Kehoe <brendan@lisa.cygnus.com> |
| |
| * cp-lex.c (real_yylex): Turn the code back on that deals with |
| __FUNCTION__ and __PRETTY_FUNCTION__. Don't use lookup_name, to |
| avoid the ambiguity problems that led to it being turned off in the |
| first place. |
| |
| * cp-method.c (hack_identifier): Also check for a TYPE_PTRMEMFUNC_P |
| to see if something is a method. |
| |
| Wed Dec 15 18:35:58 1993 Mike Stump <mrs@cygnus.com> |
| |
| * cp-typeck.c (build_modify_expr): Avoid error messages on small |
| enum bit fields. |
| * cp-typeck.c (convert_for_assignment): Add missing argument to |
| cp_warning and cp_pedwarn calls. |
| |
| Wed Dec 15 18:25:32 1993 Jason Merrill <jason@deneb.cygnus.com> |
| |
| * cp-parse.y (member_init): ANSI C++ doesn't forbid old-style base |
| initializers; it's just anachronistic. |
| |
| * cp-decl.c (finish_decl): Don't require external-linkage arrays |
| to have a complete type at declaration time when pedantic. |
| |
| Tue Dec 14 11:37:23 1993 Jason Merrill <jason@deneb.cygnus.com> |
| |
| * cp-decl.c (pushdecl): Don't set DECL_CONTEXT if it's already set. |
| |
| * cp-call.c (build_method_call): Don't dereference pointer given |
| as instance. |
| |
| * cp-decl.c (finish_function): Don't pass pointer to |
| build_method_call. |
| (finish_function): Likewise. |
| |
| * cp-typeck.c (build_x_function_call): Likewise. |
| |
| * cp-method.c (build_component_type_expr): Likewise. |
| |
| * cp-init.c (build_member_call): Likewise. |
| (build_new): Likewise. |
| |
| Mon Dec 13 18:04:33 1993 Kung Hsu <kung@cirdan.cygnus.com> |
| |
| * cp-decl.c (xref_tag): Fix regression created by changes made |
| in Dec. 7 1993. |
| * cp-decl.c (xref_defn_tag): Fix parallel nested class problem. |
| |
| Fri Dec 10 12:40:25 1993 Brendan Kehoe <brendan@lisa.cygnus.com> |
| |
| * cp-call.c (compute_conversion_costs_ansi) [DEBUG_MATCHING]: Print |
| out the final evaluation of the function, so we can see if ELLIPSIS, |
| USER, and EVIL were set at the end. |
| |
| * cp-call.c (convert_harshness_ansi): When the parm isn't an lvalue, |
| only go for setting TRIVIAL_CODE if we are dealing with types that |
| are compatible. |
| |
| Thu Dec 9 18:27:22 1993 Mike Stump <mrs@cygnus.com> |
| |
| * cp-decl.c (flag_huge_objects): New flag to allow large objects. |
| * toplev.c (lang_options): Likewise. |
| * cp-decl2.c (flag_huge_objects, lang_f_options): Likewise. |
| * cp-decl.c (delta_type_node): New type for delta entries. |
| * cp-tree.h (delta_type_node): Likewise. |
| * cp-decl.c (init_decl_processing): Setup delta_type_node. |
| * cp-decl.c (init_decl_processing, build_ptrmemfunc_type): Use |
| delta_type_node instead of short_integer_type_node. |
| * cp-class.c (build_vtable_entry): Likewise. |
| |
| Thu Dec 9 16:19:05 1993 Brendan Kehoe <brendan@lisa.cygnus.com> |
| |
| * cp-tree.h (OPERATOR_TYPENAME_P): Define outside of |
| NO_{DOLLAR,DOT} macro checks, so it always gets defined. |
| (VTABLE_NAME_P): Define for NO_DOT && NO_DOLLAR_IN_LABEL. |
| |
| Wed Dec 8 17:38:06 1993 Mike Stump <mrs@cygnus.com> |
| |
| * cp-decl.c (finish_decl): Make sure things that can go into |
| "common", do go into common, if -fcommon is given. |
| |
| Wed Dec 8 13:01:54 1993 Brendan Kehoe <brendan@lisa.cygnus.com> |
| |
| * cp-call.c (print_harshness) [DEBUG_MATCHING]: New function. |
| (compute_conversion_costs_ansi) [DEBUG_MATCHING]: Print out |
| argument matching diagnostics to make instantly clear what the |
| compiler is doing. |
| |
| * cp-call.c (convert_harshness_ansi): If the parm isn't an lvalue, |
| then check to see if the penalty was increased due to |
| signed/unsigned mismatch, and use a TRIVIAL_CODE if it wasn't. |
| |
| Tue Dec 7 18:29:14 1993 Kung Hsu <kung@cirdan.cygnus.com> |
| |
| * cp-decl.c (xref_tag, pushtag): Fix nested class search/resolution |
| problem. |
| |
| Tue Dec 7 16:09:34 1993 Jason Merrill <jason@deneb.cygnus.com> |
| |
| * cp-class.c (finish_struct): Before synthesizing methods, if no |
| methods have yet been declared then set nonprivate_method. Don't |
| set non_private method after synthesizing a method. |
| |
| * cp-lex.c (extract_interface_info): If flag_alt_external_templates |
| is set, tie emitted code to the location of template instantiation, |
| rather than definition. |
| |
| * cp-tree.h: Declare flag_alt_external_templates. |
| |
| * cp-decl2.c (lang_decode_option): Support -falt-external-templates. |
| |
| * toplev.c (lang_options): Likewise. |
| |
| Mon Oct 4 12:50:02 1993 Chip Salzenberg <chip@fin.uucp> |
| |
| [changes propagated from 930810 snapshot] |
| * cp-decl.c (init_decl_processing): Make long long available for use |
| as SIZE_TYPE and PTRDIFF_TYPE. |
| (finish_decl): Allow file-scope static incomplete array. |
| (grokdeclarator): Don't pass on const and volatile fron function |
| value type to function type. |
| Warn here for volatile fn returning non-void type. |
| * cp-parse.y (attrib): Accept attributes `volatile' with alias |
| `noreturn', and `const'. |
| * cp-typeck.c (default_conversion): Don't lose const and volatile. |
| (build_binary_op_nodefault): Generate pedantic warning for comparison |
| of complete pointer type with incomplete pointer type. |
| (build_c_cast): Be careful that null pointer constant be INTEGER_CST. |
| |
| Tue Dec 7 10:46:48 1993 Jason Merrill <jason@deneb.cygnus.com> |
| |
| * cp-init.c (expand_vec_init): When creating a temporary for copying |
| arrays, use the type of the source, not the target. |
| |
| * cp-cvt.c (convert): Pass an argument for errtype to |
| convert_to_reference. |
| |
| * cp-error.c (dump_expr, COMPONENT_REF & CALL_EXPR): Deal with |
| methods, -> and `this'. |
| |
| Mon Dec 6 17:12:33 1993 Jason Merrill <jason@deneb.cygnus.com> |
| |
| * cp-error.c (parm_as_string): New function; returns `this' or arg |
| number. Corresponds to %P. |
| (dump_expr): Deal with method calls. |
| |
| * cp-cvt.c (convert_to_reference): Stop using warn_for_assignment. |
| * cp-typeck.c (convert_for_assignment): Likewise. |
| (warn_for_assignment): Lose. |
| |
| Mon Dec 6 11:33:35 1993 Brendan Kehoe <brendan@lisa.cygnus.com> |
| |
| * cp-call.c (ideal_candidate_ansi): Delete code that was never |
| doing anything useful. Instead, sort once, and DO NOT wipe |
| out any codes with EVIL_CODE, since that's what we use as a |
| marker for the end of the list of candidates. |
| |
| * cp-cvt.c (convert_to_aggr): Make sure to always set H_LEN. |
| |
| Mon Dec 6 12:49:17 1993 Jason Merrill <jason@deneb.cygnus.com> |
| |
| * cp-init.c (get_aggr_from_typedef): New function, like |
| is_aggr_typedef but returns the _TYPE. |
| |
| * cp-call.c, cp-init.c, cp-method.c: Eradicate err_name. |
| |
| Sun Dec 5 18:12:48 1993 Brendan Kehoe <brendan@lisa.cygnus.com> |
| |
| * cp-lex.c (readescape): Pedwarn when a hex escape is out of range. |
| |
| Thu Nov 25 23:50:19 1993 Chip Salzenberg <chip@fin.uucp> |
| |
| Delay language context change until beginning of next decl. |
| |
| * cp-lex.h (c_header_level): Removed. |
| (pending_lang_change): Declared. |
| * cp-lex.c (c_header_level): Renamed from in_c_header, made static. |
| (pending_lang_change): Defined. |
| (check_newline): Rework code that recognizes line number and |
| filename changes. Instead of pushing and popping lang context, |
| increment and decrement pending_lang_change. |
| (do_pending_lang_change): Push and pop lang context according |
| to value of pending_lang_change. |
| * cp-parse.y (extdefs): Use lang_extdef instead of extdef. |
| (extdef): Same as extdef, but call do_pending_lang_change() first. |
| |
| Mon Nov 15 15:39:15 1993 Chip Salzenberg <chip@fin.uucp> |
| |
| * cp-typeck.c (build_binary_op_nodefault): Warn for ordered |
| compare of ptr with 0 only if pedantic in both cases. |
| |
| Thu Nov 25 13:31:37 1993 Chip Salzenberg <chip@fin.uucp> |
| |
| Reinstate the below patch, which got lost in the Cygnus merge: |
| Tue Nov 23 13:59:24 1993 Hallvard B Furuseth (hbf@durin.uio.no) |
| * cp-parse.y (maybe_type_qual): Don't fail to set $$. |
| |
| Wed Nov 17 19:03:30 1993 Chip Salzenberg <chip@fin.uucp> |
| |
| * cp-parse.y (attrib): Allow "ident(ident)" like the C front end. |
| |
| Fri Oct 22 20:43:37 1993 Paul Eggert <eggert@twinsun.com> |
| |
| * cp-lex.c (real_yylex): Diagnose floating point constants |
| that are too large. |
| |
| Wed Nov 17 19:10:37 1993 Chip Salzenberg <chip@fin.uucp> |
| |
| * cp-type2.c (build_functional_cast): ARM page 16: When a class |
| and an object, function or enumerator are declared in the same |
| scope with the same name, the class name is hidden. |
| |
| Wed Nov 17 19:07:18 1993 Chip Salzenberg <chip@fin.uucp> |
| |
| * cp-call.c (convert_harshness_ansi): Distinguish float, double, |
| and long double from each other when overloading. |
| (compute_conversion_costs_{ansi,old}, build_method_call, |
| build_overlay_call_real, convert_to_aggr): Always set and |
| always use H_LEN member of candidate structure. |
| |
| Mon Oct 11 23:10:53 1993 Chip Salzenberg <chip@fin.uucp> |
| |
| * cp-decl.c (duplicate_decls): Note redeclarations of library |
| functions, and generate distinct warnings for them. |
| |
| Mon Oct 4 12:26:49 1993 Chip Salzenberg <chip@fin.uucp> |
| |
| Support format warnings in G++. |
| |
| * cp-tree.h: Protect against multiple inclusion. |
| Declare all public functions in c-common.c (copy from c-tree.h). |
| (STDIO_PROTO): Define. |
| (warn_format): Declare. |
| (record_format_info): Remove declaration. |
| * cp-decl.c (init_decl_processing): Call init_function_format_info. |
| * cp-decl2.c (lang_decode_option): Make "-Wall" include warn_format. |
| * cp-typeck.c (build_function_call_real): Call check_function_format. |
| (record_format_info): Remove -- obsolete stub. |
| |
| Sat Jul 24 12:04:29 1993 Chip Salzenberg <chip@fin.uucp> |
| |
| * cp-decl.c (duplicate_decls): Don't warn for non-extern var decl |
| following an extern one (for -Wredundant-decls). |
| * cp-parse.y (primary): In statement expression case, if compstmt |
| returns something other than a BLOCK, return it unchanged. |
| |
| Thu Dec 2 20:44:58 1993 Chip Salzenberg <chip@fin.uucp> |
| |
| * cp-decl.c (warn_extern_redeclared_static): New function made |
| from code extracted from pushdecl. |
| (duplicate_decls, pushdecl): Call new function. |
| (lookup_name_current_level): Allow for IDENTIFIER_GLOBAL_VALUE |
| to be a TREE_LIST when function is declared in 'extern "C" {}'. |
| |
| Fri Dec 3 16:01:10 1993 Jason Merrill <jason@deneb.cygnus.com> |
| |
| * cp-class.c (duplicate_tag_error): Use cp_error. |
| (finish_base_struct): Check for ambiguity with direct base, and don't |
| generate op= or copy ctor if it exists. |
| |
| Fri Dec 3 15:32:34 1993 Kung Hsu <kung@cirdan.cygnus.com> |
| |
| * cp-init.c (expand_member_init): When initializer name is null, |
| don't try to build it now because emit_base_init will handle it. |
| |
| Fri Dec 3 12:28:59 1993 Jason Merrill <jason@deneb.cygnus.com> |
| |
| * cp-lex.c (init_lex): Initialize input_filename to "<internal>" for |
| code such as ExceptionHandler::operator=. |
| |
| Fri Dec 3 10:32:08 1993 Jason Merrill <jason@deneb.cygnus.com> |
| |
| * cp-decl.c (grokdeclarator): Don't try to print out dname when |
| complaining about arrays of references if decl_context==TYPENAME, |
| since it will be null. |
| |
| * cp-decl2.c: Default to flag_ansi_overloading. |
| |
| Thu Dec 2 18:05:56 1993 Kung Hsu <kung@cirdan.cygnus.com> |
| |
| * cp-call.c (build_method_call): Use binfo from instance if it's |
| different from binfo (basetype_path) passed from above. |
| |
| Wed Nov 17 19:14:29 1993 Chip Salzenberg <chip@fin.uucp> |
| |
| cp-error.c (dump_expr): Use unsigned chars to output a |
| TREE_REAL_CST in hex. |
| |
| Thu Dec 2 11:05:48 1993 Jason Merrill <jason@deneb.cygnus.com> |
| |
| * cp-class.c (finish_struct): Fix typo in setting |
| cant_synth_asn_ref. |
| |
| * cp-tree.h (TYPE_NESTED_NAME): New macro, does |
| DECL_NESTED_TYPENAME (TYPE_NAME (NODE)). |
| |
| * cp-lex.c (default_copy_constructor_body): Change |
| DECL_NAME (TYPE_NAME (btype)) to TYPE_NESTED_NAME (btype). |
| (default_assign_ref_body): Likewise. |
| (default_copy_constructor_body): Call operator= explicitly for |
| base classes that have no constructor. |
| |
| Thu Dec 2 10:47:15 1993 Michael Tiemann <tiemann@blues.cygnus.com> |
| |
| * cp-call.c (build_method_call): If the instance variable is |
| converted to error_mark_node when we're trying to convert it to the |
| base type of a method we're looking up, return error_mark_node. |
| |
| Thu Dec 2 10:41:16 1993 Torbjorn Granlund <tege@cygnus.com> |
| |
| * cp-typeck.c (build_binary_op_nodefault): In *_DIV_EXPR *_MOD_EXPR |
| cases, tests for unsigned operands by peeking inside a NOP_EXPR. |
| |
| Wed Dec 1 13:33:34 1993 Brendan Kehoe <brendan@lisa.cygnus.com> |
| |
| * cp-call.c (compute_conversion_costs_ansi): Use the size of struct |
| harshness_code, not the size of short, for clearing out the |
| ansi_harshness. |
| |
| * cp-call.c (print_candidates): New function. |
| (build_method_call): When we had some candidates, but didn't get a |
| usable match, don't report that we got an error with the first |
| candidate. Instead, say there were no matches, and list the |
| candidates with print_candidates. In the second pass, make sure we |
| clear out ever_seen, so we can accurately count the number of |
| functions that qualified. |
| |
| Wed Dec 1 09:53:59 1993 Torbjorn Granlund <tege@cygnus.com> |
| |
| * cp-typeck.c (build_binary_op_nodefault): Shorten for *_MOD_EXPR |
| only if op1 is known to be != -1. |
| (build_binary_op_nodefault): Handle *_DIV_EXPR likewise. |
| |
| Tue Nov 30 14:07:26 1993 Brendan Kehoe <brendan@lisa.cygnus.com> |
| |
| * cp-method.c (hack_identifier): If the field itself is private, and |
| not from a private base class, say so. |
| |
| Mon Nov 29 03:00:56 1993 Jason Merrill <jason@deneb.cygnus.com> |
| |
| * cp-decl.c (grokdeclarator): Always warn on initialization of |
| const member. |
| |
| Wed Nov 24 00:49:35 1993 Jason Merrill <jason@deneb.cygnus.com> |
| |
| * cp-class.c (finish_struct): Set TYPE_GETS_CONST_* properly. |
| (finish_base_struct): Set cant_synth_asn_ref properly. |
| |
| * cp-lex.c (cons_up_default_function): Add section for operator=. |
| (default_assign_ref_body): New function, mostly cribbed from |
| default_copy_constructor_body. |
| |
| * cp-class.c (base_info): Add members cant_synth_copy_ctor, |
| cant_synth_asn_ref, no_const_asn_ref. |
| (finish_base_struct): Update no_const_asn_ref, note that you should |
| update cant_synth_*, propagate TYPE_GETS_ASSIGN_REF. |
| (finish_struct): Add decls for cant_synth_*, no_const_asn_ref, and |
| initialize them properly. Set no_const_asn_ref properly. Set |
| cant_synth_* in some of the situations where they should be set. |
| Propagate TYPE_GETS_ASSIGN_REF. Use cant_synth_copy_ctor. Add call |
| to cons_up_default_function for operator=. |
| |
| Tue Nov 23 20:24:58 1993 Mike Stump <mrs@cygnus.com> |
| |
| * cp-cvt.c (convert_force): Add code to perform casting of pointer |
| to member function types. |
| * cp-typeck.c (build_ptrmemfunc): Add FORCE parameter to indicate |
| when the conversion should be done, regardless. |
| * cp-tree.h (build_ptrmemfunc): Likewise. |
| * cp-type2.c (digest_init): Likewise. |
| * cp-typeck.c (convert_for_assignment): Likewise. |
| |
| Tue Nov 23 18:06:58 1993 Jason Merrill <jason@deneb.cygnus.com> |
| |
| * cp-error.c (dump_expr): Do the right thing for variables of |
| reference type. |
| |
| * cp-decl.c (grok_op_properties): Set TYPE_HAS_ASSIGN_REF |
| and its kin properly. |
| (xref_tag): Propagate TYPE_GETS_ASSIGN_REF. |
| |
| Tue Nov 23 12:26:13 1993 Mike Stump <mrs@cygnus.com> |
| |
| * cp-method.c (build_opfncall): Don't count pointer to member |
| functions as aggregates here, as we don't want to look up methods in |
| them. The compiler would core dump if we did, as they don't have |
| normal names. |
| * cp-typeck.c (build_indirect_ref): Improve wording on error |
| message. |
| |
| Mon Nov 22 14:22:23 1993 Jason Merrill <jason@deneb.cygnus.com> |
| |
| * cp-decl.c (grok_op_properties): Allow operator?: with pedwarn |
| (since it's supported in other compiler bits). |
| |
| * cp-method.c (report_type_mismatch): Use cp_error; ignore err_name |
| argument. |
| |
| * cp-error.c (dump_function_decl): Don't print return type for |
| constructors and destructors. |
| |
| * cp-cvt.c (cp_convert_to_pointer): Import code from |
| convert_to_pointer so we can return error_mark_node in the case of an |
| error, and to allow more meaningful error messages. |
| (build_type_conversion): Don't go through void* when trying |
| to convert to a pointer type. |
| |
| * cp-decl.c (grokfndecl): Move call to grok_op_properties back |
| after grokclassfn so that it's dealing with the right decl. |
| (grok_op_properties): Don't assert !methodp for op new and op delete. |
| |
| * cp-init.c (build_delete): Don't use TYPE_BUILT_IN (there are now |
| no uses of it in the compiler). |
| |
| * cp-call.c (build_scoped_method_call): Fix for destructors of simple |
| types. |
| (build_method_call): Likewise. |
| |
| Fri Nov 19 12:59:38 1993 Jason Merrill <jason@deneb.cygnus.com> |
| |
| * cp-tree.c (count_functions): Abstraction function. |
| |
| * cp-call.c (build_overload_call_real): Deal with new overloading |
| properly, remove dead code. |
| |
| * gcc.c (default_compilers): Generate and use .ii files in the |
| intermediate stage of compiling C++ source. |
| |
| Fri Nov 19 11:26:09 1993 Jim Wilson <wilson@sphagnum.cygnus.com> |
| |
| * cp-expr.c (cplus_expand_expr): Make call_target a valid memory |
| address before using it, so it can be later safely compared. |
| |
| Fri Nov 12 15:30:27 1993 Jason Merrill <jason@deneb.cygnus.com> |
| |
| * cp-pt.c (tsubst): Deal with new overloading. |
| |
| * cp-typeck.c (fntype_p): Is the arg function type? |
| (comp_target_parms): pedwarn on conversion from (anything) to (...). |
| (build_x_function_call): Deal with new overloading. |
| |
| * cp-tree.c (decl_list_length): Deal with new overloading. |
| (decl_value_member): Like value_member, but for DECL_CHAINs. |
| |
| * cp-decl.c (duplicate_decls): Deal with new overloading. |
| (start_decl): Likewise. |
| |
| * cp-class.c (instantiate_type): Deal with new overloading. |
| |
| * cp-call.c (convert_harshness_ansi): Deal with new overloading. |
| (convert_harshness_old): Deal with new overloading. |
| (build_overload_call_real): Likewise. |
| |
| Mon Nov 8 13:50:49 1993 Jason Merrill <jason@deneb.cygnus.com> |
| |
| * cp-tree.c (get_unique_fn): New function; returns FUNCTION_DECL |
| if unambiguous, NULL_TREE otherwise. |
| (get_first_fn): Returns the first appropriate FUNCTION_DECL. |
| (is_overloaded_fn): Returns whether or not the passed tree is |
| a function or list of functions. |
| |
| * cp-init.c (init_init_processing): Use `get_first_fn' to find |
| the FUNCTION_DEFN for new and delete. |
| |
| * cp-decl.c (push_overloaded_decl): Use new overloading strategy, cut |
| code size in half (I spit on special cases). |
| |
| Tue Sep 7 20:03:33 1993 Jason Merrill <jason@deneb.cygnus.com> |
| |
| * cp-decl.c: Allow references and template type parameters as well |
| |
| |
| Copyright (C) 1993 Free Software Foundation, Inc. |
| |
| Copying and distribution of this file, with or without modification, |
| are permitted in any medium without royalty provided the copyright |
| notice and this notice are preserved. |