OSDN Git Service

* cp-tree.h (TYPE_NOTHROW_P): New macro.
[pf3gnuchains/gcc-fork.git] / gcc / cp / ChangeLog
index 304a122..e19e6d3 100644 (file)
@@ -1,9 +1,385 @@
+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.
+       
+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_TINO_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.
+       (cat_namespace_levels): Remove.
+       * decl2.c: Include splay-tree.h and varray.h.
+       (priority_info_s): New structure.
+       (finish_vtable_vardecl): Change prototype.  Adjust for new calling
+       conventions.
+       (prune_vtable_vardecl): Likewise.
+       (finish_sigtable_vardecl): Likewise.
+       (setup_initp): Remove.
+       (do_dtors): Remove.
+       (do_ctors): Remove.
+       (start_static_storage_duration_function): New function.
+       (generate_inits_for_priority): Likewise.
+       (finish_static_storage_duration_function): Likewise.
+       (get_priority_info): Likewise.
+       (do_static_initialization): Likewise.
+       (do_static_destruction): Likewise.
+       (do_static_initialization_and_destruction): Likewise.
+       (generate_ctor_or_dtor_function): Likewise.
+       (generate_ctor_and_dtor_functions_for_priority): Likewise.
+       (pending_statics): Make it a varray.
+       (pending_statics_used): New variable.
+       (saved_inlines): Make it a varray.
+       (saved_inlines_used): New variable.
+       (finish_static_data_member): Change method of updating
+       pending_statics. 
+       (mark_inline_for_output): Remove #if 0'd code.  Change method of
+       updating saved_inlines.
+       (walk_vtables): Remove.
+       (walk_sigtables): Likewise.
+       (import_export_decl): Use DECL_TINFO_FN_P.
+       (pending_templates): Remove declaration.
+       (maybe_templates): Likewise.
+       (static_aggregates_initp): Likewise.
+       (setup_initp): Likewise.
+       (finish_objects): Simplify.
+       (INITIALIZE_P_IDENTIFIER): New macro.
+       (PRIORITY_IDENTIFIER): New macro.
+       (SSDF_IDENTIFIER): New macro.
+       (initialize_p_decl): New variable.
+       (priority_decl): Likewise.
+       (ssdf_decl): Likewise.
+       (priority_info_map): Likewise.
+       (finish_file): Recode output of static intializers and other
+       file-scope finalization tasks.
+       * error.c (OB_END_TEMPLATE_ID): New macro.
+       (dump_type_real): Use it.
+       (dump_decl): Likewise.
+       (dump_function_name): Likewise.
+       * lex.c (set_typedecl_interface_info): Adjust for new walk_globals
+       interface.
+       (check_newline): Use walk_globals, not walk_vtables.
+       * pt.c (pending_tempalte_expansions): Remove.
+       (set_vardecl_interface_info): Likewise.
+       (pending_templates): Make static.
+       (maybe_templates): Likewise.
+       (instantiate_class_template): Adjust call to finish_struct_1.
+       (instantiate_pending_templates): New function.
+       * rtti.c (get_tinfo_fn): Use SET_DECL_TINFO_FN_P.
+       * tree.c (static_aggregates_initp): Remove.
+       (cp_valid_lang_attribute): Don't use it; use DECL_INIT_PRIORITY
+       instead.
+       * Makefile.in (decl2.o): Depend on varray.h and splay-tree.h.
+
+       * gxx.gperf (RETURN): Rename to RETURN_KEYWORD to avoid clashes
+       with the RTL code RETURN.
+       * hash.h: Regenerated.
+       * lex.c (reinit_parse_for_block): Use RETURN_KEYWORD.
+       * parse.y: Replace RETURN with RETURN_KEYWORD throughout.
+       * parse.c: Regenerated.
+       * pt.c: Include varray.h.  Include rtl.h since varray.h requires
+       it.
+       (inline_parm_levels): New variable.
+       (inline_parm_levels_used): Likewise.
+       (maybe_begin_member_template_processing): Update them.
+       (maybe_end_member_template_processing): Use them, rather than
+       guessing how many levels to pop.
+       
+       * decl.c (make_typename_type): Tighten error-checking.
+
+1999-04-20  Mark Mitchell  <mark@codesourcery.com>
+
+       * cp-tree.h (build_binary_op): Remove unneeded parameter.
+       * class.c (build_vrable_entry_ref): Adjust call to
+       build_binary_op.
+       * decl.c (expand_static_init): Likewise.
+       (grokdeclarator): Likewise.
+       (finish_function): Likewise.
+       * decl2.c (delete_sanity): Likewise.
+       (do_dtors): Likewise.
+       (do_ctors): Likewise.
+       * error.c (dump_type_suffix): Likewise.
+       * expr.c (cplus_expand_expr): Likewise.
+       * init.c (resolve_offset_ref): Likewise.
+       (build_new): Likewise.
+       (build_new_1): Likewise.
+       (build_vec_delete_1): Likewise.
+       (expand_vec_init_catch_clause): Likewise.
+       (build_delete): Likewise.
+       * pt.c (tsubst): Likewise.
+       * rtti.c (synthesize_tinfo_fn): Likewise.
+       * search.c (expand_upcast_fixups): Likewise.
+       (expand_direct_vtbls_init): Likewise.
+       * typeck.c (get_member_function_from_ptrfunc): Likewise.
+       (build_binary_op_nodefault): Likewise.
+       (point_int_sum): Likewise.
+       (pointer_diff): Likewise.
+       (build_unary_op): Likewise.
+       (build_modify_expr): Likewise.
+       (get_delta_difference): Likewise.
+       (build_ptrmemfunc): Likewise.
+       (expand_ptrmemfunc_cst): Likewise.
+       
+1999-04-20  Jason Merrill  <jason@yorick.cygnus.com>
+
+       * decl.c (grokfndecl): Always call cplus_decl_attributes.
+       * decl2.c (grokfield): Pass attrlist to grokdeclarator.
+
+1999-04-19  Mark Mitchell  <mark@codesourcery.com>
+
+       * cp-tree.h (finish_static_data_member_decl): New function.
+       * decl2.c (finish_static_data_member_decl): Split out from ...
+       (grokfield): Here.
+       * pt.c (instantiate_class_template): Use it here instead of 
+       trying to fake it.
+       (tsubst_decl): Don't set DECL_ASSEMBLER_NAME;
+       finish_static_data_member_decl will do that.  Explicit set
+       DECL_EXTERNAL to match non-template processing.
+       
+1999-04-18  Mark Mitchell  <mark@codesourcery.com>
+
+       * cp-tree.h (finish_class_definition): Add parameter.
+       * parse.y (structsp): Use it.  Don't call pop_scope here.
+       * parse.c: Regenerated.
+       * semantics.c (finish_class_definition): Pop it here.
+
+1999-04-17  Mark Mitchell  <mark@codesourcery.com>
+
+       * decl.c (xref_tag): Revise handling of nested template
+       declarations.
+       * pt.c (check_explicit_specialization): Tweak handling of friend
+       templates in template classes.
+       (tsubst_friend_class): Handle friend declarations for nested
+       member template classes.
+       
+1999-04-16  Mark Mitchell  <mark@codesourcery.com>
+
+       * class.c (finish_struct): Remove unused variable.
+       (pushclass): Likewise.
+       (invalidate_class_lookup_cache): Likewise.
+       * cp-tree.def (TYPENAME_TYPE): Improve documentation.
+       * decl.c (build_typename_type): Make sure TYPENAME_TYPE_FULLNAME
+       doesn't get obliterated.
+       (make_typename_type): Handle template classes correctly.
+
+       * cp-tree.h (TREE_NONLOCAL_FLAG): Remove.
+       (storetags): Declare.
+       * class.c (finish_struct): Don't use TREE_NONLOCAL_FLAG.
+       (pushclass): Likewise.  Use storetags to install tag declarations,
+       not pushtag.
+       (invalidate_class_lookup_cache): Don't use TREE_NONLOCAL_FLAG.
+       * decl.c (storetags): Make it global.
+       (push_class_binding): Set INHERITED_VALUE_BINDING_P for an
+       implicit typename declaration.
+       (pushtag): Tidy.  Don't use TREE_NONLOCAL_FLAG.
+       * method.c (hack_identifier): Likewise.
+       * search.c (lookup_member): Likewise.
+       
+       * decl.c (warn_about_implicit_typename_lookup): New function.
+       (lookup_name_real): Use it.  Rework handling of implicit typename
+       extension.
+
+1999-04-15  Mark Mitchell  <mark@codesourcery.com>
+
+       * cp-tree.h (lookup_nested_field): Remove.
+       * class.c (push_nested_class): Handle UNION_TYPEs.
+       (pop_nested_class): Likewise.
+       * decl.c (lookup_name_real): Don't call lookup_nested_field.
+       (start_decl): Use push_nested_class, not just pushclass.
+       (cp_finish_decl): Use pop_nested_class, not just popclass.
+       * search.c (lookup_nested_field): Remove.
+       
+       * cp-tree.h (lang_type): Add documentation.
+       * decl2.c (handle_class_head): Create template declarations here,
+       as appropriate.
+       * parse.y (class_head): Return whether or not we entered a new
+       scope, as well as the type named.
+       (named_class_head): Likewise.
+       (named_complex_class_head_sans_basetype): Likewise.
+       (structsp): Adjust accordingly.  Pop scope when required.
+       * parse.c: Regenerated.
+       * pt.c (check_default_tmpl_args): Robustify.
+       (redeclare_class_template): Likewise.
+       (instantiate_class_template): An instantiation of an
+       anonymous union is itself an anonymous union.
+       * semantics.c (begin_class_definition): Don't create template
+       declarations here.
+       
+1999-04-15  Jason Merrill  <jason@yorick.cygnus.com>
+
+       * parse.y (after_type_declarator_intern): New nonterminal.
+       (after_type_declarator): Use it.
+       (direct_after_type_declarator): Likewise.  Move above 
+       nonnested_type to fix reduce/reduce conflict resolution.
+       (declmods): Reducing from just 'attributes' has EMPTY precedence.
+       * Makefile.in (CONFLICTS): Update.
+
+       * decl.c (define_label): Downgrade error for jumping over a
+       non-POD decl to pedwarn.
+
+1999-04-14  Mark Mitchell  <mark@codesourcery.com>
+
+       * cp-tree.h (popclass): Change declaration.
+       (pop_nested_class): Likewise.
+       (poplevel_class): Remove declaration.
+       * call.c (convert_default_argument): Pass no arguments to
+       popclass.
+       * class.c (finish_struct_1): Likewise.
+       (finish_struct): Likewise.
+       (popclass): Remove argument.  Simplify code accordingly.
+       (pop_nested_class): Likewise.
+       * decl.c (poplevel_class): Declare it here, and make it static.
+       (poplevel): Handle class scopes.
+       (poplevel_class): Don't take an rgument.  Simplify.
+       (pop_everything): Pass no arguments to pop_nested_class.
+       (cp_finish_decl): Pass no arguments to popclass.
+       (grokdeclarator): Pass no arguments to pop_nested_class.
+       (finish_function): Likewise.
+       * decl2.c (grokfield): Likewise.
+       (pop_scope): Pass no arguments to popclass.
+       * lex.c (do_pending_defargs): Pass no arguments to pop_nested_class.
+       * pt.c (instantiate_class_template): Move call to pushclass, and
+       document.  Pass no arguments to popclass.
+       (regenerate_decl_from_template): Likewise.
+       
+1999-04-14  Jason Merrill  <jason@yorick.cygnus.com>
+
+       * typeck.c (build_unary_op): Handle taking the address of a unique
+       bound non-static member function.
+
+1999-04-13  Martin von Loewis  <loewis@informatik.hu-berlin.de>
+
+       * lang-options.h (-Wdeprecated): New flag.
+       * decl2.c (warn_deprecated): New flag.
+       (lang_decode_option): Deprecated this-is-variable,
+       external-templates, alt-external-templates.
+       Support -Wdeprecated.
+       * errfn.c (cp_deprecated): New function.
+
+1999-04-13  Jason Merrill  <jason@yorick.cygnus.com>
+
+       * decl2.c (setup_initp): Compare DECL_ASSEMBLER_NAME instead
+       of the decls themselves.
+
+       * pt.c (tsubst_function_type): Copy attributes over.
+
+       * tree.c (cp_valid_lang_attribute): New fn.  Handle init_priority
+       and com_interface.
+       * cp-tree.h: Add prototype.
+       * decl.c (init_decl_processing): Set valid_lang_attribute.
+
+1999-04-13  Mark Mitchell  <mark@codesourcery.com>
+
+       * class.c (finish_struct_1): Look at the const-ness of the field's
+       type, not the TREE_READONLY-ness of the declaration.
+       * method.c (synthesize_method): Likewise.
+       * pt.c (tsubst_decl): Call c_apply_type_quals_to_decl when
+       creating new declarations.
+
+1999-04-13  Mike Stump  <mrs@wrs.com>
+
+       * decl2.c (import_export_decl): Because vtables always reference
+       virtual functions, even if they are inlined, don't allow
+       -fno-implement-inlines to not emit them, instead, emit them with
+       the vtable.
+       * decl.c (start_function): Likewise.
+
 1999-04-12  Jason Merrill  <jason@yorick.cygnus.com>
 
+       * cp-tree.h (struct lang_type): Add com_interface.
+       (CLASSTYPE_COM_INTERFACE): New macro.
+       * class.c (set_rtti_entry): COM interface classes have no RTTI
+       entries in their vtables; adjust.
+       (add_virtual_function, finish_base_struct, skip_rtti_stuff,
+       modify_one_vtable, fixup_vtable_deltas1, override_one_vtable,
+       finish_struct_1): Likewise.
+       * decl2.c (mark_vtable_entries): Likewise.
+       * rtti.c (build_headof, get_tinfo_fn_dynamic): Likewise.
+       * search.c (get_abstract_virtuals_1, get_abstract_virtuals,
+       expand_upcast_fixups): Likewise.
+       * tree.c (debug_binfo): Likewise.
+
        * cp-tree.h (COMPARE_NO_ATTRIBUTES): New macro.
        * typeck.c (comptypes): If we get it, ignore attributes.
        * class.c (instantiate_type): Use BASELINK_P.  Change complain
-       parameter to flags; 2 means ignore attributes.  
+       parameter to flags; 2 means ignore attributes.
        * call.c (build_op_delete_call): Pass it.
 
        * decl.c (xref_tag): Only complain once about using a typedef-name
 
        * decl.c (make_typename_type): Complain if we don't find a type
        when trying to make a typename type for a non-template type.
-       
+
 1999-04-09  Jason Merrill  <jason@yorick.cygnus.com>
 
        * decl.c (start_decl): Pass attributes to grokdeclarator.
        * tree.c (is_overloaded_fn): Use BASELINK_P.
        (really_overloaed_fn): Likewise.
        (get_first_fn): Likewise.
-       
+
 1999-04-05  Mark Mitchell  <mark@codesourcery.com>
 
        * decl.c (lookup_name_current_level): Tweak, and improve
        * class.c (maybe_fixup_vptrs): Remove declaration.
        (build_class_init_list): Likewise.
        * decl.c (pushdecl_class_level): Call check_template_shadow here
-       ... 
+       ...
        (push_class_level_binding): ... not here.
        * search.c (dfs_push_type_decls): Only avoid
        template-self-reference TYPE_DECLs if they are from base classes.
 1999-04-02  Mark Mitchell  <mark@codesourcery.com>
 
        * tinfo.h (__class_type_info): Fix illegal declaration.
-       
+
        * cp-tree.def (TEMPLATE_ID_EXPR): Update comment.
        * cp-tree.h (INHERITED_VALUE_BINDING_P): New macro.
        (IDENTIFIER_CLASS_VALUE): Improve documentation.
        COMPONENT_REF, not a TREE_LIST of an OVERLOAD.
        (build_x_function_call): Deal with OVERLOAD.  Handle template-ids.
        * Makefile.in (class.o): Depend on splay-tree.h.
-       
-Wed Mar 31 11:30:43 BST 1999  Nathan Sidwell  <nathan@acm.org>
+
+Wed Mar 31 11:30:43 1999  Nathan Sidwell  <nathan@acm.org>
 
        * cvt.c (convert_pointer_to_real): Use same_type_p.
        * typeck.c (comp_target_types): Use same_type_p.
@@ -235,19 +611,19 @@ Wed Mar 31 11:30:43 BST 1999  Nathan Sidwell  <nathan@acm.org>
 
 Wed Mar 31 10:48:29 1999  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
 
-        * Makefile.in (hash.h): Generate using gperf language 'C', not
-        'KR-C', so gperf uses the `const' keyword on strings.
-        
-        * gxx.gperf (resword): Const-ify a char*.
+       * Makefile.in (hash.h): Generate using gperf language 'C', not
+       'KR-C', so gperf uses the `const' keyword on strings.
+
+       * gxx.gperf (resword): Const-ify a char*.
 
 1999-03-30  Jason Merrill  <jason@yorick.cygnus.com>
 
-       * cp-tree.h (IDENTIFIER_AS_DESC, IDENTIFIER_AS_LIST, 
-       CLASSTYPE_BASELINK_VEC, CLASSTYPE_N_SUPERCLASSES, 
-       CLASSTYPE_N_BASECLASSES, CLASSTYPE_MAX_DEPTH, 
+       * cp-tree.h (IDENTIFIER_AS_DESC, IDENTIFIER_AS_LIST,
+       CLASSTYPE_BASELINK_VEC, CLASSTYPE_N_SUPERCLASSES,
+       CLASSTYPE_N_BASECLASSES, CLASSTYPE_MAX_DEPTH,
        CLASSTYPE_BASE_INIT_LIST, CLASSTYPE_AS_LIST, CLASSTYPE_ID_AS_LIST,
        CLASSTYPE_BINFO_AS_LIST): Remove cruft.
-       * class.c, lex.c, parse.y, ptree.c, search.c, semantics.c, 
+       * class.c, lex.c, parse.y, ptree.c, search.c, semantics.c,
        tree.c: Adjust.
 
 1999-03-29  Jason Merrill  <jason@yorick.cygnus.com>
@@ -272,7 +648,7 @@ Wed Mar 31 10:48:29 1999  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
        * pt.c (instantiate_class_template): Use add_friend and
        add_friends rather that duplicating some of their functionality
        here.
-       
+
 1999-03-27  Jason Merrill  <jason@yorick.cygnus.com>
 
        * call.c (build_field_call): Unify 'this' and non-'this' cases.
@@ -292,8 +668,8 @@ Fri Mar 26 10:20:34 1999  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
        * cvt.c (convert_to_reference): Likewise.
 
        * decl.c (redeclaration_error_message, record_builtin_type,
-       record_unknown_type, member_function_or_else, bad_specifiers):
-       Likewise.
+       record_unknown_type, member_function_or_else, bad_specifiers):
+       Likewise.
        (find_binding, select_decl, unqualified_namespace_lookup,
        lookup_flags, qualify_lookup, record_builtin_java_type, tag_name):
        Add static prototype.
@@ -311,7 +687,7 @@ Fri Mar 26 10:20:34 1999  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
        (yyerror, init_repo): Const-ify a char*.
        (build_srcloc): Don't prototype.
        (build_x_indirect_ref, build_indirect_ref, build_component_addr):
-       Const-ify a char*.
+       Const-ify a char*.
        (warn_for_assignment): Don't prototype.
        (convert_for_initialization, readonly_error, check_for_new_type,
        GNU_xref_begin, GNU_xref_file, GNU_xref_ref, GNU_xref_call):
@@ -405,7 +781,7 @@ Fri Mar 26 10:20:34 1999  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
 
 1999-03-25  Mark Mitchell  <mark@codesourcery.com>
 
-       * pt.c (tsubst_decl): Tsubst into DECL_BEFRIENDING_CLASSES.
+       * pt.c (tsubst_decl): tsubst into DECL_BEFRIENDING_CLASSES.
 
 1999-03-25  Nathan Sidwell  <nathan@acm.org>
 
@@ -455,14 +831,14 @@ Fri Mar 26 10:20:34 1999  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
        (make_friend_class): Likewise.  Update
        CLASSTYPE_BEFRIENDING_CLASSES.
        * pt.c (instantiate_class_template): Don't set
-       TYPE_HAS_ASSIGNMENT. 
+       TYPE_HAS_ASSIGNMENT.
        (tsubst_copy): Substitute the TREE_TYPE for more unary
        expressions.
        * ptree.c (print_lang_type): Don't look at TYPE_HAS_ASSIGNMENT.
        * search.c (protected_accessible_p): New function.
        (friend_accessible_p): Likewise.
        (accessible_p): Use them.
-       
+
 1999-03-23  Mark Mitchell  <mark@codesourcery.com>
 
        * pt.c (convert_nontype_argument): Don't create things that aren't
@@ -492,7 +868,7 @@ Fri Mar 26 10:20:34 1999  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
        * cp-tree.h (TYPE_PTRMEMFUNC_P): Use TYPE_PTRMEMFUNC_FLAG.
        Document internals of pointer-to-member-functions.
        (DELTA2_FROM_PTRMEMFUNC): Make it call delta2_from_ptrmemfunc.
-       (PFN_FROM_PTRMEMFUNC): Similarly.
+       (PFN_FROM_PTRMEMFUNC): Likewise.
        (build_type_conversion): Remove unused parameter.
        (build_ptrmemfunc1): Declare.
        (expand_ptrmemfunc_cst): New function.
@@ -519,7 +895,7 @@ Fri Mar 26 10:20:34 1999  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
        (expand_ptrmemfunc_cst): Define.
        (delta2_from_ptrmemfunc): Likewise.
        (pfn_from_ptrmemfunc): Likewise.
-       
+
 1999-03-19  Mark Mitchell  <mark@codesourcery.com>
 
        * init.c (build_member_call): Handle template-id expressions
@@ -538,23 +914,23 @@ Fri Mar 26 10:20:34 1999  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
 
 1999-03-19  Alexandre Oliva  <oliva@dcc.unicamp.br>
 
-       * Make-lang.in: ($(INTL_TARGETS)): depend on cp/parse.c
-       ($(srcdir)/cp/parse.c): moved from ../Makefile.in
+       * Make-lang.in: ($(INTL_TARGETS)): Depend on cp/parse.c.
+       ($(srcdir)/cp/parse.c): Moved from ../Makefile.in.
 
 1999-03-17  Martin von Löwis  <loewis@informatik.hu-berlin.de>
 
-       * parse.y (named_complex_class_head_sans_basetype): 
+       * parse.y (named_complex_class_head_sans_basetype):
        Do not push a scope for error_mark_node.
        (maybe_base_class_list): Likewise.
 
        * decl.c (start_decl): Check for error_mark_node as a type.
        Detected by g++.brendan/array-refs.C.
-       (start_decl_1): Likewise. Detected by g++.bugs/900322_01.C.
-       (maybe_build_cleanup_1): Likewise. Detected by
+       (start_decl_1): Likewise.  Detected by g++.bugs/900322_01.C.
+       (maybe_build_cleanup_1): Likewise.  Detected by
        g++.jason/incomplete1.C.
 
        * tree.c (build_dummy_object): Use void_zero_node instead of the
-       error_mark_node
+       error_mark_node.
        (is_dummy_object): Check for such a node.
        Detected by g++.bob/inherit1.C
 
@@ -566,7 +942,7 @@ Fri Mar 26 10:20:34 1999  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
 
 Mon Mar 15 21:57:16 1999  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
 
-        * lex.c: Don't include setjmp.h.
+       * lex.c: Don't include setjmp.h.
        (parse_float): New static function.
        (pf_args): New struct.
        (real_yylex): Use them in call to `do_float_handler'.
@@ -576,12 +952,12 @@ Mon Mar 15 21:57:16 1999  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
        * decl.c (xref_basetypes): Set CLASSTYPE_VBASECLASSES here.
        * tree.c (layout_basetypes): Not here.
        * search.c (dfs_search): Remove; no longer used.
-       
+
 1999-03-12  Mark Mitchell  <mark@markmitchell.com>
 
        * decl2.c (validate_nonmember_using_decl): Issue sensible
        error-messages on bogus qualifiers.
-       
+
 1999-03-14  Jason Merrill  <jason@yorick.cygnus.com>
 
        * call.c (add_function_candidate): Fix uninitialized variable.
@@ -601,8 +977,8 @@ Mon Mar 15 21:57:16 1999  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
        (process_overload_item): Strip typedefs and quals at the top.
        (build_mangled_name_for_type_with_Gcode): Remove call to
        type_canonical_variant.
-       (build_mangled_name): Likewise.  Remove support for old-style 
-       repeats, which have been disabled since 2.7.2.  Don't mess with 
+       (build_mangled_name): Likewise.  Remove support for old-style
+       repeats, which have been disabled since 2.7.2.  Don't mess with
        TREE_USED.
        (build_decl_overload_real): Don't mess with TREE_USED.
 
@@ -612,28 +988,28 @@ Mon Mar 15 21:57:16 1999  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
        (dump_type_real): Remove TREE_LIST (fnargs) printing.
        Functionality moved to dump_parameters.
        (dump_type_suffix): Use dump_parameters and dump_exception_spec.
-       (dump_function_decl): Extend meaning of V parameter. Use
+       (dump_function_decl): Extend meaning of V parameter.  Use
        dump_parameters and dump_exception_spec.
        (dump_parameters): New static function.
        (dump_exception_spec): New static function.
-       (fndecl_as_string): Change argument semantics. Use
+       (fndecl_as_string): Change argument semantics.  Use
        dump_function_decl directly.
-       
+
        * sig.c (build_signature_table_constructor): Use cp_error.
-       
+
 1999-03-13  Martin von Löwis  <loewis@informatik.hu-berlin.de>
 
        * semantics.c (finish_switch_cond): Handle error cases gracefully.
-       Detected by g++.law/enum5.C
+       Detected by g++.law/enum5.C.
 
        * typeck.c (build_modify_expr): Check for errors after resolving
-       offsets. Detected by g++.brendan/static1.C
+       offsets.  Detected by g++.brendan/static1.C.
 
        * decl.c (complete_array_type): Ignore initial_value if it is an
-       error. Detected by g++.benjamin/17930.C 
+       error.  Detected by g++.benjamin/17930.C.
 
        * typeck2.c (process_init_constructor): Return error if one argument
-       is in error. Detected by g++.benjamin/13478.C
+       is in error.  Detected by g++.benjamin/13478.C.
 
 1999-03-12  Martin von Löwis  <loewis@informatik.hu-berlin.de>
 
@@ -697,7 +1073,7 @@ Mon Mar 15 21:57:16 1999  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
        not set.
        (get_template_base): Use new calling convention for dfs_walk.
        * search.c: Include varray.h.  Add prototypes.
-       (dfs_walk): Accept a data pointer to pass to the work functions. 
+       (dfs_walk): Accept a data pointer to pass to the work functions.
        All callers changed.  All work functions changed.
        (breadth_first_search): Rename to bfs_walk, and make consistent
        with dfs_walk.
@@ -761,7 +1137,7 @@ Mon Mar 15 21:57:16 1999  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
        duplicating logic.
        (compute_access): Robustify.
        (lookup_fnfield_info): New structure.
-       
+
 1999-03-05  Jason Merrill  <jason@yorick.cygnus.com>
 
        * pt.c (tsubst, case ARRAY_REF): Use tsubst_expr again.
@@ -795,18 +1171,18 @@ Mon Mar 15 21:57:16 1999  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
 
        * typeck.c (complete_type_or_else): Add VALUE arg, for helpful
        diagnostics.
-       cp-tree.h (complete_type_or_else): Added VALUE parameter.
+       cp-tree.h (complete_type_or_else): Added VALUE parameter.
        * init.c (build_new_1): Extra arg to complete_type_or_else.
        (build_delete): Likewise.
        * typeck.c (require_complete_type): Likewise.
        (pointer_int_sum): Likewise.
        (pointer_diff): Likewise.
        (build_component_ref): Likewise.
-       
+
        * typeck2.c (incomplete_type_error): Always use cp_error.
        Show declaration of undefined type, if appropriate.
        Deal with UNKNOWN_TYPE nodes.
-       
+
        * typeck.c (require_complete_type): Use TYPE_SIZE as
        size_zero_node to mean incomplete type.
        (require_complete_type_in_void): New function.
@@ -814,30 +1190,31 @@ Mon Mar 15 21:57:16 1999  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
        (build_c_cast): Call complete_type_in_void for void cast.
        * cvt.c (ocp_convert): Call complete_type_in_void for void cast.
        * decl.c (cplus_expand_expr_stmt): Void expression checks moved to
-       require_complete_type_in_void. Call it.
+       require_complete_type_in_void.  Call it.
        * cp-tree.h (require_complete_type_in_void): Prototype new function.
 
-       * typeck.c (convert_arguments): Use alternative format for function 
-       decls. Don't require_complete_type here. Simplify diagnostic printing.
+       * typeck.c (convert_arguments): Use alternative format for
+       function decls.  Don't require_complete_type here.  Simplify
+       diagnostic printing.
        (convert_for_initialization): Don't require_complete_type on RHS yet.
        * call.c (convert_arg_to_ellipsis): Call require_complete_type.
-       
+
        * call.c (build_over_call): Cope with qualified void return type.
-       * semantics.c (finish_call_expr): Likewise
-       * typeck.c (build_function_call_real): Likewise
-       (c_expand_return): Likewise
+       * semantics.c (finish_call_expr): Likewise.
+       * typeck.c (build_function_call_real): Likewise.
+       (c_expand_return): Likewise.
        * decl2.c (reparse_absdcl_as_expr): Cope with qualified void type.
-       
+
        * call.c (print_z_candidates): Use alternate print format, to be
-       consistant with (pt.c) print_candidates.
-       method.c (hack_identifier): List candidate members.
-       search.c (lookup_field): Build ambiguous list, and show it, if
+       consistent with (pt.c) print_candidates.
+       method.c (hack_identifier): List candidate members.
+       search.c (lookup_field): Build ambiguous list, and show it, if
        ambiguous.
 
 1999-02-26  Mark Mitchell  <mark@markmitchell.com>
 
        * typeck.c (decay_conversion): Don't confuse constant array
-       variables with their intiailizers.
+       variables with their initializers.
 
        * decl.c (duplicate_decls): Copy DECL_TEMPLATE_INSTANTIATED when
        merging decls.
@@ -850,7 +1227,7 @@ Mon Mar 15 21:57:16 1999  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
        * class.c (check_for_override): Don't stop checking when we find
        the first overridden function.  Delete #if 0'd code.
        * search.c (get_matching_virtual): Likewise.
-       
+
 1999-02-25  Richard Henderson  <rth@cygnus.com>
 
        * lang-specs.h: Define __FAST_MATH__ when appropriate.
@@ -920,7 +1297,7 @@ Sun Feb 21 20:38:00 1999  H.J. Lu  (hjl@gnu.org)
        (build_unary_op): Don't try to figure out which template
        specialization is being referred to when when the address-of
        operator is used with a template function.
-       
+
 Thu Feb 18 23:40:01 1999  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
 
        * cp-tree.h (lvalue_or_else): Qualify a char* with the `const'
@@ -941,7 +1318,7 @@ Thu Feb 18 23:40:01 1999  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
        (type_unification): Remove prototype.
        * call.c (convert_default_arg): Adjust call to tsubst_expr.
        * class.c (resolve_address_of_overloaded_function): Just use
-       fn_type_unification. 
+       fn_type_unification.
        * decl.c (grokdeclarator): Adjust call to tsubst.
        * method.c (build_template_parm_names): Likewise.
        * pt.c (GTB_VIA_VIRTUAL): New macro.
@@ -964,8 +1341,8 @@ Thu Feb 18 23:40:01 1999  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
        (unify): Adjust handling of classes derived from template types.
        (fn_type_unification): Substitute explicit arguments before
        unification.
-       
-1999-02-16  Kriang Lerdsuwanakij <lerdsuwa@scf-fs.usc.edu>
+
+1999-02-16  Kriang Lerdsuwanakij  <lerdsuwa@scf-fs.usc.edu>
 
        * decl.c (pushdecl): Remove dead code.
 
@@ -1006,24 +1383,24 @@ Thu Feb 18 23:40:01 1999  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
        (markedp): Make it global.
        (dfs_walk): Likewise.
        (dfs_unmark): Likewise.
-       
+
 1999-02-07  Jason Merrill  <jason@yorick.cygnus.com>
 
        * pt.c (maybe_process_partial_specialization): Complain about
        specialization in wrong namespace.
        * tree.c (decl_namespace_context): New fn.
 
-1999-02-06  Kriang Lerdsuwanakij <lerdsuwa@scf-fs.usc.edu>
+1999-02-06  Kriang Lerdsuwanakij  <lerdsuwa@scf-fs.usc.edu>
 
        * decl2.c (arg_assoc_type): Handle TEMPLATE_TEMPLATE_PARM.
-       * pt.c (coerce_template_template_parms): Handle nested 
+       * pt.c (coerce_template_template_parms): Handle nested
        template template parameters.
 
 Sat Feb  6 18:08:40 1999  Jeffrey A Law  (law@cygnus.com)
 
-       * typeck2.c: Update email addrsses.
+       * typeck2.c: Update email addresses.
 
-1999-02-04  Kriang Lerdsuwanakij <lerdsuwa@scf-fs.usc.edu>
+1999-02-04  Kriang Lerdsuwanakij  <lerdsuwa@scf-fs.usc.edu>
 
        * pt.c (unify): Call coerce_template_parms with the COMPLAIN flag
        turned off.
@@ -1032,7 +1409,7 @@ Sat Feb  6 18:08:40 1999  Jeffrey A Law  (law@cygnus.com)
 
        * lex.c (retrofit_lang_decl): Split out...
        (build_lang_decl): From here.
-       * decl.c (pushdecl): Call it for functions generated by the middle 
+       * decl.c (pushdecl): Call it for functions generated by the middle
        end that don't have DECL_LANG_SPECIFIC.
        * cp-tree.h: Declare it.
 
@@ -1042,13 +1419,13 @@ Sat Feb  6 18:08:40 1999  Jeffrey A Law  (law@cygnus.com)
        (do_ctors, do_dtors): Use DEFAULT_INIT_PRIORITY for the non-initp
        objects.
 
-Wed Feb  3 22:50:17 1999  Marc Espie <Marc.Espie@liafa.jussieu.fr>
+Wed Feb  3 22:50:17 1999  Marc Espie  <Marc.Espie@liafa.jussieu.fr>
 
-        * Make-lang.in (GXX_OBJS): Remove choose-temp.o, pexecute.o and
+       * Make-lang.in (GXX_OBJS): Remove choose-temp.o, pexecute.o and
        mkstemp.o.  Get them from libiberty now.
        (DEMANGLER_PROG): Simlarly, remove getopt.o getopt1.o.
-       
-Tue Feb  2 22:38:48 1999  Theodore Papadopoulo <Theodore.Papadopoulo@sophia.inria.fr>
+
+Tue Feb  2 22:38:48 1999  Theodore Papadopoulo  <Theodore.Papadopoulo@sophia.inria.fr>
 
        * decl2.c (lang_decode_option): Use read_integral_parameter.
 
@@ -1107,10 +1484,10 @@ Sun Jan 31 20:34:29 1999  Zack Weinberg  <zack@rabi.columbia.edu>
        been marked used already.
        * decl.c (expand_static_init): Call mark_used instead of
        assemble_external.
-       * except.c (call_eh_info, do_pop_exception, expand_end_eh_spec, 
+       * except.c (call_eh_info, do_pop_exception, expand_end_eh_spec,
        alloc_eh_object, expand_throw): Likewise.
        * init.c (build_builtin_delete_call): Likewise.
-       * rtti.c (call_void_fn, get_tinfo_fn, build_dynamic_cast_1, 
+       * rtti.c (call_void_fn, get_tinfo_fn, build_dynamic_cast_1,
        expand_si_desc, expand_class_desc, expand_ptr_desc, expand_attr_desc,
        expand_generic_desc): Likewise.
 
@@ -1152,7 +1529,7 @@ Sun Jan 31 20:34:29 1999  Zack Weinberg  <zack@rabi.columbia.edu>
        (pushdecl): Use symbolic PUSH_ constants in calls to
        push_overloaded_decl.
        (push_overloaded_decl_1): Likewise.
-       * decl2.c (validate_nonmember_using_decl): Tweak `std' handling. 
+       * decl2.c (validate_nonmember_using_decl): Tweak `std' handling.
        (do_nonmember_using_decl): Check for illegal using declarations
        after ordinary declarations here.
        (do_local_using_decl): Call pushdecl to insert declarations.
@@ -1165,7 +1542,7 @@ Sun Jan 31 20:34:29 1999  Zack Weinberg  <zack@rabi.columbia.edu>
 
        * tree.c (build_cplus_array_type_1): Don't call build_array_type
        for types involving template parameters.
-       
+
        * cp-tree.h (PARM_DECL_EXPR): Delete.
        (convert_default_arg): Change prototype.
        (check_default_argument): Declare.
@@ -1185,12 +1562,12 @@ Sun Jan 31 20:34:29 1999  Zack Weinberg  <zack@rabi.columbia.edu>
        * tree.c (search_tree): Don't make it static.
        * typeck.c (convert_arguments): Use new interface to
        convert_default_arg.
-       
+
 1999-01-20  Mark Mitchell  <mark@markmitchell.com>
 
        * error.c (dump_function_decl): Don't print the argument types for
        a function when the verbosity level is negative.
-       
+
        * call.c (build_over_call): Check format attributes at call-time.
 
        * pt.c (tsubst_copy): Fix comment.
@@ -1211,19 +1588,19 @@ Sun Jan 31 20:34:29 1999  Zack Weinberg  <zack@rabi.columbia.edu>
 
 1999-01-18  Nathan Sidwell  <nathan@acm.org>
 
-        * class.c (instantiate_type): Only diagnose illegal address of member
-        function if complaining.
+       * class.c (instantiate_type): Only diagnose illegal address of member
+       function if complaining.
 
-        * decl.c (lookup_name_real): Remove duplicate code.
+       * decl.c (lookup_name_real): Remove duplicate code.
 
 1999-01-18  Jason Merrill  <jason@yorick.cygnus.com>
 
        * tree.c (copy_template_template_parm): Use permanent_obstack.
 
-1999-01-18  Kriang Lerdsuwanakij <lerdsuwa@scf-fs.usc.edu>
+1999-01-18  Kriang Lerdsuwanakij  <lerdsuwa@scf-fs.usc.edu>
 
-        * pt.c (unify): Remove restrictions on deduction of argument
-        of template template parameters.
+       * pt.c (unify): Remove restrictions on deduction of argument
+       of template template parameters.
 
 1999-01-18  Nathan Sidwell  <nathan@acm.org>
 
@@ -1237,7 +1614,7 @@ Sun Jan 31 20:34:29 1999  Zack Weinberg  <zack@rabi.columbia.edu>
        * typeck.c (comp_ptr_ttypes_reinterpret): Per ANSI, tighten up
        definition of 'casting away const' in reinterpret_cast<>.
 
-1999-01-18  Graham <grahams@rcp.co.uk>
+1999-01-18  Graham  <grahams@rcp.co.uk>
 
        * cvt.c: Add include for decl.h, remove extern for
        static_aggregates which is now provided by decl.h.
@@ -1306,16 +1683,16 @@ Sun Jan 31 20:34:29 1999  Zack Weinberg  <zack@rabi.columbia.edu>
 1999-01-06  Mark Mitchell  <mark@markmitchell.com>
 
        * cp-tree.h (IDENTIFIER_TYPENAME_P): Use OPERATOR_TYPENAME_FORMAT
-       here. 
+       here.
        (lang_type): Add is_partial_instantiation.  Decrease width of
-       dummy. 
+       dummy.
        (PARTIAL_INSTANTIATION_P): New macro.
        (OPERATOR_TYPENAME_P): Remove.
        * decl.c (unary_op_p): Use IDENTIFIER_TYPENAME_P, not
-       OPERATOR_TYPENAME_P. 
+       OPERATOR_TYPENAME_P.
        (grok_op_properties): Likewise.
        * friend.c (do_friend): Handle friends that are member functions
-       correctly. 
+       correctly.
        * lex.c (init_parse): Use OPERATOR_TYPENAME_FORMAT.
        * pt.c (instantiate_class_template): Rework for clarity.  Avoid
        leaving TYPE_BEING_DEFINED set in obscure cases.  Don't do
@@ -1324,8 +1701,8 @@ Sun Jan 31 20:34:29 1999  Zack Weinberg  <zack@rabi.columbia.edu>
        (tsubst_decl): Use IDENTIFIER_TYPENAME_P.
        * semantics.c (begin_class_definition): Handle partial
        specializations of a type that was previously partially
-       instantiated. 
-       
+       instantiated.
+
 Wed Jan  6 03:18:53 1999  Mark Elbrecht  <snowball3@usa.net.
 
        * g++spec.c (LIBSTDCXX): Provide default definition.
@@ -1333,7 +1710,7 @@ Wed Jan  6 03:18:53 1999  Mark Elbrecht  <snowball3@usa.net.
 
 Tue Jan  5 22:11:25 1999  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
 
-        * Make-lang.in (g++.o): Depend on prefix.h.
+       * Make-lang.in (g++.o): Depend on prefix.h.
 
 1999-01-04  Jason Merrill  <jason@yorick.cygnus.com>
 
@@ -1368,7 +1745,7 @@ Tue Dec 22 15:09:25 1998  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
 
        * cp-tree.h (TYPE_RAISES_EXCEPTIONS): Improve documentation.
        * tree.c (build_exception_variant): Don't crash on empty throw
-       specs. 
+       specs.
 
 1998-12-18  DJ Delorie  <dj@cygnus.com>
 
@@ -1392,13 +1769,13 @@ Tue Dec 22 15:09:25 1998  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
        (DECL_TEMPLATE_TEMPLATE_PARM_P): Use it.
        (decl_template_parm_p): Remove.
        * decl.c (pushdecl): Don't set DECL_CONTEXT for a template
-       paramter. 
+       parameter.
        * lex.c (do_identifier): Use DECL_TEMPLATE_PARM_P.
        * pt.c (push_inline_template_parms_recursive): Set it.
        (decl_template_parm_p): Remove.
        (check_template_shadow): Use DECL_TEMPLATE_PARM_P.
        (process_template_parm): Set it.
-       
+
 Wed Dec 16 16:33:58 1998  Dave Brolley  <brolley@cygnus.com>
 
        * lang-specs.h (default_compilers): Pass -MD, -MMD and -MG to cc1plus
@@ -1407,15 +1784,15 @@ Wed Dec 16 16:33:58 1998  Dave Brolley  <brolley@cygnus.com>
 1998-12-15  Mark Mitchell  <mark@markmitchell.com>
 
        * decl.c (poplevel): Make sure ns_binding is initialized.
-       
-       * decl.c (finish_function): Undo inadvertant change in previous
+
+       * decl.c (finish_function): Undo inadvertent change in previous
        patch.
 
 1998-12-14  Mark Mitchell  <mark@markmitchell.com>
 
        * class.c (pushclass): Tweak handling of class-level bindings.
        (resolve_address_of_overloaded_function): Update pointer-to-member
-       handling. 
+       handling.
        (instantiate_type): Likewise.
        * cvt.c (cp_convert_to_pointer): Likewise.
        * decl.c (pop_binding): Take the DECL to pop, not just the name.
@@ -1431,11 +1808,11 @@ Wed Dec 16 16:33:58 1998  Dave Brolley  <brolley@cygnus.com>
        declarations to current binding level.
        (push_class_level_binding): Likewise.
        (push_overloaded_decl): Adjust handling of OVERLOADs in local
-       bindings. 
+       bindings.
        (lookup_namespace_name): Don't crash when confronted with a
-       TEMPLATE_DECL. 
+       TEMPLATE_DECL.
        (lookup_name_real): Do `struct stat' hack in local binding
-       contexts. 
+       contexts.
        (build_ptrmemfunc_type): Adjust documentation.
        (grokdeclarator): Don't avoid building real array types when
        processing templates unless really necessary.
@@ -1451,8 +1828,8 @@ Wed Dec 16 16:33:58 1998  Dave Brolley  <brolley@cygnus.com>
        pointer-to-member types where necessary.
        * tree.c (build_cplus_array_type_1): Don't avoid building real
        array types when processing templates unless really necessary.
-       (build_exception_variant): Compare the exception lists correctly. 
-       
+       (build_exception_variant): Compare the exception lists correctly.
+
 1998-12-13  Mark Mitchell  <mark@markmitchell.com>
 
        * cp-tree.def (CPLUS_BINDING): Update documentation.
@@ -1494,11 +1871,11 @@ Wed Dec 16 16:33:58 1998  Dave Brolley  <brolley@cygnus.com>
        (lookup_name_current_level): Likewise.
        (cp_finish_decl): Likewise.
        (require_complete_types_for_parms): Likewise.  Remove misleading
-       #if 0'd code. 
+       #if 0'd code.
        (grok_parms): Likewise.  Don't call
        require_complete_types_for_parms here.
        (grok_ctor_properties): Don't treat templates as copy
-       constructors. 
+       constructors.
        (grop_op_properties): Or as assignment operators.
        (start_function): Document.  Adjust for new name-lookup scheme.
        (finish_function): Likewise.
@@ -1522,7 +1899,7 @@ Wed Dec 16 16:33:58 1998  Dave Brolley  <brolley@cygnus.com>
        appropriate values to finish_function.
        * pt.c (is_member_template): Update documentation; remove handling
        of FUNCTION_DECLs.  As per name, this function should deal only in
-       TEMPLATE_DECLs. 
+       TEMPLATE_DECLs.
        (decl_template_parm_p): Change name of olddecl parameter to decl.
        (check_template_shadow): Adjust for new name-lookup scheme.
        (lookup_template_class): Likewise.
@@ -1533,14 +1910,14 @@ Wed Dec 16 16:33:58 1998  Dave Brolley  <brolley@cygnus.com>
        (lang_print_xnode): Adjust for new name-lookup scheme.
        * typeck.c (mark_addressable): Likewise.
        (c_expand_return): Likewise.
-       
+
 1998-12-08  Jason Merrill  <jason@yorick.cygnus.com>
 
        * decl.c (grokdeclarator): Allow field with same name as class
        in extern "C".
 
        * decl.c (lookup_name_real): Don't limit field lookup to types.
-       * class.c (check_member_decl_is_same_in_complete_scope): No error 
+       * class.c (check_member_decl_is_same_in_complete_scope): No error
        if icv and x are the same.
        * lex.c (do_identifier): Tweak error message.
 
@@ -1553,7 +1930,7 @@ Wed Dec 16 16:33:58 1998  Dave Brolley  <brolley@cygnus.com>
 1998-12-10  Mark Mitchell  <mark@markmitchell.com>
 
        * class.c (instantiate_type): Return error_mark_node rather than
-       junk. 
+       junk.
 
 1998-12-09  Mark Mitchell  <mark@markmitchell.com>
 
@@ -1586,17 +1963,17 @@ Wed Dec  9 15:33:01 1998  Dave Brolley  <brolley@cygnus.com>
 
 1998-12-08  Andrew MacLeod  <amacleod@cygnus.com>
 
-       * cp/except.c (call_eh_info): use __start_cp_handler instead of
-       __cp_eh_info for getting the eh info pointer. Add table_index to
+       * cp/except.c (call_eh_info): Use __start_cp_handler instead of
+       __cp_eh_info for getting the eh info pointer.  Add table_index to
        field list.
        (push_eh_cleanup): Don't increment 'handlers' data field.
        (process_start_catch_block): Don't set the 'caught' field.
 
-       * cp/exception.cc (CP_EH_INFO): New macro for getting the 
+       * cp/exception.cc (CP_EH_INFO): New macro for getting the
        exception info pointer within library routines.
        (__cp_eh_info): Use CP_EH_INFO.
        (__start_cp_handler): Get exception info pointer, set caught field,
-       and increment the handlers field. Avoids this being done by handlers.
+       and increment the handlers field.  Avoids this being done by handlers.
        (__uncatch_exception, __check_eh_spec): Use CP_EH_INFO macro.
        (uncaught_exception): Use CP_EH_INFO macro.
 
@@ -1608,14 +1985,14 @@ Mon Dec  7 17:56:06 1998  Mike Stump  <mrs@wrs.com>
 
        * lex.c (check_newline): Add support for \ as `natural'
        characters in file names in #line to be consistent with #include
-       handling.  We support escape prcessing in the # 1 "..." version of
+       handling.  We support escape processing in the # 1 "..." version of
        the command.  See also support in cp/lex.c.
-       
+
 1998-12-07  Zack Weinberg  <zack@rabi.phys.columbia.edu>
 
-       * cp/decl2.c: s/data/opts/ when initializing cpp_reader 
-          structure.
-       
+       * cp/decl2.c: s/data/opts/ when initializing cpp_reader
+       structure.
+
 1998-12-07  Jason Merrill  <jason@yorick.cygnus.com>
 
        * decl.c (build_typename_type): Set DECL_ARTIFICIAL.
@@ -1677,12 +2054,12 @@ Mon Dec  7 17:56:06 1998  Mike Stump  <mrs@wrs.com>
        constructors in base classes.
        (validate_lhs): Fix typo in comment.
        * search.c (lookup_field_1): Don't return a USING_DECL.
-       
+
        * cp-tree.h (DECL_ACCESS): Improve documentation.
 
        * decl.c (expand_static_init): Don't set the initialization-done
        flag until the initialization is done.
-       
+
 1998-12-02  Mark Mitchell  <mark@markmitchell.com>
 
        * decl2.c (validate_nonmember_using_decl): Complain about using
@@ -1692,7 +2069,7 @@ Mon Dec  7 17:56:06 1998  Mike Stump  <mrs@wrs.com>
 
        * typeck2.c (process_init_constructor): Use same_type_p.
 
-       * decl.c (check_tag_decl): Don't warn about null decl inside a 
+       * decl.c (check_tag_decl): Don't warn about null decl inside a
        class.
 
        * pt.c (unify, case OFFSET_TYPE): Pass down 'strict' rather than
@@ -1738,7 +2115,7 @@ Fri Nov 27 13:07:23 1998  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
 
 1998-11-24  Dave Pitts  <dpitts@cozx.com>
 
-       * Make-lang.in (DEMANGLER_PROG): Move the output argumnts to the 
+       * Make-lang.in (DEMANGLER_PROG): Move the output arguments to the
        first position.
        * lex.c (check_newline): Use ISALPHA.
        (readescape): Use ISGRAPH.
@@ -1755,7 +2132,7 @@ Fri Nov 27 13:07:23 1998  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
        * class.c (finish_struct_bits): Don't bother working out whether
        get_abstract_virtuals will do anything, just do it.
 
-1998-11-24  Graham <grahams@rcp.co.uk>
+1998-11-24  Graham  <grahams@rcp.co.uk>
 
        * typeck.c (build_component_ref): Remove unused statement.
 
@@ -1767,10 +2144,10 @@ Fri Nov 27 13:07:23 1998  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
        * search.c (lookup_conversions): Handle getting real OVERLOADs.
        (add_conversions): Likewise.  Revert last change.
        * call.c (add_conv_candidate): Pass totype to add_candidate instead
-       of fn.  Don't add a new candidate if the last one was for the same 
+       of fn.  Don't add a new candidate if the last one was for the same
        type.
        (print_z_candidates): Handle getting a type as a function.
-       (joust): If we got two conversion candidates to the same type, 
+       (joust): If we got two conversion candidates to the same type,
        just pick one.
        (build_object_call): Lose 'templates'.
        (build_user_type_conversion_1): Handle getting real OVERLOADs.
@@ -1793,12 +2170,12 @@ Fri Nov 27 13:07:23 1998  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
 
 1998-11-23  Benjamin Kosnik  <bkoz@cygnus.com>
 
-        * method.c (process_overload_item): Add call to
-        build_mangled_C9x_name for intTI_type_nodes.
-        (build_mangled_C9x_name): Add prototype, define.
-        * decl.c (init_decl_processing): Add names for
-        TImode_type_node. 
-       
+       * method.c (process_overload_item): Add call to
+       build_mangled_C9x_name for intTI_type_nodes.
+       (build_mangled_C9x_name): Add prototype, define.
+       * decl.c (init_decl_processing): Add names for
+       TImode_type_node.
+
 1998-11-23  Jason Merrill  <jason@yorick.cygnus.com>
 
        * parse.y (named_class_head): Update CLASSTYPE_DECLARED_CLASS.
@@ -1902,7 +2279,7 @@ Fri Nov 27 13:07:23 1998  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
        * decl.c (grok_ctor_properties): Complain about any constructor
        that will take a single arg of the class type by value.
 
-       * typeck2.c (build_functional_cast): Can't create objects of 
+       * typeck2.c (build_functional_cast): Can't create objects of
        abstract classes this way.
        * cvt.c (ocp_convert): Likewise.
 
@@ -1971,7 +2348,7 @@ Fri Nov 27 13:07:23 1998  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
        (xref_basetypes): Likewise.
        (start_function): Likewise.  Don't put current_class_ref on the
        permanent obstack.
-       * error.c (dump_type_real): Use TEMPLATE_TEMPLATE_PARM_TEMPLATE_INFO
+       * error.c (dump_type_real): Use TEMPLATE_TEMPLATE_PARM_TEMPLATE_INFO
        and TYPE_TI_ARGS.
        * lex.c (note_got_semicolon): Use CLASS_TYPE_P.
        (make_lang_type): Don't create TYPE_LANG_SPECIFIC and associated
@@ -1980,15 +2357,15 @@ Fri Nov 27 13:07:23 1998  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
        * method.c (build_overload_identifier): Use CLASS_TYPE_P and
        TEMPLATE_TEMPLATE_PARM_TEMPLATE_INFO.
        * pt.c (process_template_parm): Don't set
-       CLASSTYPE_GOT_SEMICOLON.  
-       (lookup_template_class) Use TEMPLATE_TEMPLATE_PARM_TEMPLATE_INFO.
+       CLASSTYPE_GOT_SEMICOLON.
+       (lookup_template_class): Use TEMPLATE_TEMPLATE_PARM_TEMPLATE_INFO.
        Coerce arguments on the momentary obstack.
        (for_each_template_parm): Use TEMPLATE_TEMPLATE_PARM_TEMPLATE_INFO.
        (instantiate_class_template): Calculate template arguments on the
        momentary obstack.  Tidy.
        (tsubst_template_arg_vector): Use make_temp_vec.
        (tsubst_aggr_type): Put template arguments on the momentary
-       obstack. 
+       obstack.
        (tsubst_decl): Likewise.
        (tsubst): Copy the array bounds index to the permanent obstack
        before building index types.  Use new macros.
@@ -2003,10 +2380,10 @@ Fri Nov 27 13:07:23 1998  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
        SET_IS_AGGR_TYPE.
        * tree.c (make_binfo): Check CLASS_TYPE_P.
        (copy_template_template_parm): Adjust.
-       (make_temp_vec): Use push_expresion_obstack.
+       (make_temp_vec): Use push_expression_obstack.
        * typeck.c (complete_type): Use new macros.
        (comptypes): Likewise.
-       
+
 1998-11-17  Jason Merrill  <jason@yorick.cygnus.com>
 
        * pt.c (tsubst): Add diagnostics for invalid array, reference
@@ -2027,7 +2404,7 @@ Fri Nov 27 13:07:23 1998  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
 
        * typeck.c (expr_sizeof): Complain about sizeof an overloaded fn.
 
-       * rtti.c (build_x_typeid): Complain about typeid without 
+       * rtti.c (build_x_typeid): Complain about typeid without
        including <typeinfo>.
        (get_typeid): Likewise.  Complain about typeid of incomplete type.
        (get_tinfo_fn_dynamic): Likewise.
@@ -2051,12 +2428,12 @@ Fri Nov 27 13:07:23 1998  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
        (tsubst_decl): Don't clear DECL_INITIAL for an instantiation.
        (regenerate_decl_from_template): Tweak accordingly.
        (instantiate_decl): Likewise.
-       
+
 1998-11-16  Jason Merrill  <jason@yorick.cygnus.com>
 
        * decl.c (cplus_expand_expr_stmt): Promote warning about naked
        member function reference to error.
-       * cvt.c (ocp_convert): Complain about converting an overloaded 
+       * cvt.c (ocp_convert): Complain about converting an overloaded
        function to void.
 
        * init.c (build_offset_ref): Just return a lone static member
@@ -2071,7 +2448,7 @@ Fri Nov 27 13:07:23 1998  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
 
        * typeck.c (string_conv_p): Don't convert from wchar_t[] to char*.
 
-       * call.c (build_method_call): Handle a BIT_NOT_EXPR around a 
+       * call.c (build_method_call): Handle a BIT_NOT_EXPR around a
        TYPE_DECL in a template.
 
 1998-11-15  Jason Merrill  <jason@yorick.cygnus.com>
@@ -2081,7 +2458,7 @@ Fri Nov 27 13:07:23 1998  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
        * decl.c (struct cp_function): Add named_label_uses.
        (push_cp_function_context): Save it.
        (pop_cp_function_context): Restore it.
-       (define_label): Also complain about jumping into the scope of 
+       (define_label): Also complain about jumping into the scope of
        non-POD objects that don't have constructors.
        * tree.c (pod_type_p): New fn.
 
@@ -2120,10 +2497,10 @@ Fri Nov 27 13:07:23 1998  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
 
 1998-11-08  Jason Merrill  <jason@yorick.cygnus.com>
 
-       * pt.c (tsubst_decl): Don't mess with the global value of an 
+       * pt.c (tsubst_decl): Don't mess with the global value of an
        un-mangled DECL_ASSEMBLER_NAME.
 
-1998-11-03  Christopher Faylor <cgf@cygnus.com>
+1998-11-03  Christopher Faylor  <cgf@cygnus.com>
 
        * decl.c (init_decl_processing): Remove CYGWIN conditional
        since CYGWIN is now able to deal with trapping signals.
@@ -2142,13 +2519,13 @@ Sat Nov  7 15:48:02 1998  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
        (TEMPLATE_PARMS_FOR_INLINE): Document.
        (check_static_variable_definition): New function.
        * decl.c (cp_finish_decl): Set DECL_DEFINED_IN_CLASS_P, if
-       appropriate. 
+       appropriate.
        (check_static_variable_definition): Split out from ...
        (grokdeclarator): Here.
        * pt.c (check_default_tmpl_args): New function, split out from ...
        (push_template_decl_real): Here.
        (instantiate_template): Fix comment.
-       
+
 1998-11-04  Mark Mitchell  <mark@markmitchell.com>
 
        * cp-tree.h (CP_TYPE_CONST_P): Make {0,1}-valued.
@@ -2175,10 +2552,10 @@ Sat Nov  7 15:48:02 1998  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
 
 1998-11-02  Alexandre Oliva  <oliva@dcc.unicamp.br>
 
-       * parse.y (apparent_template_type): new type
-       (named_complex_class_head_sans_basetype): use it
-       * Makefile.in (CONFLICTS): one new conflict
-       * parse.c: Regenerated
+       * parse.y (apparent_template_type): New type.
+       (named_complex_class_head_sans_basetype): Use it.
+       * Makefile.in (CONFLICTS): One new conflict.
+       * parse.c: Regenerated.
 
 1998-11-01  Mark Mitchell  <mark@markmitchell.com>
 
@@ -2245,7 +2622,7 @@ Sat Nov  7 15:48:02 1998  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
        (comp_ptr_ttypes_real): Likewise.
        (ptr_reasonably_similar): Likewise.
        (comp_ptr_ttypes_const): Likewise.
-       
+
 1998-10-31  Jason Merrill  <jason@yorick.cygnus.com>
 
        * rtti.c (build_dynamic_cast_1): Fix cut-and-paste error.
@@ -2263,7 +2640,7 @@ Sat Nov  7 15:48:02 1998  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
        exception-correctness.
        * typeck2.c (process_init_constructor): Make mutual exclusivity
        of cases more obvious.
-       
+
 1998-10-29  Jason Merrill  <jason@yorick.cygnus.com>
 
        * decl.c (lookup_name_real): OK, only warn if not lexing.
@@ -2288,7 +2665,7 @@ Sat Nov  7 15:48:02 1998  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
        last.
 
 1998-10-28  Zack Weinberg  <zack@rabi.phys.columbia.edu>
-       
+
        * lex.c: Call check_newline from lang_init always.  After
        calling cpp_start_read, set yy_cur and yy_lim to read from the
        cpplib token buffer.
@@ -2313,7 +2690,7 @@ Sat Nov  7 15:48:02 1998  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
        * init.c (build_delete): Reset TYPE_HAS_DESTRUCTOR here.
        * decl.c (finish_function): Not here.
        (start_function): Do set DECL_INITIAL.
-       
+
        * pt.c (push_template_decl_real): Complain about default template
        args for enclosing classes.
 
@@ -2376,7 +2753,7 @@ Sat Nov  7 15:48:02 1998  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
        * decl.c (init_decl_processing): Likewise.
        * except.c (expand_end_eh_spec): Likewise.
        * search.c (expand_upcast_fixups): Simplify very slightly.
-       
+
 1998-10-26  Jason Merrill  <jason@yorick.cygnus.com>
 
        * decl.c (grokdeclarator): Complain about a variable using
@@ -2411,7 +2788,7 @@ Sat Nov  7 15:48:02 1998  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
 
 1998-10-26  Jason Merrill  <jason@yorick.cygnus.com>
 
-       * typeck.c (convert_arguments): Don't handle pmf references 
+       * typeck.c (convert_arguments): Don't handle pmf references
        specially.
 
        * init.c (build_member_call): Don't try to convert to the base type
@@ -2424,7 +2801,7 @@ Sat Nov  7 15:48:02 1998  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
 
        * decl.c (grokdeclarator): Set DECL_NONCONVERTING_P for all
        non-converting constructors.
-       
+
 1998-10-24  Martin von Löwis  <loewis@informatik.hu-berlin.de>
 
        * gxxint.texi: Correct documentation for n, N, Q, and B.
@@ -2460,7 +2837,7 @@ Sat Nov  7 15:48:02 1998  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
        (cp_type_quals): New function.
        (at_least_as_qualified_p): Likewise.
        (more_qualified_p): Likewise.
-       
+
        * call.c (standard_conversion): Replace calls to
        cp_build_type_variant with cp_build_qualified_type.  Use
        CP_TYPE_QUALS to get qualifiers and at_least_as_qualified_p to
@@ -2519,7 +2896,7 @@ Sat Nov  7 15:48:02 1998  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
        (expand_class_desc): Likewise.
        (expand_attr_desc): Likewise.
        (synthesize_tinfo_fn): Likewise.
-       * search.c (covariant_return_p): Likewise.  Fix `volatile' handling. 
+       * search.c (covariant_return_p): Likewise.  Fix `volatile' handling.
        (get_matching_virtual): Likewise.
        (expand_upcast_fixups): Likewise.
        * sig.c (build_signature_pointer_or_reference_name): Take
@@ -2555,7 +2932,7 @@ Sat Nov  7 15:48:02 1998  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
        (convert_For_assignment): Likewise.
        (comp_ptr_ttypes_real): Likewise.
        (cp_type_quals): New function.
-       
+
 1998-10-23  Jason Merrill  <jason@yorick.cygnus.com>
 
        * cp-tree.h (CP_TYPE_READONLY): New macro to handle arrays.
@@ -2569,7 +2946,7 @@ Sat Nov  7 15:48:02 1998  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
        base class list.
        * decl2.c (push_scope, pop_scope): New functions.
        * cp-tree.h: Declare them.
-        * init.c (build_new_1): Delay cleanup until end of full expression.
+       * init.c (build_new_1): Delay cleanup until end of full expression.
 
 1998-10-21  Jason Merrill  <jason@yorick.cygnus.com>
 
@@ -2580,7 +2957,7 @@ Sat Nov  7 15:48:02 1998  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
        Revamp references to member functions.
        * method.c (hack_identifier): Call build_component_ref for a
        reference to a member function.
-       * typeck.c (build_component_ref): Only return a single function 
+       * typeck.c (build_component_ref): Only return a single function
        if it's static.  Otherwise, return a COMPONENT_REF.
        (build_x_function_call): Handle a COMPONENT_REF.
        (build_unary_op): Handle all unknown-type things.
@@ -2622,7 +2999,7 @@ Sat Nov  7 15:48:02 1998  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
 
        * parse.y (fn.def2): Fix 'attrs' format.
 
-1998-10-18  Alastair J. Houghton <ajh8@doc.ic.ac.uk>
+1998-10-18  Alastair J. Houghton  <ajh8@doc.ic.ac.uk>
 
        * Makefile.in (CONFLICTS): Update.
        * parse.y (expr_or_declarator_intern): New rule.
@@ -2640,7 +3017,7 @@ Sat Oct 17 23:27:20 1998  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
 
        * class.c (make_method_vec): Cast 1st argument of `bzero' to (PTR).
        (add_method): Likewise for arguments 1 & 2 of `bcopy'.
-       
+
        * decl.c (signal_catch): Mark with ATTRIBUTE_NORETURN.
 
        * pt.c (process_partial_specialization): Cast 1st argument of
@@ -2662,13 +3039,13 @@ Sat Oct 17 23:27:20 1998  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
        * decl.c (grokfndecl): Add back call to cplus_decl_attributes
        accidentally removed by previous change, and make DECL_RTL here.
        * class.c (add_method): Don't make DECL_RTL here.
-       
+
        * pt.c (for_each_template_parm): Don't examine uninstantiated
        default arguments.
 
 1998-10-16  Dave Brolley  <brolley@cygnus.com>
 
-        * lex.c (real_yylex): Fix unaligned access of wchar_t.
+       * lex.c (real_yylex): Fix unaligned access of wchar_t.
 
 1998-10-16  Mark Mitchell  <mark@markmitchell.com>
 
@@ -2682,8 +3059,8 @@ Sat Oct 17 23:27:20 1998  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
        class type is complete.
        (grokfield): Reformat error message.
        * method.c (set_mangled_name_for_decl): Don't mangle names while
-       procesing_template_decl.
-       
+       processing_template_decl.
+
 1998-10-16  Jason Merrill  <jason@yorick.cygnus.com>
 
        * typeck.c (build_indirect_ref): Complain about a pointer to data
@@ -2728,12 +3105,12 @@ Sat Oct 17 23:27:20 1998  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
        (make_typename_type): Use it.
        * search.c (lookup_field): Likewise.
 
-1998-10-14 Benjamin Kosnik  <bkoz@rhino.cygnus.com>
+1998-10-14  Benjamin Kosnik  <bkoz@rhino.cygnus.com>
 
        * pt.c (convert_nontype_argument): Check against type_referred_to.
-        * decl.c (grokvardecl): Check for declarator name before building
+       * decl.c (grokvardecl): Check for declarator name before building
        DECL_ASSEMBLER_NAME.
-        
+
 1998-10-14  Mark Mitchell  <mark@markmitchell.com>
 
        * pt.c (lookup_template_class): Add comment.
@@ -2764,12 +3141,12 @@ Sat Oct 17 23:27:20 1998  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
        (unify): Don't use it.
        (lookup_template_class): Find the correct parent when setting
        CLASSTYPE_TI_TEMPLATE.
-       
+
 1998-10-12  Jason Merrill  <jason@yorick.cygnus.com>
 
        * tinfo.cc (operator==): Always compare names.
 
-1998-10-12  Herman ten Brugge <Haj.Ten.Brugge@net.HCC.nl>
+1998-10-12  Herman ten Brugge  <Haj.Ten.Brugge@net.HCC.nl>
 
        * decl.c (start_function): Fix cut-and-paste error.
 
@@ -2783,7 +3160,7 @@ Sat Oct 17 23:27:20 1998  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
 
        * typeck2.c (my_friendly_abort): Add URL.
 
-1998-10-12  Alastair J. Houghton <ajh8@doc.ic.ac.uk>
+1998-10-12  Alastair J. Houghton  <ajh8@doc.ic.ac.uk>
 
        * decl.c (start_method): Added extra parameter for attributes.
        * cp-tree.h (start_method): Update prototype.
@@ -2796,7 +3173,7 @@ Sat Oct 17 23:27:20 1998  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
        (unify): Use it.
        * search.c (get_template_base): Use it.
        (get_template_base_recursive): Likewise.
-       
+
 1998-10-10  Manfred Hollstein  <manfred@s-direktnet.de>
 
        * decl2.c (start_objects): Add new variable `joiner' and
@@ -2833,7 +3210,7 @@ Thu Oct  8 06:00:19 1998  Jeffrey A Law  (law@cygnus.com)
 
        * typeck.c (unsigned_type): Only return TItype nodes when
        HOST_BITS_PER_WIDE_INT is >= 64 bits.
-       (signed_type): Similarly.
+       (signed_type): Likewise.
        * decl.c (intTI_type_node, unsigned_intTI_type_node): Only declare
        when HOST_BITS_PER_WIDE_INT is >= 64 bits.
        (init_decl_processing): Only create TItype nodes when
@@ -2849,7 +3226,7 @@ Wed Oct  7 12:32:44 1998  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
 
 1998-10-07  Mark Mitchell  <mark@markmitchell.com>
 
-       * class.c (finish_struct_1): Add commentary on prevous change.
+       * class.c (finish_struct_1): Add commentary on previous change.
 
        * cp-tree.h (vtbl_ptr_type_node): New variable.
        * class.c (build_vtbl_ref): Don't indirect through the vptr; it's
@@ -2858,7 +3235,7 @@ Wed Oct  7 12:32:44 1998  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
        Simplify code to grow vtable.
        * decl.c (vtbl_ptr_type_node): Define.
        (init_decl_processing): Initialize it.
-       
+
 1998-10-06  Mark Mitchell  <mark@markmitchell.com>
 
        * cp-tree.def (PTRMEM_CST): New tree node.
@@ -2912,7 +3289,7 @@ Wed Oct  7 12:32:44 1998  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
        (maybe_push_to_top_level): Save it.
        (pop_from_top_level): Restore it.
        (maybe_process_template_type_declaration): Use
-       finish_member_declaration. 
+       finish_member_declaration.
        (pushtag): Likewise.
        (pushdecl_class_level): Don't return a value.
        (fixup_anonymous_union): Break out from grok_x_components.
@@ -2957,7 +3334,7 @@ Wed Oct  7 12:32:44 1998  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
        (for_each_template_parm): Handle PTRMEM_CST.
        (instantiate_class_template): Use set_current_access_from_decl,
        finish_member_declaration and unreverse_member_declarations.  Set
-       lineno/input_filename before generating implicit member functions.  
+       lineno/input_filename before generating implicit member functions.
        (type_unification_real): Don't assume back-unification happens
        only for the last argument.
        (regenerate_decl_from_template): Call pushclass a bit earlier.
@@ -2981,7 +3358,7 @@ Wed Oct  7 12:32:44 1998  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
        (mapcar): Likewise.
        * typeck.c (unary_complex_lvalue): Build PTRMEM_CSTs, not
        INTEGER_CSTs, for pointer-to-data members.
-       
+
        * call.c (resolve_args): Resolve template specializations, if
        possible.
 
@@ -2990,7 +3367,7 @@ Tue Oct  6 07:57:26 1998  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
        * Makefile.in (spew.o): Depend on toplev.h.
 
        * call.c (compare_ics): Initialize variables `deref_from_type2',
-       `deref_to_type1' and `deref_to_type2'.
+       `deref_to_type1' and `deref_to_type2'.
 
        * except.c (get_eh_type): Hide prototype and definition.
        (process_start_catch_block_old): Remove unused static prototype.
@@ -3019,10 +3396,10 @@ Tue Oct  6 07:57:26 1998  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
        `fn' into the scope where it is used.  Don't access variable
        `fn' when it is uninitialized, instead use `fns'.
 
-1998-10-04  Theodore Papadopoulo <Theodore.Papadopoulo@sophia.inria.fr>
+1998-10-04  Theodore Papadopoulo  <Theodore.Papadopoulo@sophia.inria.fr>
 
        * errfn.c (cp_thing): Print buf as a string not as a printf format
-       to avoid problems with the operator%. Consequently, `%%' sequences
+       to avoid problems with the operator%.  Consequently, `%%' sequences
        in format are copied as `%' in buf.
 
 1998-10-04  Jason Merrill  <jason@yorick.cygnus.com>
@@ -3048,7 +3425,7 @@ Tue Oct  6 07:57:26 1998  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
        * cvt.c (convert_to_reference): Likewise.
        * typeck.c (convert_for_assignment): Likewise.
 
-       * search.c (expand_upcast_vtables): In addition to unsetting 
+       * search.c (expand_upcast_vtables): In addition to unsetting
        TREE_READONLY, remove top-level const type qualifier.
 
 1998-10-03  Mark Mitchell  <mark@markmitchell.com>
@@ -3075,7 +3452,7 @@ Tue Oct  6 07:57:26 1998  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
        * typeck.c (decay_conversion): Likewise.
        (build_component_ref): Make sure the type of the COMPONENT_REF
        contains top-level qualifiers, as appropriate.  Improve
-       error-handling. 
+       error-handling.
        (build_indirect_ref): Simplify.  Don't strip top-level qualifiers.
        (build_array_ref): Likewise.
        (build_unary_op): Improve error-recovery.
@@ -3083,7 +3460,7 @@ Tue Oct  6 07:57:26 1998  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
        function an error, not a sorry.
        (build_conditional_expr): Look at the type qualifiers, not the
        qualifiers on the expression itself.
-       
+
 1998-10-03  Jason Merrill  <jason@yorick.cygnus.com>
 
        * decl2.c (merge_functions): Remove duplicates.
@@ -3114,9 +3491,9 @@ Thu Oct  1 10:43:45 1998  Nick Clifton  <nickc@cygnus.com>
        (start_function): Add invocation of
        SET_DEFAULT_DECL_ATTRIBUTES, if defined.
 
-       * lex.c: Replace occurances of HANDLE_SYSV_PRAGMA with
+       * lex.c: Replace occurrences of HANDLE_SYSV_PRAGMA with
        HANDLE_GENERIC_PRAGMAS.
-       
+
 1998-09-28  Anthony Green  <green@cygnus.com>
 
        * semantics.c (finish_asm_stmt): Always permit volatile asms.
@@ -3125,9 +3502,9 @@ Thu Oct  1 10:43:45 1998  Nick Clifton  <nickc@cygnus.com>
 
        * decl.c (grokdeclarator): Tighten checks for invalid
        destructors.  Improve error-messages and error-recovery.
-       * decl2.c (check_classfn): Don't assume that mangled destructor 
+       * decl2.c (check_classfn): Don't assume that mangled destructor
        names contain type information.
-       
+
 1998-09-25  Jason Merrill  <jason@yorick.cygnus.com>
 
        * search.c (get_base_distance): Remove assert.
@@ -3155,19 +3532,19 @@ Fri Sep 25 11:45:38 1998  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
        (my_friendly_abort): Mark with ATTRIBUTE_NORETURN.
 
        * cvt.c (build_up_reference): Remove unused parameter
-       `checkconst', all callers changed.
+       `checkconst', all callers changed.
        (build_type_conversion): Mark parameter `code' with
        ATTRIBUTE_UNUSED.
        (build_expr_type_conversion): Initialize variable `conv'.
 
        * decl.c (push_namespace): Initialize variable `d'.
-       (define_case_label): Remove unused parameter `decl', all callers
-       changed.
+       (define_case_label): Remove unused parameter `decl', all callers
+       changed.
 
        * decl2.c (lang_decode_option): If !USE_CPPLIB, mark parameter
-       `argc' with ATTRIBUTE_UNUSED.
+       `argc' with ATTRIBUTE_UNUSED.
        (grokclassfn): Remove unused parameter `cname', all callers
-       changed.
+       changed.
        (check_java_method): Likewise for parameter `ctype'.
        (copy_assignment_arg_p): Mark parameter `virtualp' with
        ATTRIBUTE_UNUSED.
@@ -3176,7 +3553,7 @@ Fri Sep 25 11:45:38 1998  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
        * expr.c (extract_init): Likewise for parameters `decl' and `init'.
 
        * init.c (expand_aggr_init_1): Remove unused parameter
-       `alias_this', all callers changed.
+       `alias_this', all callers changed.
        (expand_aggr_init): Likewise.
        (expand_default_init): Likewise.
        (build_new_1): Initialize variable `susp'.
@@ -3190,7 +3567,7 @@ Fri Sep 25 11:45:38 1998  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
        comparing to a signed quantity.
 
        * pt.c (maybe_end_member_template_processing): Remove unused
-       parameter `decl', all callers changed.
+       parameter `decl', all callers changed.
        (check_explicit_specialization): Add braces around empty body in
        an else-statement.
        (current_template_args): Initialize variable `args'.
@@ -3221,14 +3598,14 @@ Fri Sep 25 11:45:38 1998  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
        (build_modify_expr): Treat FUNCTION_TYPEs as readonly, even though
        they don't have TREE_READONLY set.
        * typeck2.c (readonly_error): Add case for FUNCTION_DECLs.
-       
+
 1998-09-24  Benjamin Kosnik  <bkoz@loony.cygnus.com>
 
        * spew.c (yylex): Give diagnostic.
        * hash.h (is_reserved_word): Add export.
-       * gxx.gperf: Ditto.
+       * gxx.gperf: Likewise.
        * lex.h (rid): Add RID_EXPORT.
-       * lex.c (init_parse): Ditto. 
+       * lex.c (init_parse): Likewise.
 
 Tue Sep 22 21:01:19 1998  Gerald Pfeifer  <pfeifer@dbai.tuwien.ac.at>
 
@@ -3240,8 +3617,8 @@ Tue Sep 22 21:01:19 1998  Gerald Pfeifer  <pfeifer@dbai.tuwien.ac.at>
 
 1998-09-22  Benjamin Kosnik  <bkoz@loony.cygnus.com>
 
-        * decl.c (make_typename_type): Move error to point where name
-        variable can be used by dump_type.
+       * decl.c (make_typename_type): Move error to point where name
+       variable can be used by dump_type.
 
 1998-09-22  Mark Mitchell  <mark@markmitchell.com>
 
@@ -3260,7 +3637,7 @@ Tue Sep 22 21:01:19 1998  Gerald Pfeifer  <pfeifer@dbai.tuwien.ac.at>
 
 Mon Sep 21 01:53:05 1998  Felix Lee  <flee@cygnus.com>
 
-        * lex.c (init_lex): Use getenv ("LANG"), not GET_ENVIRONMENT ().
+       * lex.c (init_lex): Use getenv ("LANG"), not GET_ENVIRONMENT ().
 
 1998-09-20  Mark Mitchell  <mark@markmitchell.com>
 
@@ -3268,7 +3645,7 @@ Mon Sep 21 01:53:05 1998  Felix Lee  <flee@cygnus.com>
 
 1998-09-17  Andrew MacLeod  <amacleod@cygnus.com>
 
-       * exception.cc (__cplus_type_matcher): realign some code.
+       * exception.cc (__cplus_type_matcher): Realign some code.
 
 1998-09-16  Mark Mitchell  <mark@markmitchell.com>
 
@@ -3287,14 +3664,14 @@ Mon Sep 21 01:53:05 1998  Felix Lee  <flee@cygnus.com>
 
 1998-09-16  Richard Henderson  <rth@cygnus.com>
 
-        * decl.c (init_decl_processing): Kill __builtin_fp and __builtin_sp.
+       * decl.c (init_decl_processing): Kill __builtin_fp and __builtin_sp.
 
 1998-09-15  Alexandre Oliva  <oliva@dcc.unicamp.br>
 
-       * call.c (build_field_call): handle static data members too
+       * call.c (build_field_call): Handle static data members too.
 
-       * typeck.c (comptypes): when comparing pointer types, check
-       whether referred types match even in strictest modes
+       * typeck.c (comptypes): When comparing pointer types, check
+       whether referred types match even in strictest modes.
 
 1998-09-15  Mark Mitchell  <mark@markmitchell.com>
 
@@ -3304,11 +3681,11 @@ Mon Sep 21 01:53:05 1998  Felix Lee  <flee@cygnus.com>
        (maybe_warn_about_overly_private_class): New function.
        (finish_struct_methods): Declare here, and make static.  Remove
        unnecessary parameters.  Tidy slightly.  Use
-       maybe_warn_about_overly_private_class. 
+       maybe_warn_about_overly_private_class.
        (finish_struct_1): Adjust.  Remove check for private constructors,
        now done elsewhere.
        (finish_struct): Adjust.
-       
+
 1998-09-15  Andrew MacLeod  <amacleod@cygnus.com>
 
        * except.c (expand_start_catch_block): No need to check for new
@@ -3316,7 +3693,7 @@ Mon Sep 21 01:53:05 1998  Felix Lee  <flee@cygnus.com>
        (process_start_catch_block_old): Deleted.
        (process_start_catch_block): Add call to start_decl_1().
        (expand_end_catch_block): Add call to end_catch_handler().
-       * exception.cc (__cplus_type_matcher): Only check the exception 
+       * exception.cc (__cplus_type_matcher): Only check the exception
        language if there is an exception table.
 
 1998-09-15  Andrew MacLeod  <amacleod@cygnus.com>
@@ -3333,7 +3710,7 @@ Mon Sep 21 01:53:05 1998  Felix Lee  <flee@cygnus.com>
        (finish_struct_1): Likewise.
        (finish_struct): Set CLASSTYPE_HAS_NON_PRIVATE_STATIC_MEM_FN if
        appropriate.
-       
+
        * pt.c (check_specialization_scope): Fix spelling error.
        (check_explicit_specialization): Remove code to handle explicit
        specializations in class scope; they are now correctly diagnosed
@@ -3343,9 +3720,9 @@ Mon Sep 21 01:53:05 1998  Felix Lee  <flee@cygnus.com>
 
        * decl.c (pushdecl): Don't copy types if the
        DECL_ABSTRACT_ORIGIN of the new decl matches the TYPE_NAME of the
-       type. 
+       type.
 
-1998-09-09  Kriang Lerdsuwanakij <lerdsuwa@scf-fs.usc.edu>
+1998-09-09  Kriang Lerdsuwanakij  <lerdsuwa@scf-fs.usc.edu>
 
        * class.c (get_enclosing_class): New function.
        (is_base_of_enclosing_class): Likewise.
@@ -3383,9 +3760,9 @@ Mon Sep 21 01:53:05 1998  Felix Lee  <flee@cygnus.com>
        in error message.
 
 1998-09-08  Richard Henderson  <rth@cygnus.com>
-           Mark Mitchell  <mark@markmitchell.com>      
-       
-       * pt.c (process_partial_specialization): Consistantly allocate
+           Mark Mitchell  <mark@markmitchell.com>
+
+       * pt.c (process_partial_specialization): Consistently allocate
        and zero tpd.parms based on ntparms.  Use tpd2.parms, not
        tpd.parms, where appropriate.
 
@@ -3410,11 +3787,11 @@ Sun Sep  6 00:00:51 1998  Jeffrey A Law  (law@cygnus.com)
        (check_explicit_specialization): Don't attempt to handle explicit
        specializations in class scope.
        (template_parm_data): Document.  Add current_arg and
-       arg_uses_template_parms. 
+       arg_uses_template_parms.
        (mark_template_parm): Set it.
        (tsubst_arg_types): Remove unused variable.
        * semantics.c (begin_class_definition): Tweak.
-       
+
 1998-09-04  Mark Mitchell  <mark@markmitchell.com>
 
        * inc/typeinfo (type_info::type_info(const char*)): Make
@@ -3425,8 +3802,8 @@ Sun Sep  6 00:00:51 1998  Jeffrey A Law  (law@cygnus.com)
        (coerce_template_parms): Use make_temp_vec, instead of
        make_tree_vec.  Document this behavior.
        (lookup_template_class): Likewise.
-       (tsubst, cases METHOD_TYPE, FUNCTION_TYPE): Use tsubst_arg_types.  
-       Remove dead code (and add ssertion to check its deadness).  Fix
+       (tsubst, cases METHOD_TYPE, FUNCTION_TYPE): Use tsubst_arg_types.
+       Remove dead code (and add assertion to check its deadness).  Fix
        bug w.r.t. exception specifications.
 
 1998-09-03  Jason Merrill  <jason@yorick.cygnus.com>
@@ -3443,9 +3820,9 @@ Sun Sep  6 00:00:51 1998  Jeffrey A Law  (law@cygnus.com)
        * semantics.c: Likewise.
        * parse.y (primary): Use it.
        * method.c (hack_identifier): Remove redundant code.
-       
+
        * init.c (resolve_offset_ref): Call convert_from_reference to
-       handle members of reference type.  Improve error recovery.
+       handle members of reference type.  Improve error recovery.
 
 1998-09-03  Benjamin Kosnik  <bkoz@cygnus.com>
 
@@ -3462,8 +3839,8 @@ Sun Sep  6 00:00:51 1998  Jeffrey A Law  (law@cygnus.com)
 
 1998-09-03  Benjamin Kosnik  <bkoz@rhino.cygnus.com>
 
-        * decl.c (pushdecl_class_level): Add warning here.
-        (pushdecl): Tweak.
+       * decl.c (pushdecl_class_level): Add warning here.
+       (pushdecl): Tweak.
 
 1998-09-02  Jason Merrill  <jason@yorick.cygnus.com>
 
@@ -3481,7 +3858,7 @@ Wed Sep 02 09:25:29 1998  Nick Clifton  <nickc@cygnus.com>
        if unknown pragmas are encountered.
        (handle_sysv_pragma): Interpret return code from
        handle_pragma_token ().  Return success/failure indication rather
-       than next unprocessed character. 
+       than next unprocessed character.
        (pragma_getc): New function: retrieves characters from the
        input stream.  Defined when HANDLE_PRAGMA is defined.
        (pragma_ungetc): New function: replaces characters back into the
@@ -3524,10 +3901,10 @@ Wed Sep 02 09:25:29 1998  Nick Clifton  <nickc@cygnus.com>
 
        * decl.c (finish_enum): Handle member enums of classes declared in
        template functions.
-       
-       * decl2.c (grok_x_components): Strip attributres before calling
-       groktypename. 
-       
+
+       * decl2.c (grok_x_components): Strip attributes before calling
+       groktypename.
+
 1998-08-31  Jason Merrill  <jason@yorick.cygnus.com>
 
        * cp-tree.h, decl2.c: Remove support for -fall-virtual,
@@ -3585,16 +3962,16 @@ Sun Aug 30 22:16:31 1998  H.J. Lu  (hjl@gnu.org)
 1998-08-28  Mark Mitchell  <mark@markmitchell.com>
 
        * cp-tree.h (build_enumerator): Take the enumeration type as a
-       paramter. 
+       parameter.
        * decl.c (finish_enum): Don't set the TREE_TYPE for the
        enumeration constant values if we're processing_template_decls.
        Don't set the type for the CONST_DECLs either; that's done in
        build_enumerator.
        (build_enumerator): Take the enumeration type as a
-       parameter. 
+       parameter.
        * lex.c (do_identifier): Don't resolve enumeration constants while
        processing template declarations, even if they happen to be
-       TEMPLATE_PARM_INDEXs. 
+       TEMPLATE_PARM_INDEXs.
 
        * parse.y (current_enum_type): New variable.
        (primary): Don't allow statement-expression in local classes just
@@ -3603,14 +3980,14 @@ Sun Aug 30 22:16:31 1998  H.J. Lu  (hjl@gnu.org)
        (enum_list): Likewise.
        * pt.c (tsubst_enum): Don't check for NOP_EXPRs introduced by
        finish_enum; they no longer occur.
-       
+
        * cp-tree.h (finish_base_specifier): New function.
        * parse.y (base_class): Use it.
        * semantics.c (finish_base_specifier): Define it.
 
        * parse.y (structsp): Warn on use of typename outside of template
-       declarations. 
-       
+       declarations.
+
 1998-08-27  Jason Merrill  <jason@yorick.cygnus.com>
 
        * lex.c (handle_cp_pragma): Remove #pragma vtable.
@@ -3648,7 +4025,7 @@ Sun Aug 30 22:16:31 1998  H.J. Lu  (hjl@gnu.org)
        (lookup_fnfields): Likewise.
        * tree.c (propagate_binfo_offsets): Don't call unshare_base_binfos.
        (unshare_base_binfos): Don't call propagate_binfo_offsets.
-       (layout_basetypes): Call propagate_binfo_offsets instead of 
+       (layout_basetypes): Call propagate_binfo_offsets instead of
        unshare_base_binfos.
        * decl.c (xref_basetypes): Call unshare_base_binfos.
        * pt.c (instantiate_class_template): Likewise.
@@ -3686,7 +4063,7 @@ Sun Aug 30 22:16:31 1998  H.J. Lu  (hjl@gnu.org)
        (layout_basetypes): Warn here about inaccessible bases.
        (make_binfo): Remove chain parameter.
        (reverse_path): Add copy parameter.
-       
+
 1998-08-27  Jason Merrill  <jason@yorick.cygnus.com>
 
        * class.c: #if 0 complete_type_p.
@@ -3712,25 +4089,25 @@ Sun Aug 30 22:16:31 1998  H.J. Lu  (hjl@gnu.org)
 1998-08-27  Mark Mitchell  <mark@markmitchell.com>
 
        * decl.c (build_enumerator): Set DECL_CONTEXT for the
-       CONST_DECLs. 
+       CONST_DECLs.
 
 1998-08-26  Mark Mitchell  <mark@markmitchell.com>
 
        * cp-tree.h (finish_enum): Change prototype.
        * decl.c (finish_enum): Use TYPE_VALUES, rather than taking a
        VALUES parameter.  Don't try to compute mins/maxs if
-       processing_template_decl. 
+       processing_template_decl.
        * parse.y (structsp): Use new calling sequence for finish_enum.
-       * pt.c (tsubst_enum): Likewise.  Take the new type as input.  
+       * pt.c (tsubst_enum): Likewise.  Take the new type as input.
        (lookup_template_class): Remove unused variables.  Tweak.
        Register enums on instantiation list before substituting
        enumeration constants.
        (tsubst_decl): Remove unused variables.
        (regenerate_decl_from_template): Likewise.
-       
+
        * decl.c (duplicate_decls): Don't obliterate the
        DECL_TEMPLATE_INFO for a template if we're not replacing it with
-       anything. 
+       anything.
 
        * lex.c (do_identifier): Fix typo in comment.
 
@@ -3797,7 +4174,7 @@ Wed Aug 26 10:54:51 1998  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
        * cp-tree.h (CLASS_TYPE_P): New macro.
        * decl.c (grokdeclarator): Use it instead of IS_AGGR_TYPE.
        * pt.c (process_template_parm): Undo previous change.
-       
+
 1998-08-24  Benjamin Kosnik  <bkoz@cygnus.com>
 
        * cp-tree.h: Declare.
@@ -3836,8 +4213,8 @@ Wed Aug 26 10:54:51 1998  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
 
 1998-08-24  Nathan Sidwell  <nathan@acm.org>
 
-        * lex.c (real_yylex): Don't warn about long long constants if
-        we're allowing long long.
+       * lex.c (real_yylex): Don't warn about long long constants if
+       we're allowing long long.
 
 1998-08-24  Martin von Löwis  <loewis@informatik.hu-berlin.de>
 
@@ -3854,7 +4231,7 @@ Wed Aug 26 10:54:51 1998  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
        * decl.c (grokdeclarator): Complain about in-class initialization
        of aggregates and/or references.
        * pt.c (process_template_parm): Clear IS_AGGR_TYPE for
-       TEMPLATE_TYPE_PARMs. 
+       TEMPLATE_TYPE_PARMs.
 
        * decl2.c (grok_array_decl): Add comment.
        (mark_used): Don't instantiate an explicit instantiation.
@@ -3868,13 +4245,13 @@ Wed Aug 26 10:54:51 1998  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
        (do_type_instantiation): Likewise.
        (instantiate_decl): Improve comments.  Complain about explicit
        instantiations where no definition is available.
-       
+
        * cp-tree.h (ansi_null_node): Remove.
        * call.c (build_over_call): Warn about converting NULL to an
        arithmetic type.
        * cvt.c (build_expr_type_conversion): Likewise.  Use
        null_ptr_cst_p instead of expanding it inline.
-       * decl.c (ansi_null_node): Remove. 
+       * decl.c (ansi_null_node): Remove.
        (init_decl_processing): Make null_node always have integral type.
        * except.c (build_throw): Warn about converting NULL to an
        arithmetic type.
@@ -3884,7 +4261,7 @@ Wed Aug 26 10:54:51 1998  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
        (convert_for_assignment): Warn about converting NULL to an
        arithmetic type.
        (convert_for_initialization): Likewise.
-       
+
 1998-08-20  Jason Merrill  <jason@yorick.cygnus.com>
 
        * tree.c (search_tree, no_linkage_helper, no_linkage_check): New fn.
@@ -3920,7 +4297,7 @@ Wed Aug 26 10:54:51 1998  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
        (regenerate_decl_from_template): Deal with tricky friend template
        case.
        (instantiate_decl): Likewise.
-       
+
 Thu Aug 20 09:09:45 1998  Jeffrey A Law  (law@cygnus.com)
 
        * init.c (build_builtin_delete_call): Add missing assemble_external
@@ -3937,7 +4314,7 @@ Thu Aug 20 09:09:45 1998  Jeffrey A Law  (law@cygnus.com)
        * except.c (build_throw): Warn when NULL is thrown, even with
        -ansi.  Use ansi_null_node, rather than integer_zero_node, in the
        thrown expression.
-       
+
        * cp-tree.h (ansi_null_node): New variable.
        * decl.c (ansi_null_node): New variable.
        (init_decl_processing): Initialize its type.
@@ -4057,11 +4434,11 @@ Fri Aug 14 16:42:27 1998  Nick Clifton  <nickc@cygnus.com>
        (lookup_nested_type_by_name): Remove.
        * decl.c (maybe_process_template_type_declaration): Handle enums.
        (start_enum): Don't check for primary-template enum declarations
-       here. 
+       here.
        (finish_enum): Clean up, document.  Make sure template enum
        constants get the correct type.
        (build_enumerator): Copy initializers for template enumerations,
-       too. 
+       too.
        (grok_enum_decls): Document.
        * lex.c (do_identifier): Document use of LOOKUP_EXPR a bit
        better.  Build LOOKUP_EXPRs for local variables, even if they are
@@ -4081,7 +4458,7 @@ Fri Aug 14 16:42:27 1998  Nick Clifton  <nickc@cygnus.com>
        (tsubst): Likewise.
        (tsubst_copy): Likewise.
        (tsubst_expr): Call tsubst, not tsubst_enum for TAG_DEFNs.
-       
+
 1998-08-04  Mark Mitchell  <mark@markmitchell.com>
 
        * decl.c (pushtag): Don't mangle the name of a TYPE_DECL if it
@@ -4090,7 +4467,7 @@ Fri Aug 14 16:42:27 1998  Nick Clifton  <nickc@cygnus.com>
        template arguments for tsubst'ing.
        (build_overload_identifier): Pass the full set of template
        arguments to build_template_parm_names, not just the
-       innermost_args. 
+       innermost_args.
        * pt.c (TMPL_ARGS_DEPTH): Define using
        TMPL_ARGS_HAVE_MULTIPLE_LEVELS, for clarity.
        (NUM_TMPL_ARGS): New macro.
@@ -4103,8 +4480,8 @@ Fri Aug 14 16:42:27 1998  Nick Clifton  <nickc@cygnus.com>
        to coerce_template_parms.
        (tsubst): Add assertion.
        (do_type_instantiation): Don't instantiate member template
-       classes. 
-       
+       classes.
+
        * init.c (build_offset_ref): Deal with a TEMPLATE_ID_EXPR whose
        name is a LOOKUP_EXPR, rather than an IDENTIFIER_NODE.
 
@@ -4118,7 +4495,7 @@ Fri Aug 14 16:42:27 1998  Nick Clifton  <nickc@cygnus.com>
        * search.c (dependent_base_p): New fn.
        (dfs_pushdecls, dfs_compress_decls): Use it.
 
-       * typeck.c (get_member_function_from_ptrfunc): Don't try to handle 
+       * typeck.c (get_member_function_from_ptrfunc): Don't try to handle
        virtual functions if the type doesn't have any.
 
 1998-08-03  Mark Mitchell  <mark@markmitchell.com>
@@ -4137,19 +4514,19 @@ Fri Aug 14 16:42:27 1998  Nick Clifton  <nickc@cygnus.com>
        * method.c (hack_identifier): Improve error message.
        * pt.c (lookup_template_function): Don't needlessly call
        copy_to_permanent or build_min.
-       (tsubst_copy): Remove #if 0'd code.  Tsubst into LOOKUP_EXPRs if
+       (tsubst_copy): Remove #if 0'd code.  tsubst into LOOKUP_EXPRs if
        necessary.
        (do_decl_instantiation): Improve error message.
        * tree.c (mapcar, case LOOKUP_EXPR): Don't be sorry; make a copy.
        (build_min): Copy the type to the permanent obstack, too.
-       
+
 1998-08-01  Jason Merrill  <jason@yorick.cygnus.com>
 
        * init.c (init_init_processing): Remove BI* handling.
        (build_builtin_call): Remove.
        (build_builtin_delete_call): New fn.
        (build_delete): Use it.
-       
+
 1998-07-31  Mark Mitchell  <mark@markmitchell.com>
 
        * cp-tree.h (PROCESSING_REAL_TEMPLATE_DECL_P): New macro.
@@ -4190,7 +4567,7 @@ Fri Aug 14 16:42:27 1998  Nick Clifton  <nickc@cygnus.com>
 1998-07-28  Jason Merrill  <jason@yorick.cygnus.com>
 
        * class.c (finish_struct_1): Convert integer_zero_node to
-       ssizetype before passing it to set_rtti_entry.
+       ssizetype before passing it to set_rtti_entry.
        * typeck2.c (initializer_constant_valid_p): Allow conversion of 0
        of any size to a pointer.
 
@@ -4204,14 +4581,14 @@ Fri Aug 14 16:42:27 1998  Nick Clifton  <nickc@cygnus.com>
        (lookup_template_class): Add entering_scope parameter.
        (maybe_process_partial_specialization): New function.
        (finish_template_decl): Likewise.
-       (finish_template_type): Likewise.  
+       (finish_template_type): Likewise.
        * class.c (finish_struct): Clean up processing of member template
        specializations.
-       * decl.c (pushtag): Fix formatting.
+       * decl.c (pushtag): Fix formatting.
        (lookup_tag): Improve handling of pseudo-global levels.
        (make_typename_type): Adjust call to lookup_template_class.
        (shadow_tag): Use maybe_process_partial_specialization.
-       (xref_tag): Improve handling of member friends.  
+       (xref_tag): Improve handling of member friends.
        (start_function): Call push_nested_class before
        push_template_decl.  Don't call push_template_decl for
        specializations.
@@ -4224,7 +4601,7 @@ Fri Aug 14 16:42:27 1998  Nick Clifton  <nickc@cygnus.com>
        function names.
        * friend.c (is_friend): Don't compare types of decls to determine
        friendship, unless flag_guiding_decls.
-       (make_friend_class): Partial specializations cannot be friends.  
+       (make_friend_class): Partial specializations cannot be friends.
        (do_friend): Use set_mangled_name_for_decl.  Call
        push_template_decl_real instead of push_template_decl.
        * method.c (build_decl_overload_real): Remove prototype.  Give it
@@ -4248,7 +4625,7 @@ Fri Aug 14 16:42:27 1998  Nick Clifton  <nickc@cygnus.com>
        (unregister_specialization): New function.
        (tsubst_template_parms): Likewise.
        (most_specialized, most_specialized_class): Prototype here as
-       static. 
+       static.
        (original_template): Rename to most_general_template.
        (tsubst_template_parms): New function.
        (set_mangled_name_for_template_decl): Likewise.
@@ -4267,7 +4644,7 @@ Fri Aug 14 16:42:27 1998  Nick Clifton  <nickc@cygnus.com>
        (is_member_template): Likewise.
        (is_member_template_class): Likewise.
        (add_to_template_args): Likewise.  Deal with multiple levels of
-       args. 
+       args.
        (maybe_process_partial_specialization): New function.
        (retrieve_specialization): Add consistency check.
        (determine_specialization): Return full argument list.
@@ -4279,7 +4656,7 @@ Fri Aug 14 16:42:27 1998  Nick Clifton  <nickc@cygnus.com>
        one parameter.   Improve friend handling.  Modify for full
        template arguments.
        (classtype_mangled_name): Don't mangle the names of
-       specializations. 
+       specializations.
        (lookup_template_class): Add entering_scope parameter.  Use it to
        avoid finding a template type when an instantiation is required.
        Simplify.  Use full template arguments.
@@ -4294,7 +4671,7 @@ Fri Aug 14 16:42:27 1998  Nick Clifton  <nickc@cygnus.com>
        (innermost_args): Use new macros.
        (tsubst_aggr_type): New function, split out from tsubst.
        (tsubst): Use tsubst_aggr_type, tsubst_template_parms, new calling
-       conventions for lookup_tmeplate_class.  Refine handling of partial
+       conventions for lookup_template_class.  Refine handling of partial
        instantiations.   Remove calls to complete_template_args.
        Simplify.  Add consistency checks.  Use set_mangled_name_for_decl
        and set_mangled_name_for_template_decl.
@@ -4306,17 +4683,17 @@ Fri Aug 14 16:42:27 1998  Nick Clifton  <nickc@cygnus.com>
        (most_specialized): Don't overwrite input; create a new list.
        (most_specialized_class): Use most_general_template.
        (regenerate_decl_from_template): Use unregister_specialization.
-       Use full template arguments.  
+       Use full template arguments.
        (instantiate_decl): Use full template arguments.
        (set_mangled_name_for_template_decl): New function.
        * semantics.c (begin_class_definition): Use
        maybe_process_partial_specialization.
        (finish_member_class_template): New function.
        (finish_template_decl): Likewise.
-       (finish_template_type): Likewise.  
+       (finish_template_type): Likewise.
        (typeck.c): Don't crash after issuing a compiler_error.
        * Makefile.in (CONFLICTS): Adjust; we removed a s/r conflict.
-       
+
 1998-07-27  Jason Merrill  <jason@yorick.cygnus.com>
 
        * typeck2.c (build_functional_cast): Handle default-initialization.
@@ -4377,7 +4754,7 @@ Fri Aug 14 16:42:27 1998  Nick Clifton  <nickc@cygnus.com>
        (finish_prevtable_vardecl): From here.
        * class.c (finish_struct_1): Call import_export_class if at_eof.
 
-       * decl.c (start_function): #if 0 mysterious code I wrote and have 
+       * decl.c (start_function): #if 0 mysterious code I wrote and have
        forgotten why.
        * rtti.c (get_tinfo_fn): If this is for a class type, set
        DECL_CONTEXT.
@@ -4420,7 +4797,7 @@ Fri Aug 14 16:42:27 1998  Nick Clifton  <nickc@cygnus.com>
 
        * decl.c (pushtag): Don't put out debugging information for
        compiler-generated typedefs.
-       
+
        * error.c (dump_type_real): Don't crash when presented with
        intQI_type_node or the like.
 
@@ -4537,7 +4914,7 @@ Fri Aug 14 16:42:27 1998  Nick Clifton  <nickc@cygnus.com>
        (cat_namespace_levels): Ignore aliases.
        (duplicate_decls): Ignore duplicate aliases.
        * decl2.c (do_namespace_alias): Process block level namespace
-       aliases. Store alias with pushdecl. Remove odr errors.
+       aliases.  Store alias with pushdecl.  Remove odr errors.
        * parse.y (namespace_alias): New non-terminal.
        (extdef): Use it.
 
@@ -4594,7 +4971,7 @@ Tue Jul 14 20:09:22 1998  Jeffrey A Law  (law@cygnus.com)
        of namespace-qualified ids to -1, enter the namespace.
 
        * method.c (build_template_decl_overload): Expect _DECL as first
-       parameter. Put context temporarily into current_namespace.
+       parameter.  Put context temporarily into current_namespace.
        * pt.c (check_explicit_specialization): Change caller.
        (tsubst): Likewise.
 
@@ -4609,7 +4986,7 @@ Mon Jul 13 17:21:01 1998  Nick Clifton  <nickc@cygnus.com>
 
        * lang-options.h: Format changed to work with new --help support
        in gcc/toplev.c
-       
+
 1998-07-12  Martin von Löwis  <loewis@informatik.hu-berlin.de>
 
        * decl2.c (build_expr_from_tree): Change calls of do_identifier.
@@ -4646,14 +5023,14 @@ Mon Jul 13 17:21:01 1998  Nick Clifton  <nickc@cygnus.com>
        * decl.c (xref_baseypes): Change caller.
        * friend.c (make_friend_class): Likewise.
 
-1998-07-12  Kriang Lerdsuwanakij <lerdsuwa@scf-fs.usc.edu>
+1998-07-12  Kriang Lerdsuwanakij  <lerdsuwa@scf-fs.usc.edu>
 
-       * typeck.c (comptypes, case TEMPLATE_TEMPLATE_PARM): Add parameter 
+       * typeck.c (comptypes, case TEMPLATE_TEMPLATE_PARM): Add parameter
        comparison.
 
-       * pt.c (for_each_template_parm, case TEMPLATE_DECL): If it is a 
+       * pt.c (for_each_template_parm, case TEMPLATE_DECL): If it is a
        template template parameter, record its use.
-       (for_each_template_parm, case TEMPLATE_TEMPLATE_PARM): Traverse 
+       (for_each_template_parm, case TEMPLATE_TEMPLATE_PARM): Traverse
        its template arguments if exists.
 
        * pt.c (coerce_template_template_parms): New function equivalent
@@ -4667,17 +5044,17 @@ Mon Jul 13 17:21:01 1998  Nick Clifton  <nickc@cygnus.com>
        current_class_type.  Don't display error message when COMPLAIN is
        false.
 
-1998-07-12  Klaus Kaempf (kkaempf@progis.de)
+1998-07-12  Klaus Kaempf  (kkaempf@progis.de)
 
-       * repo.c (get_base_filename): Use file_name_nondirectory.
-       (open_repo_file): Ditto.
+       * repo.c (get_base_filename): Use file_name_nondirectory.
+       (open_repo_file): Likewise.
        * cp-tree.h (file_name_nondirectory): Add prototype.
 
 1998-07-12  Jason Merrill  <jason@yorick.cygnus.com>
 
        * friend.c (do_friend): Pull the identifier out of declarator.
        Use cp_error and friends.
-       * decl2.c (qualified_lookup_using_namespace): Fix call to 
+       * decl2.c (qualified_lookup_using_namespace): Fix call to
        purpose_member.
        * decl.c (lookup_name_real): Don't call complete_type on a namespace.
        (grokvardecl): Use DECL_CLASS_SCOPE_P.
@@ -4685,7 +5062,7 @@ Mon Jul 13 17:21:01 1998  Nick Clifton  <nickc@cygnus.com>
        * class.c (warn_hidden): Fix for OVERLOAD.
        From grahams@rcp.co.uk:
        * cp-tree.h (DEFARG_NODE_CHECK): New macro.
-       (DEFARG_LENGTH, DEFARG_POINTER): Use it.
+       (DEFARG_LENGTH, DEFARG_POINTER): Use it.
 
 Sun Jul 12 01:20:57 1998  Jeffrey A Law  (law@cygnus.com)
 
@@ -4751,7 +5128,7 @@ Sun Jul 12 01:20:57 1998  Jeffrey A Law  (law@cygnus.com)
        * decl2.c: Define them.
        (lang_decode_option): Handle them.
        * lang-options.h: Add -foptional-diags.
-       * class.c (finish_struct): Don't complain about multiple meanings of 
+       * class.c (finish_struct): Don't complain about multiple meanings of
        name if -fno-optional-diags.
        * decl.c (pushdecl_class_level): Likewise.
        * lex.c (real_yylex): Check warn_multichar.
@@ -4764,8 +5141,8 @@ Sun Jul 12 01:20:57 1998  Jeffrey A Law  (law@cygnus.com)
 
 1998-06-30  Benjamin Kosnik  <bkoz@bliss.nabi.net>
 
-        * decl2.c (lang_decode_option): Remove warn_template_debugging.
-        * lang-options.h: Ditto.
+       * decl2.c (lang_decode_option): Remove warn_template_debugging.
+       * lang-options.h: Likewise.
 
 Mon Jun 29 20:17:40 1998  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
 
@@ -4787,7 +5164,7 @@ Sat Jun 27 23:34:18 1998  Fred Fish  <fnf@ninemoons.com>
 
 Sat Jun 27 12:22:56 1998  Jeffrey A Law  (law@cygnus.com)
 
-        * Make-lang.in (g++): Depend on mkstemp.o.  Link in mkstemp.o
+       * Make-lang.in (g++): Depend on mkstemp.o.  Link in mkstemp.o
 
 Sat Jun 27 07:36:09 1998  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
 
@@ -4810,7 +5187,7 @@ Sat Jun 27 07:36:09 1998  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
 
        * cp-tree.h (mark_all_runtime_matches): Add function prototype.
        * except.c (mark_all_runtime_matches): Set TREE_SYMBOL_REFERENCED
-       flag for all function decls which are in the exception table. 
+       flag for all function decls which are in the exception table.
        * exception.cc (__cplus_type_matcher): Check for CATCH_ALL_TYPE match.
        * decl2.c (finish_file): Call mark_all_runtime_matches to make sure
        code is emitted for any referenced rtti function.
@@ -4878,7 +5255,7 @@ Sat Jun 27 07:36:09 1998  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
        * exception.cc (struct cp_eh_info): Add original_value field.
        (__cplus_type_matcher): Perform type matching on the original exception
        value, and if we have a match, set the current value.
-       (__cp_push_exception): Set the original expcetion value.
+       (__cp_push_exception): Set the original exception value.
 
 1998-06-23  Jason Merrill  <jason@yorick.cygnus.com>
 
@@ -4913,8 +5290,8 @@ Mon Jun 22 08:50:26 1998  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
 
 Fri Jun 19 23:22:42 1998  Bruno Haible  <bruno@linuix.mathematik.uni-karlsruhe.de>
 
-        * typeck2.c (pop_init_level): Warn about implicit zero initialization
-        of struct members.
+       * typeck2.c (pop_init_level): Warn about implicit zero initialization
+       of struct members.
 
 Thu Jun 18 09:32:32 1998  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
 
@@ -4959,7 +5336,7 @@ Thu Jun 18 09:32:32 1998  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
 
 1998-06-16  Andrew MacLeod  <amacleod@cygnus.com>
 
-       * decl.c (grokvardecl): Don't build external assembler names for 
+       * decl.c (grokvardecl): Don't build external assembler names for
        TYPENAMEs in other namespaces as there is no declarator.
        * error.c (cp_file_of, cp_line_of): Don't extract file or line number
        info from DECL_CONTEXT if it is NULL.
@@ -4995,7 +5372,7 @@ Thu Jun 18 09:32:32 1998  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
        (pointer_diff): Likewise.
 
        * pt.c (for_each_template_parm): Traverse the TYPE_CONTEXT for
-       types. 
+       types.
 
        * search.c (get_matching_virtual): Note that member templates
        cannot override virtual functions.
@@ -5030,7 +5407,7 @@ Thu Jun 18 09:32:32 1998  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
 1998-06-11  Benjamin Kosnik  <bkoz@elmo.cygnus.com>
 
        * friend.c (do_friend): Add support for nested classes using
-       member functions of the enclosing class as friends.
+       member functions of the enclosing class as friends.
 
 1998-06-10  Mark Mitchell  <mark@markmitchell.com>
 
@@ -5044,9 +5421,9 @@ Thu Jun 18 09:32:32 1998  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
        (expand_member_init): Remove much of this code; it is dead.
        * typeck.c (convert_arguments): Use convert_default_arg and
        convert_arg_for_ellipsis, rather than duplicating here.
-       
-       * call.c (convert_like): Don't fail silently if 
-       build_user_type_conversion fails.  Always return error_mark_node 
+
+       * call.c (convert_like): Don't fail silently if
+       build_user_type_conversion fails.  Always return error_mark_node
        for failure.
 
 1998-06-10  Jason Merrill  <jason@yorick.cygnus.com>
@@ -5105,8 +5482,8 @@ Thu Jun 18 09:32:32 1998  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
 
 1998-06-10  Branko Cibej  <branko.cibej@hermes.si>
 
-        * typeck.c (c_expand_return): Don't warn about void expressions on
-        return statements in functions returning void.
+       * typeck.c (c_expand_return): Don't warn about void expressions on
+       return statements in functions returning void.
 
 1998-06-09  Mark Mitchell  <mark@markmitchell.com>
 
@@ -5133,26 +5510,26 @@ Mon Jun  8 20:45:52 1998  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
        * Makefile.in (decl2.o): Depend on dwarf2out.h and dwarfout.h.
 
        * cp-tree.h: Add prototype for `maybe_print_template_context' and
-       `maybe_make_one_only'.
+       `maybe_make_one_only'.
 
        * decl.c (auto_function): Remove unused variable `decl'.
 
        * decl2.c: Include dwarf2out.h and dwarfout.h.
 
        * lex.c: Remove redundant declarations of `set_float_handler' and
-       `asm_out_file'.
+       `asm_out_file'.
 
 1998-06-08  Andrew MacLeod  <amacleod@cygnus.com>
 
-       * except.c (init_exception_processing): Remove NEW_EH_MODEL compile 
+       * except.c (init_exception_processing): Remove NEW_EH_MODEL compile
        time flag.  Call __cp_eh_info instead of __cp_exception_info.
        * exception.cc (struct cp_eh_info): Remove NEW_EH_MODEL flag.
-       (__cp_exception_info): Return offset into cp_eh_info structure to 
+       (__cp_exception_info): Return offset into cp_eh_info structure to
        match what use to be the start of this structure.
        (__cp_eh_info): New function to return a pointer to cp_eh_info struct.
        (__cplus_type_matcher, __cp_push_exception): Remove NEW_EH_MODEL
        compile time flag.
-       (__uncatch_exception, __check_eh_spec, std::uncaught_exception): Call 
+       (__uncatch_exception, __check_eh_spec, std::uncaught_exception): Call
        __cp_eh_info instead of __cp_exception_info.
 
 1998-06-08  Jason Merrill  <jason@yorick.cygnus.com>
@@ -5176,7 +5553,7 @@ Mon Jun  8 20:45:52 1998  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
 
        * lex.c (lang_init_options): New function.
        (lang_init): Remove flag_exceptions == 2 hack.
-       
+
 1998-06-05  Jason Merrill  <jason@yorick.cygnus.com>
 
        * search.c (envelope_add_decl): Tweak for implicit typename.
@@ -5218,7 +5595,7 @@ Mon Jun  8 20:45:52 1998  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
        (begin_only_namespace_names, end_only_namespace_names): New functions.
        * decl2.c (set_decl_namespace): Skip namespace aliases.
        (do_using_directive): Likewise.
-       (do_namespace_alias): Produce namespace aliases, fix alias 
+       (do_namespace_alias): Produce namespace aliases, fix alias
        redeclaration.
        * error.c (dump_decl): Support SCOPE_REF.
        * parse.y (extdef): Wrap lookup with namespace_only for namespace
@@ -5301,9 +5678,9 @@ Mon Jun  8 20:45:52 1998  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
        * method.c (build_destructor_name): New fn.
        * decl2.c (maybe_retrofit_in_chrg): Split out...
        (grokclassfn): From here.  Reorganize.
-       * decl.c (grok_ctor_properties): Make sure ctors for types with 
+       * decl.c (grok_ctor_properties): Make sure ctors for types with
        vbases have the in_chrg parm.
-       * pt.c (instantiate_class_template): Update 
+       * pt.c (instantiate_class_template): Update
        TYPE_USES_VIRTUAL_BASECLASSES from tsubsted bases.  Don't call
        grok_*_properties.
        (tsubst): Call grok_ctor_properties and maybe_retrofit_in_chrg.
@@ -5315,7 +5692,7 @@ Mon Jun  8 20:45:52 1998  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
 
 1998-05-28  Jason Merrill  <jason@yorick.cygnus.com>
 
-       * decl.c (start_decl): Always pedwarn about vacuously redeclaring 
+       * decl.c (start_decl): Always pedwarn about vacuously redeclaring
        a member.
        (start_function): Call check_default_args.
        * decl2.c (grokfield): Don't call check_default_args.
@@ -5344,7 +5721,7 @@ Mon Jun  8 20:45:52 1998  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
        (maybe_push_to_top_level): Clear shadowed_labels.
 
        * pt.c (instantiate_decl): Reset lineno and filename after calling
-       regenerate_decl_from_template. 
+       regenerate_decl_from_template.
 
        * decl.c (grokdeclarator): Don't try to use TYPE_OBSTACK on an
        error_mark_node.
@@ -5373,7 +5750,7 @@ Mon Jun  8 20:45:52 1998  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
 1998-05-26  Benjamin Kosnik  <bkoz@loony.cygnus.com>
 
        * decl.c (start_decl): Check for DECL_LANG_SPECIFIC before
-       DECL_USE_TEMPLATE.
+       DECL_USE_TEMPLATE.
 
 1998-05-26  Per Bothner  <bothner@cygnus.com>
 
@@ -5418,7 +5795,7 @@ Mon Jun  8 20:45:52 1998  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
 
        * cp-tree.h (processing_template_parmlist): Declare.
        * decl.c (pushtag): Don't call push_template_decl when we
-       shouldn't. 
+       shouldn't.
        * pt.c (processing_template_parmlist): New variable.
        (TMPL_ARGS_HAVE_MULTIPLE_LEVELS): New macro.
        (complete_template_args): Use it.
@@ -5463,7 +5840,7 @@ Mon Jun  8 20:45:52 1998  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
        * parse.y (xcond): Move call to condition_conversion ...
        * semantics.c (finish_for_cond): Here.
        * parse.c: Regenerated.
-       
+
 1998-05-24  Jason Merrill  <jason@yorick.cygnus.com>
 
        * decl.c (push_namespace): Namespaces have type void.
@@ -5482,14 +5859,14 @@ Mon Jun  8 20:45:52 1998  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
        * tree.c (build_srcloc, build_srcloc_here): New fns.
        * pt.c (add_pending_template): Use build_srcloc_here.
        (push_tinst_level): Update last_template_error_tick before erroring.
-       (instantiate_decl): Restore lineno and input_filename before 
+       (instantiate_decl): Restore lineno and input_filename before
        calling add_pending_template.
        * decl2.c (finish_file): Set up lineno and input_filename for
        pending templates.
 
 1998-05-22  Jason Merrill  <jason@yorick.cygnus.com>
 
-       * decl.c (lang_print_error_function): New fn.  
+       * decl.c (lang_print_error_function): New fn.
        (init_decl_processing): Set print_error_function to use it.
        * errfn.c (cp_thing): Don't call maybe_print_template_context here.
 
@@ -5516,7 +5893,7 @@ Mon Jun  8 20:45:52 1998  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
        * pt.c (determine_specialization): Just return an error_mark_node.
        Also print the decl we want in error messages.  If we complain,
        return error_mark_node.
-       (tsubst_friend_function): Set lineno and input_filename so 
+       (tsubst_friend_function): Set lineno and input_filename so
        error messages will be useful.
        (instantiate_template): Just return an error_mark_node.
        (check_explicit_specialization): Don't mess with a returned
@@ -5550,7 +5927,7 @@ Thu May 21 11:54:44 1998  Dave Brolley  <brolley@cygnus.com>
        * cp-tree.h: (get_directive_line): Different prototype for cpplib.
        (GET_DIRECTIVE_LINE): Macro wrapper for get_directive_line.
 
-       * Makefile.in (CXX_OBJS): add @extra_cxx_objs@ for cpplib.
+       * Makefile.in (CXX_OBJS): Add @extra_cxx_objs@ for cpplib.
 
 1998-05-21  Jason Merrill  <jason@yorick.cygnus.com>
 
@@ -5583,11 +5960,11 @@ Thu May 21 11:54:44 1998  Dave Brolley  <brolley@cygnus.com>
        CLASSTYPE_TAGS list, just as for ordinary member classes.
        (pushdecl_class_level): Use DECL_DECLARES_TYPE_P.
        (lookup_tag): Look for IDENTIFIER_CLASS_VALUEs, just as with
-       IDENTIFIER_NAMESPACE_VALUEs. 
+       IDENTIFIER_NAMESPACE_VALUEs.
        * parse.y (component_decl): Move code to ...
-       * semantics.c (finish_member_class_template): New function.  
+       * semantics.c (finish_member_class_template): New function.
        Don't put member class templates on the list of components for a
-       class. 
+       class.
        * parse.c: Regenerated.
        * pt.c (classtype_mangled_name): Don't try DECL_CONTEXT on types.
        In fact, don't use DECL_CONTEXT at all here.
@@ -5666,7 +6043,7 @@ Tue May 19 10:05:02 1998  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
        definition.
 
        * errfn.c (cp_error): Cast function pointer `error' to (errorfn *)
-       in call to `cp_thing'.
+       in call to `cp_thing'.
        (cp_warning): Likewise for function pointer `warning'.
 
        * except.c (do_function_call): Remove prototype and definition.
@@ -5677,10 +6054,10 @@ Tue May 19 10:05:02 1998  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
        * parse.y: Include toplev.h.
 
        * pt.c (type_unification): Remove unused variable `arg'.
-       (instantiate_decl): likewise for `save_ti'.
+       (instantiate_decl): Likewise for `save_ti'.
 
        * tree.c (propagate_binfo_offsets): Likewise for `base_binfos'.
-       
+
 Tue May 19 02:43:25 1998  Jason Merrill  <jason@yorick.cygnus.com>
 
        * init.c (build_member_call): Handle template_ids.
@@ -5694,9 +6071,9 @@ Mon May 18 23:22:52 1998  Jason Merrill  <jason@yorick.cygnus.com>
 Mon May 18 12:28:44 1998  Mark Mitchell  <mmitchell@usa.net>
 
        * parse.y (.finish_new_placement): New non-terminal.
-       (unary_expr, new_type_id): Use it.  
+       (unary_expr, new_type_id): Use it.
        * parse.c: Regenerated.
-       
+
 Mon May 18 12:20:27 1998  Brendan Kehoe  <brendan@cygnus.com>
 
        * pt.c (redeclare_class_template): Say where the original definition
@@ -5712,7 +6089,7 @@ Mon May 18 03:00:57 1998  Jason Merrill  <jason@yorick.cygnus.com>
 
 Mon May 18 01:43:01 1998  Martin v. Loewis  <loewis@informatik.hu-berlin.de>
 
-       * decl.c (lookup_name_real): Don't look at IDENTIFIER_LOCAL_VALUE 
+       * decl.c (lookup_name_real): Don't look at IDENTIFIER_LOCAL_VALUE
        for a type unless it is one.
 
        * class.c (finish_struct_1): Use OVL_CURRENT in error message.
@@ -5722,7 +6099,7 @@ Mon May 18 01:24:08 1998  Jeffrey A Law  (law@cygnus.com)
        * Makefile.in (program_transform_name, objdir): Define.
 
        * Makefile.in (BISON): Use bison from the build tree if it exists.
-       (FLEX): Similarly.
+       (FLEX): Likewise.
 
 Sun May 17 14:52:08 1998  Martin v. Loewis  <loewis@informatik.hu-berlin.de>
 
@@ -5741,7 +6118,7 @@ Sun May 17 13:53:48 1998  Mark Mitchell  <mmitchell@usa.net>
        * parse.y (.build_new_placement): New non-terminal.
        (unary_expr, new_placement): Use it.
        * parse.c: Regenerated.
-       
+
 Sun May 17 12:32:08 1998  Jason Merrill  <jason@yorick.cygnus.com>
 
        * decl.c (duplicate_decls): Use CANONICAL_TYPE_VARIANT to compare
@@ -5760,7 +6137,7 @@ Fri May 15 20:28:00 1998  Jason Merrill  <jason@yorick.cygnus.com>
 
 Fri May 15 15:34:02 1998  Benjamin Kosnik  <bkoz@rhino.cygnus.com>
 
-        * decl.c (duplicate_decls): Clean up, add DECL_DATA_AREA bits.
+       * decl.c (duplicate_decls): Clean up, add DECL_DATA_AREA bits.
 
 Fri May 15 00:46:05 1998  Jason Merrill  <jason@yorick.cygnus.com>
 
@@ -5768,20 +6145,20 @@ Fri May 15 00:46:05 1998  Jason Merrill  <jason@yorick.cygnus.com>
 
        * decl.c (start_decl): Use 'tem'.
 
-Thu May 14 16:30:47 EDT 1998  Andrew MacLeod  <amacleod@cygnus.com>
+Thu May 14 16:30:47 1998  Andrew MacLeod  <amacleod@cygnus.com>
 
        * exception.cc: Include eh-common.h.
-       (struct cp_eh_info): add eh_info struct with NEW_EH_MODEL.
+       (struct cp_eh_info): Add eh_info struct with NEW_EH_MODEL.
        (__cplus_type_matcher): First stab at new C++ runtime type matcher.
        (__cp_push_exception): Initialize eh_info struct as well.
        * except.c: Remove local structs and include eh-common.h.
        (init_exception_processing): Set language and version codes.
-       (call_eh_info): add presence of eh_info to runtime description of 
+       (call_eh_info): Add presence of eh_info to runtime description of
        struct cp_eh_info.
-       (expand_end_eh_spec): call start_catch_block() and end_catch_block().
-       * semantics.c (finish_try_block): call start_catch_block() and 
+       (expand_end_eh_spec): Call start_catch_block() and end_catch_block().
+       * semantics.c (finish_try_block): Call start_catch_block() and
        end_catch_block().
-       * parse.y (function_try_block): call start_catch_block() and 
+       * parse.y (function_try_block): Call start_catch_block() and
        end_catch_block().
 
 Thu May 14 12:27:34 1998  Brendan Kehoe  <brendan@cygnus.com>
@@ -5794,11 +6171,11 @@ Thu May 14 12:27:34 1998  Brendan Kehoe  <brendan@cygnus.com>
 Wed May 13 12:54:30 1998  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
 
        * Makefile.in (lex.o): Depend on output.h.
-       
+
        * call.c (add_function_candidate): Remove unused variable `cand'.
        (add_conv_candidate): Likewise.
        (build_builtin_candidate): Likewise.
-       
+
        * cp-tree.h: Add prototype for `types_overlap_p'.
 
        * decl.c (signal_catch): Mark parameter `sig' with ATTRIBUTE_UNUSED.
@@ -5833,7 +6210,7 @@ Tue May 12 21:37:49 1998  Jason Merrill  <jason@yorick.cygnus.com>
        DECL_NAMESPACE_SCOPE_P.
        (lang_decl_name): Likewise.
        * pt.c (tsubst_friend_function, tsubst): Likewise.
-       * decl.c (pushdecl, redeclaration_error_message, start_decl, 
+       * decl.c (pushdecl, redeclaration_error_message, start_decl,
        cp_finish_decl, start_function): Likewise.
        * class.c (finish_struct_1): Likewise.
        * call.c (build_over_call): Likewise.
@@ -5855,7 +6232,7 @@ Mon May 11 11:38:07 1998  Mark Mitchell  <mmitchell@usa.net>
        * pt.c (tsubst): Remove duplicate check for IDENTIFIER_NODE.
 
        * call.c (add_template_candidate): Adjust for changes to
-       fn_type_unification. 
+       fn_type_unification.
        (add_template_candidate_real): Likewise.
        (add_template_conv_candidate): Likewise.
        (build_user_type_conversion_1): Likewise.
@@ -5900,11 +6277,11 @@ Mon May 11 11:38:07 1998  Mark Mitchell  <mmitchell@usa.net>
        tsubst_template_argument_vector where appropriate.
        (regenerate_decl_from_template): Break out from ...
        (instantiate_decl): Here.
-       
+
        * lex.c (yyprint): Remove TYPENAME_ELLIPSIS.
        * parse.h: Regenerated.
        * parse.c: Really regenerated.
-       
+
        * cp-tree.h (finish_unary_op_expr): New function.
        (finish_id_expr): Likewise.
        (begin_new_placement): Likewise.
@@ -5966,7 +6343,7 @@ Sat May  9 14:44:37 1998  Jason Merrill  <jason@yorick.cygnus.com>
 
 Fri May  8 23:32:42 1998  Martin von Loewis  <loewis@informatik.hu-berlin.de>
 
-       * cp-tree.def (OVERLOAD): New node.  
+       * cp-tree.def (OVERLOAD): New node.
        * cp-tree.h (BINDING_TYPE, SET_IDENTIFIER_GLOBAL_VALUE,
        SET_IDENTIFIER_NAMESPACE_VALUE): Define.
        (NAMESPACE_BINDING): Remove.
@@ -5995,10 +6372,10 @@ Fri May  8 23:32:42 1998  Martin von Loewis  <loewis@informatik.hu-berlin.de>
        * call.c (add_function_candidate): Special-case type of OVERLOAD node.
        (build_user_conversions_1): Iterate using OVL_NEXT for ctors,
        convs, fns.
-       (build_new_function_call): Iterate using OVL_CHAIN.  
+       (build_new_function_call): Iterate using OVL_CHAIN.
        Print DECL_NAME in when reporting ambiguities.
        (build_object_call): Iterate using OVL_NEXT for fns, convs.
-       (build_new_op): Call lookup_function_nonclass.  
+       (build_new_op): Call lookup_function_nonclass.
        Iterate using OVL_NEXT.
        (build_op_delete_call): Change detection of members.
        Do not wrap TREE_LIST around fields and single global functions.
@@ -6016,7 +6393,7 @@ Fri May  8 23:32:42 1998  Martin von Loewis  <loewis@informatik.hu-berlin.de>
        fdecls that are OVERLOAD nodes.
        (validate_lhs): New function.
        (instantiate_type): Do not copy OVERLOAD nodes.  Remove dead
-       code. Use DECL_NAME in error messages. Split code between global
+       code.  Use DECL_NAME in error messages.  Split code between global
        and member function processing.
        * decl.c (global_type_node): New static variable.
        (in_std): New global.
@@ -6043,7 +6420,7 @@ Fri May  8 23:32:42 1998  Martin von Loewis  <loewis@informatik.hu-berlin.de>
        (pushtag): If no context, use current_namespace.
        (duplicate_decls): Don't process DECL_CHAIN.
        (pushdecl): Set DECL_CONTEXT to current_namespace, if it is not
-       already set. Never reset it to NULL_TREE.  Lookup global variables
+       already set.  Never reset it to NULL_TREE.  Lookup global variables
        in their namespace.  Push overloaded templates if they are on
        namespace level.
        (pushdecl_namespace_level): New function.
@@ -6051,7 +6428,7 @@ Fri May  8 23:32:42 1998  Martin von Loewis  <loewis@informatik.hu-berlin.de>
        (pushdecl_using_decl): New function.
        (overloaded_globals_p): Remove.
        (push_overloaded_decl): Create OVERLOAD nodes, and iterate through
-       them. Use namespace_binding and set_namespace_value.
+       them.  Use namespace_binding and set_namespace_value.
        (redeclaration_error_message): Complain if the declarations come
        from different namespaces.
        (lookup_tag): On namespace level, look in the BINDING_TYPE.
@@ -6077,7 +6454,7 @@ Fri May  8 23:32:42 1998  Martin von Loewis  <loewis@informatik.hu-berlin.de>
        (grokvardecl): Add namespace parameter.
        (grokdeclarator): Process SCOPEs that are namespaces.  For
        mangling, temporarily set the DECL_CONTEXT on anonymous structs.
-       (start_function): Check for contexts that are namespaces.  
+       (start_function): Check for contexts that are namespaces.
        Set context for declarations that have not been pushed.
        (store_parm_decls): Check for ::main only.
        (finish_function): Likewise.
@@ -6113,7 +6490,7 @@ Fri May  8 23:32:42 1998  Martin von Loewis  <loewis@informatik.hu-berlin.de>
        * lang-specs.h (__HONOR_STD): Define if -fnew-abi or -fhonor-std.
        * lex.c (identifier_type): Loop using OVL_CHAIN.
        (see_typename): Set looking_for_typename to 2.
-       (real_yylex): Likewise. 
+       (real_yylex): Likewise.
        (do_identifier): Expect OVERLOAD nodes instead of TREE_LISTs.
        (do_scoped_id): Expect OVERLOAD nodes.
        Change calling convention for qualified_lookup_using_namespace.
@@ -6140,7 +6517,7 @@ Fri May  8 23:32:42 1998  Martin von Loewis  <loewis@informatik.hu-berlin.de>
        Set DECL_CONTEXT to current_namespace if not set already.
        Ignore real contexts that are namespaces.
        (mangle_class_name_for_template): Skip global_namespace.
-       Mangle other namepaces as declarations.
+       Mangle other namespaces as declarations.
        (lookup_template_function): Set type of OVERLOAD nodes to unknown.
        (lookup_template_class): Push into namespace of context.
        If the context is a namespace, set it to global_namespace.
@@ -6182,7 +6559,7 @@ Fri May  8 23:32:42 1998  Martin von Loewis  <loewis@informatik.hu-berlin.de>
        * decl.c (duplicate_decls): Check for namespace bindings instead
        of global bindings.
        (pushdecl, push_overloaded_decl, lookup_tag, lookup_name_real,
-       lookup_name_current_level, start_decl, xref_tag, 
+       lookup_name_current_level, start_decl, xref_tag,
        finish_enum): Likewise.
        * init.c (build_offset_ref): Likewise.
        * search.c (lookup_field): Likewise.
@@ -6199,17 +6576,17 @@ Fri May  8 23:32:42 1998  Martin von Loewis  <loewis@informatik.hu-berlin.de>
        * parse.y (make_thunk): Likewise.
        * pt.c (tsubst): Likewise.
        * tree.c (debug_binfo): Likewise.
-       * exception.cc, new.cc, new1.cc, new2.cc, tinfo.cc, tinfo.h, 
+       * exception.cc, new.cc, new1.cc, new2.cc, tinfo.cc, tinfo.h,
        tinfo2.cc, inc/new.h: Add std qualifications.
        * inc/new: Wrap with namespace std if __HONOR_STD.
        * inc/typeinfo: Likewise.
 
 Fri May  8 00:43:50 1998  Jason Merrill  <jason@yorick.cygnus.com>
 
-       * call.c (build_user_type_conversion_1): Handle second_conv 
+       * call.c (build_user_type_conversion_1): Handle second_conv
        properly for templates.
 
-Thu May  7 17:09:25 EDT 1998  Andrew MacLeod  <amacleod@cygnus.com>
+Thu May  7 17:09:25 1998  Andrew MacLeod  <amacleod@cygnus.com>
 
        * method.c (build_decl_overload_real): Set TREE_USED flag to
        zero for build_type_variants nodes as well.
@@ -6222,7 +6599,7 @@ Wed May  6 16:49:48 1998  Jim Wilson  <wilson@cygnus.com>
 
        * Makefile.in (call.o, class.o, decl.o, decl2.o, errfn.o, error.o,
        except.o, expr.o, friend.o, init.o, lex.o, method.o, pt.o, repo.o,
-       rtti.o, search.o, semantics.o, sig.o, tree.o, typeck.o, typeck2.o, 
+       rtti.o, search.o, semantics.o, sig.o, tree.o, typeck.o, typeck2.o,
        xref.o): Add toplev.h dependencies.
 
 Wed May  6 16:44:58 1998  Jeffrey A Law  (law@cygnus.com)
@@ -6239,9 +6616,9 @@ Wed May  6 14:28:18 1998  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
 
 Wed May  6 06:36:41 1998  Robert Lipe  <robertl@dgii.com>
 
-       * call.c, class.c, decl.c, decl2.c, errfn.c, error.c, except.c, 
-       expr.c, friend.c, init.c, lex.c, method.c, pt.c, repo.c, rtti.c, 
-       search.c, semantics.c, sig.c, tree.c, typeck.c, typeck2.c, 
+       * call.c, class.c, decl.c, decl2.c, errfn.c, error.c, except.c,
+       expr.c, friend.c, init.c, lex.c, method.c, pt.c, repo.c, rtti.c,
+       search.c, semantics.c, sig.c, tree.c, typeck.c, typeck2.c,
        xref.c: Add include of toplev.h.
 
 Wed May  6 02:33:39 1998  Jason Merrill  <jason@yorick.cygnus.com>
@@ -6254,9 +6631,9 @@ Tue May  5 23:54:04 1998  Jason Merrill  <jason@yorick.cygnus.com>
        * init.c (expand_vec_init): The initialization of each array
        element is a full-expression.
 
-Tue May  5 18:24:13 EDT 1998  Andrew MacLeod  <amacleod@cygnus.com>
+Tue May  5 18:24:13 1998  Andrew MacLeod  <amacleod@cygnus.com>
 
-       * method.c (build_mangled_name): Add a call to build_type_variant 
+       * method.c (build_mangled_name): Add a call to build_type_variant
        to get the right type.
 
 Tue May  5 01:25:03 1998  Jason Merrill  <jason@yorick.cygnus.com>
@@ -6267,7 +6644,7 @@ Tue May  5 01:25:03 1998  Jason Merrill  <jason@yorick.cygnus.com>
 
 Sun May  3 01:32:14 1998  Jason Merrill  <jason@yorick.cygnus.com>
 
-       * call.c (build_over_call): Do evaluate arg even if it has empty 
+       * call.c (build_over_call): Do evaluate arg even if it has empty
        class type.
        * decl.c (start_function): Don't push a member function.
 
@@ -6275,7 +6652,7 @@ Thu Apr 30 18:59:23 1998  Jim Wilson  <wilson@cygnus.com>
 
        * Makefile.in (g++FAQ.info): Put -o option before input file.
 
-Thu Apr 30 13:05:33 EDT 1998  Andrew MacLeod  <amacleod@cygnus.com>
+Thu Apr 30 13:05:33 1998  Andrew MacLeod  <amacleod@cygnus.com>
 
        * gxxint.texi: Add info for squangling codes K and B.
 
@@ -6304,7 +6681,7 @@ Sun Apr 26 12:10:18 1998  Mark Mitchell  <mmitchell@usa.net>
        (PRIMARY_TEMPLATE_P): Use it.
        (push_template_decl_real): New function.
        (redeclare_class_template): Take new template parameters as
-       input. 
+       input.
        (is_specialization_of): New function.
        (comp_template_args): Declare.
        * decl.c (pushtag): Handle friend template classes.
@@ -6324,7 +6701,7 @@ Sun Apr 26 12:10:18 1998  Mark Mitchell  <mmitchell@usa.net>
        with friend templates.
        * typeck.c (comptypes): Use comp_template_args, rather than
        expanding it inline.
-       * parse.y (component_decl): Handle a nested template type 
+       * parse.y (component_decl): Handle a nested template type
        like other component type declarations.
 
        * pt.c (check_explicit_specialization): Handle overloaded
@@ -6342,14 +6719,14 @@ Thu Apr 23 21:19:06 1998  Jason Merrill  <jason@yorick.cygnus.com>
        Enforce access control here.  Emit overload warnings here.
        (add_warning): New fn.
        (joust): Add WARN parm.  If not set, call add_warning instead of
-       printing a warning.  Reenable some warnings.
+       printing a warning.  Re-enable some warnings.
        (tourney): Pass it.
        (convert_like): Adjust.
        (build_new_op): Adjust.
        (build_new_function_call): Adjust.
        (build_user_type_conversion_1): Adjust.
        (USER_CONV_FN): Adjust.
-       * tree.c (build_expr_wrapper, build_expr_ptr_wrapper, 
+       * tree.c (build_expr_wrapper, build_expr_ptr_wrapper,
        build_int_wrapper): New fns.
 
 Thu Apr 23 18:27:53 1998  Mark P. Mitchell  <mmitchell@usa.net>
@@ -6368,15 +6745,15 @@ Wed Apr 22 13:24:48 1998  Mark Mitchell  <mmitchell@usa.net>
        the DECL_RESULTs of a member TEMPLATE_DECL, not just the
        TEMPLATE_DECL.
 
-        * pt.c (tsubst): Decrease the template-level of
-        TEMPLATE_TEMPLATE_PARMS.  Likewise for the DECL_INITIAL of a
-        TEMPLATE_PARM_INDEX.
-        (template_decl_level): New function.
-        (unify): Make sure to record unifications for template
-        parameters, even when the parameters exactly match the arguments.
-        Combine duplicated code for TEMPLATE_TEMPLATE_PARMs and
-        TEMPLATE_TYPE_PARMS.  Don't try to unify template parameters that
-        aren't from the level we're currently working on.
+       * pt.c (tsubst): Decrease the template-level of
+       TEMPLATE_TEMPLATE_PARMS.  Likewise for the DECL_INITIAL of a
+       TEMPLATE_PARM_INDEX.
+       (template_decl_level): New function.
+       (unify): Make sure to record unifications for template
+       parameters, even when the parameters exactly match the arguments.
+       Combine duplicated code for TEMPLATE_TEMPLATE_PARMs and
+       TEMPLATE_TYPE_PARMS.  Don't try to unify template parameters that
+       aren't from the level we're currently working on.
 
 Tue Apr 21 22:00:04 1998  Mark Mitchell  <mmitchell@usa.net>
 
@@ -6519,29 +6896,29 @@ Sun Apr 12 22:31:19 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
 Fri Apr 10 12:16:49 1998  Benjamin Kosnik  <bkoz@loony.cygnus.com>
 
        * decl.c (duplicate_decls): Don't warn for redundant decls if
-       friend: let add_friend take care of it.
+       friend: let add_friend take care of it.
 
 Thu Apr  9 02:40:48 1998  Jason Merrill  <jason@yorick.cygnus.com>
 
        * sig.c (build_signature_pointer_constructor): Don't set
        TREE_HAS_CONSTRUCTOR for a signature pointer.
        * cvt.c (ocp_convert): Don't force a temporary for internal structs.
-       * init.c (resolve_offset_ref): Warn about implicit & on pmfs 
+       * init.c (resolve_offset_ref): Warn about implicit & on pmfs
        here, too.
-       * typeck.c (build_unary_op): Only allow taking the address of a 
+       * typeck.c (build_unary_op): Only allow taking the address of a
        real constructor.
        * typeck2.c (digest_init): Simplify.
        (store_init_value): Don't pedwarn about using { } for pmfs.
 
 Thu Apr  9 22:16:57 1998  Per Bothner  <bothner@cygnus.com>
 
-        * cp-tree.h (start_decl):  Update prototype.
-        * decl.c (start_decl):  Like the C version, new parameters
-        for the attributes.  Call cplus_decl_attributes here,
-        (pushdecl):  Like C version, do build_type_copy if TYPE_DECL,
-        (grokdeclarator):  Pass NULL for new start_decl arguments.
-        * pt.c (tsubst_expr):  Likewise.
-        * parse.y:  Merge cplus_decl_attribute calls into start_decl calls.
+       * cp-tree.h (start_decl):  Update prototype.
+       * decl.c (start_decl):  Like the C version, new parameters
+       for the attributes.  Call cplus_decl_attributes here,
+       (pushdecl):  Like C version, do build_type_copy if TYPE_DECL,
+       (grokdeclarator):  Pass NULL for new start_decl arguments.
+       * pt.c (tsubst_expr):  Likewise.
+       * parse.y:  Merge cplus_decl_attribute calls into start_decl calls.
        * typeck.c (common_type): Check TYPE_MAIN_VARIANT.
        * lex.c (build_lang_decl): Add lang_name_java.
        * class.c (push_lang_context): Add lang_name_java.
@@ -6552,14 +6929,14 @@ Thu Apr  9 22:16:57 1998  Benjamin Kosnik  <bkoz@loony.cygnus.com>
        * decl.c (grokdeclarator): Check TYPE_MAIN_VARIANT.
        * call.c (build_scoped_method_call): Check for TREE_CODE for
        VOID_TYPE instead of type ==  void_type_node.
-       (build_method_call): Ditto.
-       * decl.c (lookup_name_real): Ditto.
-       (grokdeclarator): Ditto.
-       (start_decl): Ditto.
-       (grokparms): Ditto.
-       (start_function): Ditto.
-       (finish_function): Ditto.
-       (start_method): Ditto.
+       (build_method_call): Likewise.
+       * decl.c (lookup_name_real): Likewise.
+       (grokdeclarator): Likewise.
+       (start_decl): Likewise.
+       (grokparms): Likewise.
+       (start_function): Likewise.
+       (finish_function): Likewise.
+       (start_method): Likewise.
 
 Thu Apr  9 00:18:44 1998  Dave Brolley  (brolley@cygnus.com)
 
@@ -6593,7 +6970,7 @@ Sat Apr  4 12:52:35 1998  Jeffrey A Law  (law@cygnus.com)
 Fri Apr  3 02:22:59 1998  Jason Merrill  <jason@yorick.cygnus.com>
 
        Implement empty base optimization.
-       * class.c (finish_struct_1): Add vbase fields earlier.  Set 
+       * class.c (finish_struct_1): Add vbase fields earlier.  Set
        CLASSTYPE_SIZE of an empty base to 0.  Types with bases can be empty.
        * search.c (dfs_check_overlap, dfs_no_overlap_yet): New fns.
        (types_overlap_p): New fn.
@@ -6630,7 +7007,7 @@ Wed Apr  1 18:22:25 1998  Jeffrey A Law  (law@cygnus.com)
        * class.c, Make sure system.h is included just after config.h.
        Delete lingering stdio and errno references too.
        * decl.c, errfn.c, parse.y, ptree.c search.c, xref.c: Likewise.
-       
+
 Wed Apr  1 15:38:36 1998  Jason Merrill  <jason@yorick.cygnus.com>
 
        * friend.c (is_friend): Fix access control for local classes.
@@ -6657,7 +7034,7 @@ Tue Mar 31 13:43:57 1998  Jeffrey A Law  (law@cygnus.com)
 
 Mon Mar 30 12:15:00 1998  Mark Mitchell  <mmitchell@usa.net>
 
-       * pt.c (fn_type_unification): Allow incomplete unification without 
+       * pt.c (fn_type_unification): Allow incomplete unification without
        an immediate error message.
 
 Mon Mar 30 08:55:42 1998  Jason Merrill  <jason@yorick.cygnus.com>
@@ -6735,7 +7112,7 @@ Fri Mar 27 20:23:18 1998  Mark Mitchell  <mmitchell@usa.net>
 
        * error.c (dump_decl): Be a bit more explicit with template
        type arguments, when verbose.
-       
+
 Fri Mar 27 18:16:40 1998  Jason Merrill  <jason@yorick.cygnus.com>
 
        * inc/exception: Reorder closing braces.
@@ -6748,7 +7125,7 @@ Fri Mar 27 13:22:18 1998  Mark Mitchell  <mmitchell@usa.net>
 
 Thu Mar 26 11:16:30 1998  Jason Merrill  <jason@yorick.cygnus.com>
 
-       * call.c (build_over_call): Check IS_AGGR_TYPE, not 
+       * call.c (build_over_call): Check IS_AGGR_TYPE, not
        TYPE_LANG_SPECIFIC.
        * typeck.c (convert_arguments): Likewise.
 
@@ -6807,8 +7184,8 @@ Tue Mar 24 12:21:55 1998  Benjamin Kosnik  <bkoz@lisa.cygnus.com>
 
 Tue Mar 24 12:21:48 1998  Jim Wilson  <wilson@cygnus.com>
 
-        * decl.c (init_decl_processing): Initialize TYPE_MAX_VALUE for
-        boolean_type_node to 1.
+       * decl.c (init_decl_processing): Initialize TYPE_MAX_VALUE for
+       boolean_type_node to 1.
 
 Tue Mar 24 10:23:47 1998  Mark Mitchell  <mmitchell@usa.net>
 
@@ -6847,7 +7224,7 @@ Tue Mar 24 10:23:47 1998  Mark Mitchell  <mmitchell@usa.net>
        (fn_type_unification): Use new interfaces.
        (type_unification): Likewise.  Remove NOP_EXPR hack.
        (type_unification_real): Likewise.
-       (unify): Likewise.  Deal with unification of complex expresions.
+       (unify): Likewise.  Deal with unification of complex expressions.
 
 Mon Mar 23 12:24:37 1998  Jason Merrill  <jason@yorick.cygnus.com>
 
@@ -6860,7 +7237,7 @@ Mon Mar 23 12:24:37 1998  Jason Merrill  <jason@yorick.cygnus.com>
        * search.c (lookup_field): Do implicit typename stuff.
 
 Sun Mar 22 00:50:42 1998  Nick Clifton  <nickc@cygnus.com>
-                          Geoff Noer    <noer@cygnus.com>
+                         Geoff Noer    <noer@cygnus.com>
 
        * Makefile.in: Various fixes for building cygwin32 native toolchains.
        * Make-lang.in: Likewise.
@@ -6880,7 +7257,7 @@ Fri Mar 20 10:42:07 1998  Jason Merrill  <jason@yorick.cygnus.com>
 
 Fri Mar 20 08:12:43 1998  H.J. Lu  (hjl@gnu.org)
 
-       * semantics.c (finish_asm_stmt): Fix combine strings. Call
+       * semantics.c (finish_asm_stmt): Fix combine strings.  Call
        c_expand_asm_operands () if output_operands, input_operands or
        clobbers is not NULL_TREE.
 
@@ -6888,7 +7265,7 @@ Fri Mar 20 00:10:19 1998  Kriang Lerdsuwanakij  <lerdsuwa@scf.usc.edu>
 
        * pt.c (complete_template_args): New function.
        (get_bindings): Deal with specializations of function templates
-       with return type containing parameters from outer class 
+       with return type containing parameters from outer class
        templates.
        (tsubst, TEMPLATE_TEMPLATE_PARM): When reducing parameter level,
        substitute arguments and compose a new type.
@@ -6904,7 +7281,7 @@ Thu Mar 19 11:51:58 1998  Jason Merrill  <jason@yorick.cygnus.com>
 
        * call.c (standard_conversion): Handle A* -> const A* properly.
 
-       * pt.c (get_bindings_real): Rename from get_bindings.  Add 
+       * pt.c (get_bindings_real): Rename from get_bindings.  Add
        check_rettype parm.
        (get_bindings): Pass 1.
        (get_bindings_overload): Pass 0.
@@ -6925,7 +7302,7 @@ Thu Mar 19 02:27:48 1998  Jason Merrill  <jason@yorick.cygnus.com>
 
 Wed Mar 18 12:41:43 1998  Jason Merrill  <jason@yorick.cygnus.com>
 
-       * decl.c (make_implicit_typename): Only change the type of a 
+       * decl.c (make_implicit_typename): Only change the type of a
        TYPENAME_TYPE.
 
 Wed Mar 18 10:09:51 1998  Mark Mitchell  <mmitchell@usa.net>
@@ -6939,7 +7316,7 @@ Wed Mar 18 10:09:51 1998  Mark Mitchell  <mmitchell@usa.net>
        * cp-tree.def: Add ASM_STMT tree node.
        * Makefile.in, Make-lang.in: Add dependencies on and for
        semantics.c.
-       
+
 Wed Mar 18 00:24:10 1998  Jason Merrill  <jason@yorick.cygnus.com>
 
        * pt.c (push_template_decl): Only check primary templates.
@@ -6947,7 +7324,7 @@ Wed Mar 18 00:24:10 1998  Jason Merrill  <jason@yorick.cygnus.com>
        * pt.c (check_explicit_specialization): Complain about default args
        in explicit specialization.
 
-       * parse.y (nomods_initdcl0): Also call cp_finish_decl for a 
+       * parse.y (nomods_initdcl0): Also call cp_finish_decl for a
        constructor_declarator.
 
 Tue Mar 17 14:44:54 1998  Mark Mitchell  <mmitchell@usa.net>
@@ -6974,7 +7351,7 @@ Mon Mar 16 12:10:39 1998  Jason Merrill  <jason@yorick.cygnus.com>
        * class.c (pushclass): Only use the mi_matrix stuff #ifdef MI_MATRIX.
        * search.c: Likewise.
 
-       * lex.c (do_pending_defargs): Only call 
+       * lex.c (do_pending_defargs): Only call
        maybe_{begin,end}_member_template_processing for FUNCTION_DECLs.
 
        * parse.y (initdcl0_innards): Move maybeasm back into initdcl0 et al.
@@ -6987,9 +7364,9 @@ Mon Mar 16 10:54:21 1998  Mark Mitchell  <mmitchell@usa.net>
 
        * pt.c (tsubst_copy): Deal with BIND_EXPR in a way that more
        closely mimics the behavior in parse.y.
-       (tsubst_expr): Return the resuting BLOCK when making a tsubst'ing
+       (tsubst_expr): Return the resulting BLOCK when making a tsubst'ing
        into a compound statement.
-       
+
 Sun Mar 15 02:07:26 1998  Jason Merrill  <jason@yorick.cygnus.com>
 
        * cp-tree.h (TEMPLATE_PARMS_FOR_INLINE): New macro.
@@ -7006,13 +7383,13 @@ Sun Mar 15 01:14:22 1998  Kriang Lerdsuwanakij  <lerdsuwa@scf.usc.edu>
        * lex.c (do_identifier): Handle TEMPLATE_DECL that was
        added in the class scope to catch redefinition error.
 
-       * pt.c (reduce_template_parm_level): Also copy 
+       * pt.c (reduce_template_parm_level): Also copy
        the DECL_TEMPLATE_PARMS field.
 
 Sun Mar 15 10:54:08 1998  Mark Mitchell  <mmitchell@usa.net>
 
        * pt.c (tsubst): Clear TYPE_REFERENCE_TO when creating a
-        reduced-level template type parameter.
+       reduced-level template type parameter.
 
 Sun Mar 15 12:26:02 1998  Manfred Hollstein  <manfred@s-direktnet.de>
 
@@ -7023,10 +7400,10 @@ Sun Mar 15 12:26:02 1998  Manfred Hollstein  <manfred@s-direktnet.de>
        * typeck2.c (abstract_virtuals_error): Use two loops to emit
        abstract virtual functions and virtual functions which need a
        final overrider separately.
-       
+
 Thu Mar 12 09:39:40 1998  Manfred Hollstein  <manfred@s-direktnet.de>
 
-       * lang-specs.h: Properly put brackets around array elements in 
+       * lang-specs.h: Properly put brackets around array elements in
        initializer.
 
        * typeck.c (build_binary_op_nodefault): Correctly place parens around
@@ -7044,7 +7421,7 @@ Thu Mar 12 09:26:04 1998  Manfred Hollstein  <manfred@s-direktnet.de>
        * except.c (do_unwind): #if 0 definition of unused variables fcall
        and next_pc.
 
-       * expr.c (extract_scalar_init): #if 0 prototype and function 
+       * expr.c (extract_scalar_init): #if 0 prototype and function
        definition.
 
        * init.c (expand_aggr_init_1): Remove unused variable init_type.
@@ -7088,13 +7465,13 @@ Fri Mar  6 23:27:35 1998  Jeffrey A Law  (law@cygnus.com)
 
 Fri Mar  6 10:06:59 1998  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
 
-        * method.c: Include "system.h" to get stdlib.h, stdio.h,
-        ctype.h, string.h, etc.
-        (issue_nrepeats): Add default case in enumeration switch.
-        (check_btype): Likewise.
-        (process_overload_item): Likewise.
-        
-        * Makefile.in (method.o): Depend on system.h.
+       * method.c: Include "system.h" to get stdlib.h, stdio.h,
+       ctype.h, string.h, etc.
+       (issue_nrepeats): Add default case in enumeration switch.
+       (check_btype): Likewise.
+       (process_overload_item): Likewise.
+
+       * Makefile.in (method.o): Depend on system.h.
 
 Wed Mar  4 22:26:53 1998  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
 
@@ -7105,7 +7482,7 @@ Wed Mar  4 12:11:53 1998  Michael Tiemann  <tiemann@axon.cygnus.com>
        * rtti.c (get_tinfo_fn_dynamic): If this function is called an
        FLAG_RTTI is unset, initialize type info machinery and continue
        with FLAG_RTTI enabled.
-       (get_typeid): Ditto.
+       (get_typeid): Likewise.
 
 Wed Mar  4 11:47:55 1998  Jason Merrill  <jason@yorick.cygnus.com>
 
@@ -7124,7 +7501,7 @@ Tue Mar  3 01:38:17 1998  Jason Merrill  <jason@yorick.cygnus.com>
        some formatting quirks.
 
        * call.c, class.c, cp-tree.h, cvt.c, decl.c, init.c, lex.c,
-       method.c, pt.c, ptree.c, typeck.c: Remove support for 
+       method.c, pt.c, ptree.c, typeck.c: Remove support for
        -fno-ansi-overloading and overloading METHOD_CALL_EXPR.
        * class.h: Remove.
        * Makefile.in: Adjust.
@@ -7140,7 +7517,7 @@ Mon Mar  2 12:11:06 1998  Jason Merrill  <jason@yorick.cygnus.com>
        (nested_name_specifier): And add it before this use.
        (typename_sub0): And this use.  Also add use without the keyword.
        (typename_sub1): Likewise.
-       * pt.c (instantiate_class_template): Don't actually instantiate 
+       * pt.c (instantiate_class_template): Don't actually instantiate
        anything if our type uses template parms.
 
 Mon Mar  2 11:04:59 1998  Jim Wilson  <wilson@cygnus.com>
@@ -7161,9 +7538,9 @@ Sat Feb 28 12:06:44 1998  Jason Merrill  <jason@yorick.cygnus.com>
        * lex.c (yyprint): Handle a PTYPENAME being a TEMPLATE_DECL.
        * decl.c (make_typename_type): Handle template-id where the name
        is a TEMPLATE_DECL.
-       * call.c (build_scoped_method_call): Handle member template 
+       * call.c (build_scoped_method_call): Handle member template
        destructor call.
-       * pt.c (tsubst_copy, METHOD_CALL_EXPR): Don't assume a member 
+       * pt.c (tsubst_copy, METHOD_CALL_EXPR): Don't assume a member
        destructor is represented by the type.
 
        * cp-tree.h (TYPENAME_TYPE_FULLNAME): New macro.
@@ -7210,7 +7587,7 @@ Fri Feb 27 02:25:16 1998  Jason Merrill  <jason@yorick.cygnus.com>
        * decl.c (pushtag): Handle member templates.
        * method.c (do_inline_function_hair): Don't touch
        IDENTIFIER_GLOBAL_VALUE.
-       * init.c (build_offset_ref): If name isn't an identifier, just 
+       * init.c (build_offset_ref): If name isn't an identifier, just
        return it.
        * spew.c (yylex): Handle PTYPENAME like TYPENAME.
 
@@ -7241,43 +7618,43 @@ Wed Feb 25 00:35:33 1998  Jason Merrill  <jason@yorick.cygnus.com>
 Tue Feb 24 22:15:04 1998  Martin von Loewis  <loewis@informatik.hu-berlin.de>
 
        * cp-tree.def: Add CPLUS_BINDING node.
-       * cp-tree.h (tree_binding): new struct
-       (BINDING_SCOPE, BINDING_VALUE): new macros
-       (current_namespace, global_namespace): declare extern
-       (struct lang_decl_flags): new field in_namespace
-       (DECL_NAMESPACE_USING, DECL_NAMESPACE_USERS): new macros
-       (DECL_NAMESPACE, SET_DECL_NAMESPACE): new macros
-       (TREE_INDIRECT_USING): new macro
+       * cp-tree.h (tree_binding): New struct.
+       (BINDING_SCOPE, BINDING_VALUE): New macros.
+       (current_namespace, global_namespace): Declare extern.
+       (struct lang_decl_flags): New field in_namespace.
+       (DECL_NAMESPACE_USING, DECL_NAMESPACE_USERS): New macros.
+       (DECL_NAMESPACE, SET_DECL_NAMESPACE): New macros.
+       (TREE_INDIRECT_USING): New macro.
        * decl2.c (current_namespace, global_namespace): Declare.  The
        value is a NAMESPACE_DECL now, not a TREE_LIST.
-       (is_namespace_ancestor, namespace_ancestor):new static functions.
-       (add_using_namespace, ambiguous_decl): likewise.
-       (lookup_using_namespace): new support function for lookup_name.
-       (qualified_lookup_using_namespace): new support function for
-       do_scoped_id and lookup_namespace_name
-       (get_namespace_id): mark as obsolete.
+       (is_namespace_ancestor, namespace_ancestor): New static functions.
+       (add_using_namespace, ambiguous_decl): Likewise.
+       (lookup_using_namespace): New support function for lookup_name.
+       (qualified_lookup_using_namespace): New support function for
+       do_scoped_id and lookup_namespace_name.
+       (get_namespace_id): Mark as obsolete.
        (current_namespace_id): Likewise.
        (do_namespace_alias): Implement.
        (do_using_directive): Implement as call to add_using_namespace.
-       * decl.c (binding_for_name): new function.
-       (push_namespace, pop_namespace): implement.
-       (push_decl): don't install a FUNCTION_DECL in the global branch.
-       (lookup_namespace_name): implement using qualified lookup.
+       * decl.c (binding_for_name): New function.
+       (push_namespace, pop_namespace): Implement.
+       (push_decl): Don't install a FUNCTION_DECL in the global branch.
+       (lookup_namespace_name): Implement using qualified lookup.
        (lookup_name_real): For global scoping, lookup in
-       global_namespace. For namespace scoping, lookup in given
-       namespace. For unscoped lookup, iterate over namespace,
+       global_namespace.  For namespace scoping, lookup in given
+       namespace.  For unscoped lookup, iterate over namespace,
        considering using directives.
-       (init_decl_processing): initialize global_namespace.
+       (init_decl_processing): Initialize global_namespace.
        (grokvardecl): Build assembler name as static name for globals.
        (grokdeclarator): Remove old namespace mangling.
        (xref_tag): When installing a global binding for the
        tag, make sure we have an identifier.
-       * method.c (build_overload_nested_name): mangle namespaces.
+       * method.c (build_overload_nested_name): Mangle namespaces.
        (build_qualified_name): Likewise.
        (build_decl_overload_real): Likewise.
-       * lex.c (build_lang_decl): set namespace for new declaration to
+       * lex.c (build_lang_decl): Set namespace for new declaration to
        current_namespace.
-       (do_scoped_id): find global names in global or current
+       (do_scoped_id): Find global names in global or current
        namespace, or using qualified namespace lookup, depending on
        context.
        * init.c (build_member_call): When scope is namespace, use
@@ -7307,7 +7684,7 @@ Tue Feb 24 01:40:24 1998  Jason Merrill  <jason@yorick.cygnus.com>
        * pt.c (instantiate_class_template): Don't instantiate if pedantic
        and the args use template parms.
 
-       * pt.c (push_tinst_level): If the instantiaton uses template parms,
+       * pt.c (push_tinst_level): If the instantiation uses template parms,
        fail silently.
        * decl.c (xref_basetypes): Do call complete_type for basetypes
        that involve template parameters.
@@ -7336,7 +7713,7 @@ Mon Feb 23 02:52:29 1998  Mark Mitchell  <mmitchell@usa.net>
 
        * Make-lang.in (cc1plus): Note that cc1plus depends on
        cp/cp-tree.h and cp/cp-tree.def.
-       
+
        * cp-tree.def (TEMPLATE_CONST_PARM): Remove.
        (TEMPLATE_PARM_INDEX): New tree code, used to indicate a
        position in a template parameter list.
@@ -7371,7 +7748,7 @@ Mon Feb 23 02:52:29 1998  Mark Mitchell  <mmitchell@usa.net>
        two template functions with the same DECL_ASSEMBLER_NAME the same,
        since the names are not yet mangled.
        * error.c (dump_decl): Use TEMPLATE_PARM_INDEX instead of
-       TEMPLATE_CONST_PARM. 
+       TEMPLATE_CONST_PARM.
        (dump_expr): Likewise.  Use the TEMPLATE_PARM_DECL to get at the
        decl for a non-type parameter, rather than printing `<tparm ...>'.
        * friend.c (is_friend): Handle TEMPLATE_DECL friends.
@@ -7384,7 +7761,7 @@ Mon Feb 23 02:52:29 1998  Mark Mitchell  <mmitchell@usa.net>
        conditionally calling end_member_template_processing.
        (do_pending_defargs): Likewise.
        (do_identifier): Use TEMPLATE_PARM_INDEX instead of
-       TEMPLATE_CONST_PARM.  
+       TEMPLATE_CONST_PARM.
        * method.c (build_mangled_template_parm_index): New function.
        (build_overload_value): Use it.
        (build_overload_name): Likewise.
@@ -7414,14 +7791,14 @@ Mon Feb 23 02:52:29 1998  Mark Mitchell  <mmitchell@usa.net>
        template.
        (tsubst_copy): Tidy up slightly.  Use TEMPLATE_PARM_INDEX instead
        of TEMPLATE_CONST_PARM.  Handle TYPE_DECLs by tsubsting into them.
-       (unify): Use TEMPLATE_PARM_INDEX instead of TEMPLATE_CONST_PARM.  
+       (unify): Use TEMPLATE_PARM_INDEX instead of TEMPLATE_CONST_PARM.
        (get_bindings): Call add_to_template_args if necessary.
        (instantiate_decl): Handle instantiations of friend templates.
        * search.c (lookup_field_1): Don't treat the TYPE_FIELDS of a
        TEMPLATE_TYPE_PARM as a list of fields; it's not!
-       * spew.c (yylex): Do a little manual constant propogation to
+       * spew.c (yylex): Do a little manual constant propagation to
        clarify the code.
-       
+
 Sun Feb 22 19:53:29 1998  Jeffrey A Law  (law@cygnus.com)
 
        * error.c: Include sys/types.h.
@@ -7434,20 +7811,20 @@ Thu Feb 19 10:36:48 1998  Jason Merrill  <jason@yorick.cygnus.com>
 
        * typeck2.c (process_init_constructor): Sorry about non-trivial
        labeled initializers.
-       * parse.y (initlist): Reenable labeled initializers.
+       * parse.y (initlist): Re-enable labeled initializers.
 
 Thu Feb 19 10:15:55 1998  Kriang Lerdsuwanakij  <lerdsuwa@scf.usc.edu>
 
-       * pt.c (coerce_template_parms) Add a new parameter, is_tmpl_parm,
-       all callers changed.  Rely on the new parameter instead of arg 
+       * pt.c (coerce_template_parms): Add a new parameter, is_tmpl_parm,
+       all callers changed.  Rely on the new parameter instead of arg
        being a TREE_LIST when determine whether we are working inside
        template template parameter.  Clean up is_type test.
-       
+
 Thu Feb 19 10:04:12 1998  Jason Merrill  <jason@yorick.cygnus.com>
 
        * cvt.c (cp_convert_to_pointer): Preserve TREE_CONSTANT.
        * typeck2.c (initializer_constant_valid_p): Allow conversions
-       between pointers and refrerences.
+       between pointers and references.
 
 1998-02-19  Brendan Kehoe  <brendan@cygnus.com>
 
@@ -7478,14 +7855,14 @@ Tue Feb 17 14:07:52 1998  Mark Mitchell  <mmitchell@usa.net>
        (datadef): Remove redundant actions.
        (initdcl0, notype_initdcl0, nomods_initdcl0): Use initdcl0_innards.
        * parse.c: Regenerated.
-       
+
 Tue Feb 17 11:54:16 1998  Jason Merrill  <jason@yorick.cygnus.com>
 
        * parse.y (simple_stmt): Use getdecls() to check for decl.
 
 Sat Feb 14 11:50:51 1998  Manfred Hollstein  <manfred@s-direktnet.de>
 
-       * Make-lang.in (DEMANGLER_INSTALL_NAME, DEMANGLER_CROSS_NAME): New 
+       * Make-lang.in (DEMANGLER_INSTALL_NAME, DEMANGLER_CROSS_NAME): New
        macros.
        (c++.install-common): Install c++filt properly as native or as cross
        variant.
@@ -7501,14 +7878,14 @@ Fri Feb 13 14:06:22 1998  Mike Stump  <mrs@wrs.com>
 
 Fri Feb 13 13:24:32 1998  Jason Merrill  <jason@yorick.cygnus.com>
 
-       * parse.y (simple_stmt): If the condition isn't a declaration, 
+       * parse.y (simple_stmt): If the condition isn't a declaration,
        start the controlled block after the test.
 
 Fri Feb 13 02:26:10 1998  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
 
        * call.c (build_over_call): Convert builtin abs, labs and fabs to
        tree-codes.
-       * decl.c (init_decl_processing): Reenable abs, labs and fabs as
+       * decl.c (init_decl_processing): Re-enable abs, labs and fabs as
        builtins.
 
 Fri Feb 13 01:36:42 1998  Jason Merrill  <jason@yorick.cygnus.com>
@@ -7537,7 +7914,7 @@ Wed Feb 11 23:28:05 1998  Mark Mitchell  <mmitchell@usa.net>
 Wed Feb 11 16:42:04 1998  Mark Mitchell  <mmitchell@usa.net>
 
        * tree.c (is_overloaded_fn): Use really_overloaded_fn.
-       (really_overloaded_fn): Move check here from is_overloaded_fn. 
+       (really_overloaded_fn): Move check here from is_overloaded_fn.
        (get_first_fn): Use really_overloaded_fn and is_overloaded_fn.
 
 Wed Feb 11 15:54:18 1998  Mark Mitchell  <mmitchell@usa.net>
@@ -7576,7 +7953,7 @@ Mon Feb  9 22:23:31 1998  Mark Mitchell  <mmitchell@usa.net>
        (uses_template_parms): Handle the DECL_INITIAL for a CONST_DECL.
        * typeck.c (build_component_ref): Assign the correct type to the
        result of build_vfn_ref.
-       
+
 Tue Feb 10 23:56:46 1998  Jason Merrill  <jason@yorick.cygnus.com>
 
        * pt.c (convert_nontype_argument): Fix typo.
@@ -7589,19 +7966,19 @@ Tue Feb 10 20:36:52 1998  Jason Merrill  <jason@yorick.cygnus.com>
        * decl.c (grokdeclarator): Use DECL_USE_TEMPLATE instead
        when deciding to override DECL_ASSEMBLER_NAME.
 
-Tue Feb 10 15:30:55 EST 1998 Andrew MacLeod <amacleod@torpedo.to.cygnus.com>
+Tue Feb 10 15:30:55 1998  Andrew MacLeod  <amacleod@torpedo.to.cygnus.com>
 
        * decl2.c (lang_f_options): Add -fsquangle to option processing list.
        * cp-tree.h (flag_do_squangling): Add declaration.
        * lang-options.h: Add -fsquangle and -fno-squangle.
        * method.c: Add macros and static variables for squangling.
-       (build_overload_name): Rename to build_mangled_name, add logic for B 
-       compression, and split into process_modifiers and 
+       (build_overload_name): Rename to build_mangled_name, add logic for B
+       compression, and split into process_modifiers and
        process_overload_item.
-       (process_modifiers): New function, to handle constant, reference, 
-       and pointer types. 
+       (process_modifiers): New function, to handle constant, reference,
+       and pointer types.
        (process_overload_item): New function, handles issue of type codes.
-       (build_overload_name): New function, start squangling and call 
+       (build_overload_name): New function, start squangling and call
        build_mangled_name.
        (ALLOCATE_TYPEVEC, DEALLOCATE_TYPEVEC): Remove macro and expand inline.
        (start_squangling): New function to initialize squangling structs.
@@ -7614,7 +7991,7 @@ Tue Feb 10 15:30:55 EST 1998 Andrew MacLeod <amacleod@torpedo.to.cygnus.com>
        use DECL_ASSEMBLER_NAME when squangling is on.
        (check_btype): New function, checks for B type compression.
        (build_static_name, build_decl_overload_real): Initiate squangling.
-       (build_typename_overload, build_overload_with_type): Initiate 
+       (build_typename_overload, build_overload_with_type): Initiate
        squangling
 
 Sun Feb  8 23:47:38 1998  scott snyder  <sss@d0linux01.fnal.gov>
@@ -7650,7 +8027,7 @@ Tue Feb  3 23:50:52 1998  Mark Mitchell  <mmitchell@usa.net>
 
        * cvt.c (ocp_convert): Obtain the constant values from constant
        decls even if the destination type is the same as the type of the
-       decl. 
+       decl.
 
        * decl2.c (finish_file): Make sure that static inlines with
        definitions are not marked DECL_EXTERNAL before returning.
@@ -7659,7 +8036,7 @@ Tue Feb  3 22:43:42 1998  Jason Merrill  <jason@yorick.cygnus.com>
 
        * decl.c: Lose arg_looking_for_template.
        (lookup_name_real): Likewise.
-       * parse.y: Lose processing_template_arg, template_arg1
+       * parse.y: Lose processing_template_arg, template_arg1.
        (primary): Likewise.
        * spew.c (yylex): Set lastiddecl for PTYPENAMEs, too.
 
@@ -7667,36 +8044,36 @@ Tue Feb  3 22:04:01 1998  Kriang Lerdsuwanakij  <lerdsuwa@scf.usc.edu>
 
        * error.c (dump_decl): Fix type of default arguments for template
        template parameters and nontype template parameters.
-       * parse.y (template_parm): Handle invalid default template 
+       * parse.y (template_parm): Handle invalid default template
        template arguments here.
 
-       * parse.y (template_parm): Use template_arg instead of PTYPENAME 
+       * parse.y (template_parm): Use template_arg instead of PTYPENAME
        for default template template argument.
-       * pt.c (coerce_template_parms): Merge default template argument 
+       * pt.c (coerce_template_parms): Merge default template argument
        codes.  Can treat RECORD_TYPE as template name if it is implicitly
        created.  Fix argument index in error message.
-       * typeck.c (comptypes): Merge template argument comparison codes in 
+       * typeck.c (comptypes): Merge template argument comparison codes in
        TEMPLATE_TEMPLATE_PARM and RECORD_TYPE.
 
-Tue Jan  6 01:42:44 1998  Mumit Khan <khan@xraylith.wisc.edu>
+Tue Jan  6 01:42:44 1998  Mumit Khan  <khan@xraylith.wisc.edu>
 
        * lex.c (file_name_nondirectory): Also check for '/'.
 
 Mon Feb  2 11:24:22 1998  Mark Mitchell  <mmitchell@usa.net>
 
        * parse.y (primary): Deal with statement-expressions in
-       templates. 
+       templates.
        * pt.c (tsubst_copy): Handle BIND_EXPR.
        * tree.c (mapcar): Likewise.
 
        * call.c (add_template_candidate_real): Pass extra parameter to
-       fn_type_unification. 
+       fn_type_unification.
        * cp-tree.h (fn_type_unification): Add parameter.
        * pt.c (fn_type_unification): Add additional parameter to deal with
        static member functions.
        (get_bindings): Deal with static member functions.
 
-       * cp-tree.h (DECL_NONSTATIC_MEMBER_FUNCTION_P): New macro.      
+       * cp-tree.h (DECL_NONSTATIC_MEMBER_FUNCTION_P): New macro.
        (revert_static_member_fn): Declare.
        * decl.c (revert_static_member_fn): Remove declaration.  Change
        linkage from internal to external.
@@ -7745,7 +8122,7 @@ Mon Feb  2 00:57:38 1998  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
        (grokdeclarator): Add parentheses around && within ||.  Add
        explicit braces to avoid ambiguous `else'.
        (grokparms): Initialize `type' to NULL_TREE.
-       (xref_tag): Remove unused label `just_return'.
+       (xref_tag): Remove unused label `just_return'.
        (finish_enum): Initialize `minnode' and `maxnode' to NULL_TREE.
        (finish_function): Initialize `cond' and `thenclause' to NULL_TREE.
        (hack_incomplete_structures): Add parentheses around assignment
@@ -7755,7 +8132,7 @@ Mon Feb  2 00:57:38 1998  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
 
        * error.c: Include <stdlib.h>.
        (dump_expr): Change the type of `i' to size_t.  Remove unused
-       label `error'. 
+       label `error'.
 
        * except.c (init_exception_processing): Remove unused variable `d'.
        (expand_throw): Likewise for `label'.
@@ -7781,7 +8158,7 @@ Mon Feb  2 00:57:38 1998  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
        `look_for_semicolon' and `look_for_lbrac'.
        (cons_up_default_function): Initialize `args' to NULL_TREE.
        (readescape): Initialize `firstdig' to 0.
-       (real_yylex): Add parentheses around assignment used as truth value. 
+       (real_yylex): Add parentheses around assignment used as truth value.
 
        * method.c: Include <strings.h> if we don't have <string.h>.
        Protect declaration of `index' with autoconf macro.
@@ -7802,8 +8179,8 @@ Mon Feb  2 00:57:38 1998  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
        * repo.c (init_repo): Add parentheses around assignment used as
        truth value.
        (finish_repo): Remove unused varable `p'.
-       
-       * search.c (get_binfo): Initiize `type' to NULL_TREE.
+
+       * search.c (get_binfo): Initialize `type' to NULL_TREE.
        (get_base_distance): Likewise.
        (lookup_field): Initialize `rval_binfo_h', `type', `basetype_path'
        and `new_v' to NULL_TREE.
@@ -7823,7 +8200,7 @@ Mon Feb  2 00:57:38 1998  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
        (hash_tree_cons): Initialize hashcode to 0.
        (can_free): Likewise for `size'.
        (cp_tree_equal): Add explicit braces to avoid ambiguous `else'.
-       
+
        * typeck.c (convert_sequence): Hide prototype.
        (common_type): Add explicit braces to avoid ambiguous `else'.
        (comp_target_types): Likewise.
@@ -7839,7 +8216,7 @@ Mon Feb  2 00:57:38 1998  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
 
        * xref.c (GNU_xref_decl): Initialize `cls' to 0.
 
-Sun Feb  1 12:45:34 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
+Sun Feb  1 12:45:34 1998  J"orn Rennecke  <amylaar@cygnus.co.uk>
 
        * decl.c (init_decl_processing): Use set_sizetype.
        * decl2.c (sizetype): Don't declare.
@@ -7862,13 +8239,13 @@ Thu Jan 29 10:39:30 1998  Mark Mitchell  <mmitchell@usa.net>
 Wed Jan 28 23:14:44 1998  Jason Merrill  <jason@yorick.cygnus.com>
 
        * class.c (instantiate_type): Don't just return a known type if
-       it's wrong.
+       it's wrong.
 
 Wed Jan 28 11:04:07 1998  Mark Mitchell  <mmitchell@usa.net>
 
        * class.c (instantiate_type): Remove handling of FUNCTION_DECL
        since that code could never be reached.
-       
+
        * error.c (dump_decl): Avoid aborting in the midst of printing an
        error message about an illegal template declaration.
 
@@ -7877,7 +8254,7 @@ Wed Jan 28 11:04:07 1998  Mark Mitchell  <mmitchell@usa.net>
 
        * pt.c (convert_nontype_argument):  Allow REAL_TYPE and COMPLEX_TYPE
        template arguments as a g++ extension.
-       
+
        * cp-tree.def (ALIGNOF_EXPR): New tree code.
        * decl2.c (grok_alignof): If processing_template_decl, just store
        the expression.
@@ -7889,7 +8266,7 @@ Wed Jan 28 11:04:07 1998  Mark Mitchell  <mmitchell@usa.net>
        * pt.c (uses_template_parms): Correctly determine whether or not a
        SIZEOF_EXPR/ALIGNOF_EXPR uses template parameters so that constant
        folding can be done.
-       
+
        * cp-tree.h (grok_enum_decls): Remove type parameter.
        * decl.c (grok_enum_decls): Likewise.
        * decl2.c (grok_x_components): Call grok_enum_decls
@@ -7901,7 +8278,7 @@ Wed Jan 28 11:04:07 1998  Mark Mitchell  <mmitchell@usa.net>
        * decl.c (start_function): Make member functions of local classes
        in extern inline functions have comdat linkage here...
        (grokdeclarator): Rather than here.
-       
+
 Wed Jan 28 10:55:47 1998  Jason Merrill  <jason@yorick.cygnus.com>
 
        * pt.c (convert_nontype_argument): Use decl_constant_value.
@@ -7929,18 +8306,18 @@ Tue Jan 27 16:42:21 1998  Mark Mitchell  <mmitchell@usa.net>
        (maybe_push_to_top_level): Save them.
        (pop_from_top_level): Restore them.
        (grokfndecl): Use new return value from
-       check_explicit_specialization. 
+       check_explicit_specialization.
        (start_decl): Don't check flag_guiding_decls before pushing
-       decls. 
+       decls.
        (cp_finish_decl): Remove previous (bogus) change.
        (grok_declarator): Use decl_function_context rather than
-       is_local_class. 
+       is_local_class.
        * decl2.c (finish_file): Pass extra argument to get_bindings.
-       (build_expr_from_tree): Let build_x_component_ref check 
+       (build_expr_from_tree): Let build_x_component_ref check
        validity of arguments rather than doing it here.
        * lex.c (cons_up_default_function): Remove code fooling with
        processing_specialization, processing_explicit_instantiation
-       flags, as that is now done in {maybe_push_top,pop_from}_top_level. 
+       flags, as that is now done in {maybe_push_top,pop_from}_top_level.
        * method.c (build_overload_identifier): Mangle local classes in
        template functions correctly.
        * parse.y (finish_member_template_decl): Move to pt.c.
@@ -7949,9 +8326,9 @@ Tue Jan 27 16:42:21 1998  Mark Mitchell  <mmitchell@usa.net>
        (determine_specialization): Change interface.  Properly look for
        most specialized versions of template candidates.
        (check_explicit_specialization): Fully process explicit
-       instantiations. 
+       instantiations.
        (push_template_decl): Avoid looking at CLASSTYPE fields in
-       FUNCTION_DECLS. 
+       FUNCTION_DECLS.
        (determine_overloaded_function): Remove.
        (convert_nontype_argument): Change name from
        convert_nontype_parameter.  Use determine_overloaded_function
@@ -7962,7 +8339,7 @@ Tue Jan 27 16:42:21 1998  Mark Mitchell  <mmitchell@usa.net>
        (lookup_template_class): Likewise.
        (tsubst): Likewise.
        (more_specialized): Take explict template arguments as a
-       parameter. 
+       parameter.
        (most_specialized): Likewise.
        (get_bindings): Likewise.  Check that return types match before
        proclaiming a function a match.
@@ -7975,7 +8352,7 @@ Tue Jan 27 16:42:21 1998  Mark Mitchell  <mmitchell@usa.net>
 
 Tue Jan 27 01:44:02 1998  Jason Merrill  <jason@yorick.cygnus.com>
 
-       * expr.c (cplus_expand_expr, AGGR_INIT_EXPR): Don't check that 
+       * expr.c (cplus_expand_expr, AGGR_INIT_EXPR): Don't check that
        return_target and call_target are equivalent.
 
        * pt.c (type_unification_real): Just accept function parms that
@@ -7993,7 +8370,7 @@ Sat Jan 24 12:13:54 1998  Jason Merrill  <jason@yorick.cygnus.com>
        * error.c (dump_decl): Fix type default template args.
        (dump_type): Hand TEMPLATE_DECL off to dump_decl.
 
-Fri Jan 23 18:34:37 1998  Mumit Khan <khan@xraylith.wisc.edu>
+Fri Jan 23 18:34:37 1998  Mumit Khan  <khan@xraylith.wisc.edu>
 
        * lex.c (DIR_SEPARATOR): Define to be '/' if not already defined.
        (file_name_nondirectory): Use.
@@ -8001,10 +8378,10 @@ Fri Jan 23 18:34:37 1998  Mumit Khan <khan@xraylith.wisc.edu>
 Wed Jan 21 10:29:57 1998  Kriang Lerdsuwanakij  <lerdsuwa@scf.usc.edu>
 
        * pt.c (coerce_template_parms): Don't access elements of ARGLIST
-       that are not really present.  Substitute default arguments in 
-       template template arguments.  Correctly convert TEMPLATE_DECL to 
+       that are not really present.  Substitute default arguments in
+       template template arguments.  Correctly convert TEMPLATE_DECL to
        TEMPLATE_TEMPLATE_PARM.
-       (comp_template_args): TEMPLATE_DECL and TEMPLATE_TEMPLATE_PARM 
+       (comp_template_args): TEMPLATE_DECL and TEMPLATE_TEMPLATE_PARM
        are no longer treated specially here.
        * parse.y (template_template_parm): Fix copy error.
        * decl.c (grokdeclarator): Warn about missing `typename' for nested
@@ -8025,15 +8402,15 @@ Wed Jan 21 10:29:57 1998  Kriang Lerdsuwanakij  <lerdsuwa@scf.usc.edu>
        (grokdeclarator): Handle TEMPLATE_DECL.
        * decl2.c (constructor_name_full): Handle TEMPLATE_TEMPLATE_PARM.
        * error.c (dump_type): Add TEMPLATE_DECL and TEMPLATE_TEMPLATE_PARM.
-       (dump_type_prefix, dump_type_suffix) Handle TEMPLATE_TEMPLATE_PARM.
+       (dump_type_prefix, dump_type_suffix): Handle TEMPLATE_TEMPLATE_PARM.
        (dump_decl): Handle unnamed template type parameters.
        Handle template template parameters.
        (dump_function_name): Handle template template parameters.
-       * init.c (is_aggr_typedef, is_aggr_type, get_aggr_from_typedef): 
+       * init.c (is_aggr_typedef, is_aggr_type, get_aggr_from_typedef):
        Handle TEMPLATE_TEMPLATE_PARM.
        * method.c (build_template_template_parm_names): New function.
        (build_template_parm_names): Handle TEMPLATE_DECL.
-       (build_overload_nested_name, build_overload_name): 
+       (build_overload_nested_name, build_overload_name):
        Handle TEMPLATE_TEMPLATE_PARM.
        * parse.y (maybe_identifier): New nonterminal.
        (template_type_parm): Use it.
@@ -8047,11 +8424,11 @@ Wed Jan 21 10:29:57 1998  Kriang Lerdsuwanakij  <lerdsuwa@scf.usc.edu>
        (process_template_parm): Handle template template parameters.
        (coerce_template_parms, comp_template_args): Likewise.
        (mangle_class_name_for_template, lookup_template_class): Likewise.
-       (uses_template_parms): Handle TEMPLATE_DECL and 
+       (uses_template_parms): Handle TEMPLATE_DECL and
        TEMPLATE_TEMPLATE_PARM.
        (current_template_args): Handle TEMPLATE_DECL.
        (tsubst, tsubst_copy, unify): Handle TEMPLATE_TEMPLATE_PARM.
-       * search.c (dfs_walk, dfs_record_inheritance): 
+       * search.c (dfs_walk, dfs_record_inheritance):
        Handle TEMPLATE_TEMPLATE_PARM.
        * tree.c (copy_template_template_parm): New function.
        (mapcar): Handle TEMPLATE_TEMPLATE_PARM.
@@ -8067,16 +8444,16 @@ Mon Jan 19 22:40:03 1998  Mark Mitchell  <mmitchell@usa.net>
 
        * decl2.c (build_expr_from_tree): Issue an error message if the
        object in a COMPONENT_REF is a TEMPLATE_DECL.
-       
+
        * typeck.c (incomplete_type_error): Handle TEMPLATE_TYPE_PARMs.
-       
+
        * class.c (is_local_class): New function.
        * cp-tree.h (is_local_class): Declare it.
        (last_tree): Likewise.
        (begin_tree): Likewise.
        (end_tree): Likewise.
        (lookup_template_class): Change prototype.
-       * decl.c (cp_finish_decl): Check for NULL where necesary.
+       * decl.c (cp_finish_decl): Check for NULL where necessary.
        Consider FUNCTION_DECLS to declare objects with top-level binding,
        when calling make_decl_rtl.
        (grokdeclarator): Give members of local classes internal linkage.
@@ -8096,19 +8473,19 @@ Mon Jan 19 22:40:03 1998  Mark Mitchell  <mmitchell@usa.net>
        * pt.c (saved_trees): New variable.
        (mangle_class_name_for_template): Change prototype.  Use
        additional function context to name local classes in templates
-       correctly. 
+       correctly.
        (classtype_mangled_name): Pass the context.
        (push_template_decl): Handle local classes and templates, and
        member functions for such classes.
        (convert_nontype_parameter): Fix handling of pointer-to-member
-       constants. 
+       constants.
        (lookup_template_class): Handle local classes in templates.
        (tsubst): Likewise.  Don't assume that template instantiations
-       have external linkage; pay attention to the template declaration. 
+       have external linkage; pay attention to the template declaration.
        (mark_decl_instantiated): Likewise.
        (begin_tree): New function.
        (end_tree): Likewise.
-       
+
        * decl.c (xref_basetypes): Don't call complete_type for basetypes
        that involve template parameters; that can lead to infinite
        recursion unnecessarily.
@@ -8120,11 +8497,11 @@ Mon Jan 19 22:40:03 1998  Mark Mitchell  <mmitchell@usa.net>
        (build_template_decl): New function.
        (push_template_delc): Handle out-of-class specializations of
        member templates.
-       
-        * pt.c (check_explicit_specialization): Set up the template
-        information before registering the specialization.
-        (coerce_template_parms): Fix thinko.
-        (tsubst): Handle specializations of member templates correctly.
+
+       * pt.c (check_explicit_specialization): Set up the template
+       information before registering the specialization.
+       (coerce_template_parms): Fix thinko.
+       (tsubst): Handle specializations of member templates correctly.
 
        * class.c (finish_struct_methods): Remove calls to
        check_explicit_specialization from here.
@@ -8134,7 +8511,7 @@ Mon Jan 19 22:40:03 1998  Mark Mitchell  <mmitchell@usa.net>
        (begin_explicit_instantiation): Likewise.
        (end_explicit_instantiation): Likewise.
        (determine_specialization): Renamed from
-       determine_explicit_specialization. 
+       determine_explicit_specialization.
        (comp_template_parms): New function.
        (processing_explicit_instantiation): New variable.
        * cvt.c (perform_qualification_conversions): New function.
@@ -8144,7 +8521,7 @@ Mon Jan 19 22:40:03 1998  Mark Mitchell  <mmitchell@usa.net>
        instantiation/specialization mismatches.
        (start_decl): Don't call pushdecl for template specializations,
        since they don't affect overloading.
-       (start_function): Likewise
+       (start_function): Likewise.
        (grokfndecl): Call check_explicit_specialization a little later.
        Don't call duplicate_decls for memberm template specializations.
        (grokdeclarator): Don't update template_count for classes that are
@@ -8155,7 +8532,7 @@ Mon Jan 19 22:40:03 1998  Mark Mitchell  <mmitchell@usa.net>
        * parse.y (finish_member_template_decl): New function.
        (component_decl_1): Use it.
        (fn.def2): Likewise.
-       (template_arg_list_opt): New nonterminal.       
+       (template_arg_list_opt): New nonterminal.
        (template_type): Use it.
        (self_template_type): Likewise.
        (template_id): Likewise.
@@ -8179,12 +8556,12 @@ Mon Jan 19 22:40:03 1998  Mark Mitchell  <mmitchell@usa.net>
        (comp_template_parms): New function.
        (coerce_template_parms): Call convert_nontype_parameter.
        (tsubst): Refine handling of member templates.  Use
-       register_specialization. 
+       register_specialization.
        (instantiate_template): Use retrieve_specialization.
        (do_decl_instantiation): Likewise.
        (instantiate_decl): Likewise.
        (type_unification): Improve handling of explict template
-       arguments. 
+       arguments.
        * tree.c (mapcar): Return error_mark_node, rather than aborting,
        on VAR_DECLS, FUNCTION_DECLS, and CONST_DECLS.
        * typeck.c (build_unary_op): Call determine_specialization, rather
@@ -8196,7 +8573,7 @@ Mon Jan 19 13:18:51 1998  Jason Merrill  <jason@yorick.cygnus.com>
 
 Fri Jan 16 11:40:50 1998  Bruno Haible  <bruno@linuix.mathematik.uni-karlsruhe.de>
 
-        * error.c (dump_decl): For enum tags, output the tag, not its value.
+       * error.c (dump_decl): For enum tags, output the tag, not its value.
 
 1998-01-13  Brendan Kehoe  <brendan@cygnus.com>
 
@@ -8226,11 +8603,11 @@ Wed Jan  7 23:47:13 1998  Jason Merrill  <jason@yorick.cygnus.com>
        (expand_exception_blocks): Likewise.
        (alloc_eh_object): New fn.
        (expand_throw): Use it.  Protect exception init with terminate.
-       * typeck.c (build_modify_expr): Remove code that ignores trivial 
+       * typeck.c (build_modify_expr): Remove code that ignores trivial
        methods.
 
 Mon Dec 22 11:36:27 1997  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
+
        * call.c (add_builtin_candidate): Add default case in enumeration
        switch.
        (build_new_op): Likewise.
@@ -8261,7 +8638,7 @@ Thu Dec 18 14:51:50 1997  Mark Mitchell  <mmitchell@usa.net>
 
 Thu Dec 18 14:43:19 1997  Jason Merrill  <jason@yorick.cygnus.com>
 
-       * typeck.c (unary_complex_lvalue): Ignore op0 when taking the 
+       * typeck.c (unary_complex_lvalue): Ignore op0 when taking the
        address of an OFFSET_REF.
 
        * cp-tree.def: Add AGGR_INIT_EXPR.
@@ -8274,10 +8651,10 @@ Thu Dec 18 14:43:19 1997  Jason Merrill  <jason@yorick.cygnus.com>
 Wed Dec 17 17:08:52 1997  Benjamin Kosnik  <bkoz@rhino.cygnus.com>
 
        * pt.c (instantiate_class_template): Don't do injection when
-       processing_template_decl is true, as pollutes current_binding_level 
-        for base classes.
+       processing_template_decl is true, as pollutes current_binding_level
+       for base classes.
 
-Wed Dec 17 21:17:39 1997  Peter Schmid <schmid@ltoi.iap.physik.tu-darmstadt.de>
+Wed Dec 17 21:17:39 1997  Peter Schmid  <schmid@ltoi.iap.physik.tu-darmstadt.de>
 
        * pt.c (maybe_fold_nontype_arg): Add prototype.
 
@@ -8297,21 +8674,21 @@ Sun Dec 14 22:34:20 1997  Jason Merrill  <jason@yorick.cygnus.com>
 
        * cvt.c (cp_convert_to_pointer): Fix base conversion of pm's.
 
-       * pt.c (type_unification_real): Change __null to type void* with 
+       * pt.c (type_unification_real): Change __null to type void* with
        a warning.
 
 Sun Dec 14 20:38:35 1997  Mark Mitchell  <mmitchell@usa.net>
 
        * call.c (implicit_conversion): Don't call
        build_user_type_conversion_1 with a NULL expr, since it will
-       crash. 
+       crash.
 
        * pt.c (unify): Don't try to unify array bounds if either array is
        unbounded.
 
 Fri Dec 12 16:09:14 1997  Jason Merrill  <jason@yorick.cygnus.com>
 
-       * errfn.c (cp_pedwarn, cp_pedwarn_at, cp_error_at, cp_warning_at): 
+       * errfn.c (cp_pedwarn, cp_pedwarn_at, cp_error_at, cp_warning_at):
        Replace extern decls with casts.
 
        * decl.c (expand_start_early_try_stmts): Don't mess with a sequence.
@@ -8324,7 +8701,7 @@ Thu Dec 11 22:18:37 1997  Jason Merrill  <jason@yorick.cygnus.com>
        * decl2.c (comdat_linkage): Also set DECL_COMDAT.
        (finish_file): Check DECL_COMDAT instead of weak|one_only.
        (import_export_vtable): Use make_decl_one_only instead of
-       comdat_linkage for win32 tweak.
+       comdat_linkage for win32 tweak.
        (import_export_decl): Likewise.
        * pt.c (mark_decl_instantiated): Likewise.
 
@@ -8338,16 +8715,16 @@ Thu Dec 11 21:12:09 1997  Jason Merrill  <jason@yorick.cygnus.com>
        * decl.c: Likewise.
 
 Thu Dec 11 20:43:33 1997  Teemu Torma  <tot@trema.com>
-       
+
        * decl.c (ptr_ptr_type_node): Define.
        (init_decl_processing): Initialize it.
        * cp-tree.h: Declare it.
        * exception.cc (__cp_exception_info): Use __get_eh_info.
-       (__cp_push_exception): Ditto.
-       (__cp_pop_exception): Ditto.
+       (__cp_push_exception): Likewise.
+       (__cp_pop_exception): Likewise.
 
        From Scott Snyder <snyder@d0sgif.fnal.gov>:
-        * except.c (expand_builtin_throw): Use get_saved_pc_ref instead of
+       * except.c (expand_builtin_throw): Use get_saved_pc_ref instead of
        saved_pc.
        (init_exception_processing): Removed saved_pc initialization.
 
@@ -8360,8 +8737,8 @@ Mon Dec  8 23:17:13 1997  Jason Merrill  <jason@yorick.cygnus.com>
        * init.c (expand_vec_init): Don't fold a list of parameters.
 
        * decl.c (copy_args_p): Handle copy elision for types with virtual
-       bases.
-       * call.c (build_over_call): Likewise.
+       bases.
+       * call.c (build_over_call): Likewise.
 
 Sun Dec  7 22:38:12 1997  Mark Mitchell  <mmitchell@usa.net>
 
@@ -8416,8 +8793,8 @@ Fri Dec  5 01:17:34 1997  Jason Merrill  <jason@yorick.cygnus.com>
 Wed Dec  3 20:02:39 1997  Jason Merrill  <jason@yorick.cygnus.com>
 
        * init.c (build_new): Use a TARGET_EXPR instead of SAVE_EXPR for
-       alloc_expr.
-       * call.c (build_op_delete_call): Adjust.
+       alloc_expr.
+       * call.c (build_op_delete_call): Adjust.
 
        * except.c (expand_end_catch_block): Lose rethrow region.
        (expand_start_catch_block): Likewise.
@@ -8426,7 +8803,7 @@ Wed Dec  3 20:02:39 1997  Jason Merrill  <jason@yorick.cygnus.com>
 Wed Dec  3 13:24:04 1997  Benjamin Kosnik  <bkoz@rhino.cygnus.com>
 
        * pt.c (tsubst): Remove tree_cons call (places redundant info into
-       DECL_TEMPLATE_INSTANTIATION).   
+       DECL_TEMPLATE_INSTANTIATION).
 
 Wed Dec  3 11:44:52 1997  Jason Merrill  <jason@yorick.cygnus.com>
 
@@ -8468,7 +8845,7 @@ Tue Dec  2 01:37:19 1997  Jason Merrill  <jason@yorick.cygnus.com>
 
 Fri Nov 28 01:58:14 1997  Jason Merrill  <jason@yorick.cygnus.com>
 
-       * pt.c (check_explicit_specialization): Complain about using a 
+       * pt.c (check_explicit_specialization): Complain about using a
        template-id for a non-specialization.
 
 Fri Nov 28 12:35:19 1997  Scott Christley  <scottc@net-community.com>
@@ -8478,7 +8855,7 @@ Fri Nov 28 12:35:19 1997  Scott Christley  <scottc@net-community.com>
 
 Fri Nov 28 01:56:35 1997  Bruno Haible  <bruno@linuix.mathematik.uni-karlsruhe.de>
 
-        * error.c (dump_decl): Handle TEMPLATE_ID_EXPR.
+       * error.c (dump_decl): Handle TEMPLATE_ID_EXPR.
 
 Thu Nov 27 00:59:46 1997  Jason Merrill  <jason@yorick.cygnus.com>
 
@@ -8486,9 +8863,9 @@ Thu Nov 27 00:59:46 1997  Jason Merrill  <jason@yorick.cygnus.com>
        handing off to convert_to_reference.
 
        * except.c: Lose Unexpected, SetTerminate, SetUnexpected,
-       TerminateFunctionCall.
+       TerminateFunctionCall.
        (init_exception_processing): Likewise.  Terminate et al are now
-       the fns, not ADDR_EXPRs.
+       the fns, not ADDR_EXPRs.
        (various): Lose redundant assemble_external calls.
        (do_unwind): s/BuiltinReturnAddress/builtin_return_address_fndecl/.
 
@@ -8499,7 +8876,7 @@ Thu Nov 27 00:59:46 1997  Jason Merrill  <jason@yorick.cygnus.com>
        * decl2.c (import_export_decl): Just set DECL_COMDAT on VAR_DECLs.
 
        * class.c: Remove static pending_hard_virtuals.
-       (add_virtual_function): Take pointers to pending_virtuals
+       (add_virtual_function): Take pointers to pending_virtuals
        and pending_hard_virtuals.
        (finish_struct_1): Pass them.  Declare pending_hard_virtuals.
 
@@ -8508,7 +8885,7 @@ Wed Nov 26 20:28:49 1997  Jason Merrill  <jason@yorick.cygnus.com>
        * decl2.c (import_export_vtable): If we support one_only but not
        weak symbols, mark instantiated template vtables one_only.
        (import_export_decl): Likewise for tinfo functions.
-       (finish_vtable_vardecl): Also write out vtables from explicitly 
+       (finish_vtable_vardecl): Also write out vtables from explicitly
        instantiated template classes.
        * pt.c (mark_class_instantiated): Revert last change.
 
@@ -8543,7 +8920,7 @@ Tue Nov 25 11:28:21 1997  Jason Merrill  <jason@yorick.cygnus.com>
        * init.c (build_new): Copy size to the saveable obstack.
 
        * init.c (build_new): Stick a CLEANUP_POINT_EXPR inside the
-       TRY_CATCH_EXPR for now.
+       TRY_CATCH_EXPR for now.
 
 Mon Nov 24 12:15:55 1997  Jason Merrill  <jason@yorick.cygnus.com>
 
@@ -8564,14 +8941,14 @@ Fri Nov 21 12:22:07 1997  Jason Merrill  <jason@yorick.cygnus.com>
        (expand_end_eh_spec): Likewise.  Call __check_eh_spec instead of
        doing everything inline.
        (init_exception_processing): throw_type_match now takes
-       const void pointers.
+       const void pointers.
        * exception.cc (__check_eh_spec): New fn.
        * inc/exception: Neither terminate nor unexpected return.
        * decl.c: Make const_ptr_type_node public.
        * tinfo2.cc (__throw_type_match_rtti): Take the typeinfos constly.
 
        * except.c (expand_start_catch_block): We only need the rethrow
-       region for non-sjlj exceptions.
+       region for non-sjlj exceptions.
        (expand_end_catch_block): Likewise.  Use outer_context_label_stack.
 
 Thu Nov 20 14:40:17 1997  Jason Merrill  <jason@yorick.cygnus.com>
@@ -8586,7 +8963,7 @@ Thu Nov 20 14:40:17 1997  Jason Merrill  <jason@yorick.cygnus.com>
        * decl.c (init_decl_processing): Update exception specs on new and
        delete.
 
-       * method.c (build_decl_overload_real): Don't mess with global 
+       * method.c (build_decl_overload_real): Don't mess with global
        placement delete.
 
        * init.c (build_new): Check for null throw spec, not nothrow_t.
@@ -8601,13 +8978,13 @@ Thu Nov 20 14:40:17 1997  Jason Merrill  <jason@yorick.cygnus.com>
 
 Wed Nov 19 18:24:14 1997  Jason Merrill  <jason@yorick.cygnus.com>
 
-       * decl.c (start_decl): Don't just complain about a mismatched 
+       * decl.c (start_decl): Don't just complain about a mismatched
        scope, fix it.
 
        * decl.c (make_implicit_typename): Handle case where t is not
-       actually from context.
+       actually from context.
        * tree.c (get_type_decl): Lose identifier case.
-       * spew.c (yylex): Lose useless call to identifer_typedecl_value.
+       * spew.c (yylex): Lose useless call to identifier_typedecl_value.
        * parse.y (nonnested_type): Just use lookup_name.
        (complex_type_name): Just use IDENTIFIER_GLOBAL_VALUE.
 
@@ -8622,7 +8999,7 @@ Wed Nov 19 10:39:27 1997  Jason Merrill  <jason@yorick.cygnus.com>
        * decl.c (make_implicit_typename): New fn.
        (lookup_name_real): Use it.  Use current_class_type as the context.
 
-Mon Nov 17 23:42:03 1997  Bruno Haible <haible@ilog.fr>
+Mon Nov 17 23:42:03 1997  Bruno Haible  <haible@ilog.fr>
 
        * pt.c (do_poplevel): Don't prohibit jumps into this contour.
 
@@ -8657,7 +9034,7 @@ Thu Nov 13 01:52:36 1997  Jason Merrill  <jason@yorick.cygnus.com>
 Wed Nov 12 11:04:33 1997  Jason Merrill  <jason@yorick.cygnus.com>
 
        * pt.c (do_type_instantiation): Fix typo.
-       (mark_class_instantiated): If we support one_only but not weak 
+       (mark_class_instantiated): If we support one_only but not weak
        symbols, don't mark this as known.
 
        * init.c (build_new): Handle vec delete in EH cleanup.
@@ -8665,7 +9042,7 @@ Wed Nov 12 11:04:33 1997  Jason Merrill  <jason@yorick.cygnus.com>
 Wed Nov 12 08:11:55 1997  Benjamin Kosnik  <bkoz@rhino.cygnus.com>
 
        * call.c (build_method_call): Call complete_type before checking
-       for destructor.
+       for destructor.
 
 Sun Nov  9 01:29:55 1997  Jim Wilson  (wilson@cygnus.com)
 
@@ -8698,32 +9075,32 @@ Tue Nov 11 02:53:44 1997  Jason Merrill  <jason@lasher.cygnus.com>
 Mon Nov 10 20:25:31 1997  Jason Merrill  <jason@yorick.cygnus.com>
 
        * call.c (build_new_method_call): Handle getting a
-       TEMPLATE_ID_EXPR around a TEMPLATE_DECL.  Don't look for a field
-       if we got template parms.
+       TEMPLATE_ID_EXPR around a TEMPLATE_DECL.  Don't look for a field
+       if we got template parms.
        * typeck.c (build_x_function_call): Remember the TEMPLATE_ID_EXPR,
-       not just the args.
+       not just the args.
        * decl2.c (build_expr_from_tree): Tweak last change.
        * pt.c (tsubst_copy): Use get_first_fn instead of TREE_VALUE.
        (maybe_fold_nontype_arg): Split out from tsubst_copy.
        * tree.c (get_first_fn): Just return a TEMPLATE_ID_EXPR.
 
-Mon Nov 10 20:08:38 1997  Kriang Lerdsuwanakij <lerdsuwa@scf-fs.usc.edu>
+Mon Nov 10 20:08:38 1997  Kriang Lerdsuwanakij  <lerdsuwa@scf-fs.usc.edu>
 
-       * pt.c (tsubst_copy): Handle explicit template arguments in 
+       * pt.c (tsubst_copy): Handle explicit template arguments in
        function calls.
        * typeck.c (build_x_function_call): Likewise.
-       * decl2.c (build_expr_from_tree): Lookup function name if it 
+       * decl2.c (build_expr_from_tree): Lookup function name if it
        hasn't been done.
 
-       * pt.c (tsubst): Instantiate template functions properly when 
-       template parameter does not appear in function arguments and return 
+       * pt.c (tsubst): Instantiate template functions properly when
+       template parameter does not appear in function arguments and return
        type.
        (comp_template_args): Handle member templates required by tsubst.
 
 Mon Nov 10 20:08:38 1997  Jason Merrill  <jason@yorick.cygnus.com>
 
        * decl.c (grokdeclarator): Tweak conditions for pedwarn in
-       previous change.
+       previous change.
 
 Mon Nov 10 20:08:29 1997  Bruno Haible  <bruno@linuix.mathematik.uni-karlsruhe.de>
 
@@ -8744,10 +9121,10 @@ Mon Nov 10 03:04:20 1997  Jason Merrill  <jason@yorick.cygnus.com>
        (expand_end_catch_block): Likewise.  End the region for the eh_cleanup.
        * exception.cc (__cp_pop_exception): Now takes two parms.  Handle
        popping off the middle of the stack.
-       * tree.c (lvalue_p, real_lvalue_p): Handle TRY_CATCH_EXPR, 
+       * tree.c (lvalue_p, real_lvalue_p): Handle TRY_CATCH_EXPR,
        WITH_CLEANUP_EXPR, and UNSAVE_EXPR.
        (build_cplus_new): Only wrap CALL_EXPRs.
-       * init.c (expand_default_init): Handle a TRY_CATCH_EXPR around 
+       * init.c (expand_default_init): Handle a TRY_CATCH_EXPR around
        the constructor call.
 
 Sun Nov  9 18:00:26 1997  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
@@ -8816,7 +9193,7 @@ Fri Oct 31 01:47:57 1997  Jason Merrill  <jason@yorick.cygnus.com>
        (__cp_exception_info, __uncatch_exception): New fns.
        (__cp_push_exception, __cp_pop_exception): New fns.
        * except.c: Lose saved_throw_{type,value,cleanup,in_catch}.
-       Lose empty_fndecl.
+       Lose empty_fndecl.
        (init_exception_processing): Likewise.  __eh_pc is now external.
        (push_eh_info): New fn.
        (get_eh_{info,value,type,caught}): New fns.
@@ -8844,21 +9221,21 @@ Thu Oct 23 02:01:30 1997  Jason Merrill  <jason@yorick.cygnus.com>
 
 Mon Oct 20 12:06:34 1997  Jason Merrill  <jason@yorick.cygnus.com>
 
-       * except.c (expand_exception_blocks): Call do_pending_stack_adust.
+       * except.c (expand_exception_blocks): Call do_pending_stack_adjust.
        (expand_end_catch_block): Likewise.
        (expand_end_eh_spec): Likewise.
 
 Mon Oct 20 11:44:20 1997  Mark Mitchell  <mmitchell@usa.net>
 
        * decl.c (duplicate_decls): Handle template specializations
-       correctly. 
+       correctly.
        * error.c (dump_function_name): Fix printing of specializations of
        member functions that are not member templates.
        * cp-tree.h (processing_specialization): Make global.
        * pt.c (processing_specialization): Likewise.
        * lex.c (cons_up_default_function): Save and restore
        processing_specialization to avoid confusion.
-       
+
 Mon Oct 20 10:52:22 1997  Jason Merrill  <jason@yorick.cygnus.com>
 
        * decl.c (init_decl_processing): Give null_node unknown* type.
@@ -8875,7 +9252,7 @@ Sun Oct 19 09:13:01 1997  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
 
        * Make-lang.in (g++): Include prefix.o.
 
-Thu Oct 16 15:31:09 1997  Judy Goldberg <judygold@sanwafp.com>
+Thu Oct 16 15:31:09 1997  Judy Goldberg  <judygold@sanwafp.com>
 
        * pt.c (determine_explicit_specialization): Initialize "dummy"
        to keep Purify quiet.
@@ -8901,19 +9278,19 @@ Tue Oct 14 12:01:00 1997  Mark Mitchell  <mmitchell@usa.net>
        so as to avoid incorrect manglings.
        * method.c (build_decl_overload_real): Don't mangle return types
        for constructors.
-       
+
 Tue Oct 14 11:46:14 1997  Jason Merrill  <jason@yorick.cygnus.com>
 
        * cp-tree.h (scratchalloc, build_scratch_list, make_scratch_vec,
        scratch_tree_cons): Define as macros for now.
-       * call.c, class.c, cvt.c, decl.c, decl2.c, except.c, expr.c, init.c, 
+       * call.c, class.c, cvt.c, decl.c, decl2.c, except.c, expr.c, init.c,
        lex.c, method.c, parse.y, pt.c, rtti.c, search.c, tree.c, typeck.c,
        typeck2.c: Use them and the expression_obstack variants.
 
 Mon Oct 13 17:41:26 1997  Benjamin Kosnik  <bkoz@rhino.cygnus.com>
 
        * decl.c (store_return_init): Allow classes with explicit ctors to
-       be used with the named return values extension.
+       be used with the named return values extension.
 
 Fri Oct 10 12:21:11 1997  Jason Merrill  <jason@yorick.cygnus.com>
 
@@ -8927,7 +9304,7 @@ Thu Oct  9 12:08:21 1997  Jason Merrill  <jason@yorick.cygnus.com>
        * call.c (build_new_method_call): Use simple constructor_name for
        error messages.
 
-Wed Oct  8 22:44:42 1997  Jeffrey A Law  (law@cygnus.com)
+Wed Oct  8 22:44:42 1997  Jeffrey A Law  <law@cygnus.com>
 
        * method.c (build_underscore_int): Don't use ANSI specific
        features.
@@ -8948,9 +9325,9 @@ Tue Oct  7 22:52:10 1997  Jason Merrill  <jason@yorick.cygnus.com>
 
 Tue Oct  7 22:45:31 1997  Alexandre Oliva  <oliva@dcc.unicamp.br>
 
-       * typeck.c (build_reinterpret_cast): converting a void pointer
+       * typeck.c (build_reinterpret_cast): Converting a void pointer
        to function pointer with a reinterpret_cast produces a warning
-       if -pedantic is issued
+       if -pedantic is issued.
 
 Tue Oct  7 22:43:43 1997  Bruno Haible  <bruno@linuix.mathematik.uni-karlsruhe.de>
 
@@ -8977,7 +9354,7 @@ Tue Oct  7 00:48:36 1997  Jason Merrill  <jason@yorick.cygnus.com>
        non-templates.
 
        * call.c (build_new_function_call): Fix handling of null explicit
-       template args.
+       template args.
        (build_new_method_call): Likewise.
 
 Mon Oct  6 23:44:34 1997  Mark Mitchell  <mmitchell@usa.net>
@@ -9029,7 +9406,7 @@ Tue Sep 30 00:18:26 1997  Jason Merrill  <jason@yorick.cygnus.com>
        -traditional and -ansi now do not mess with
        dollars_in_ident.
 
-Mon Sep 29 19:57:51 1997  H.J. Lu  (hjl@gnu.ai.mit.edu)
+Mon Sep 29 19:57:51 1997  H.J. Lu  <hjl@gnu.ai.mit.edu>
 
        * Makefile.in (parse.o, decl.o): Also depend on
        $(srcdir)/../except.h $(srcdir)/../output.h.
@@ -9040,37 +9417,37 @@ Mon Sep 29 19:57:51 1997  H.J. Lu  (hjl@gnu.ai.mit.edu)
 
        * call.c, cp-tree.h, decl.c, tree.c: Finish prototyping.
 
-       * expr.c (cplus_expand_expr): Make it static. 
+       * expr.c (cplus_expand_expr): Make it static.
 
        * decl2.c, init.c, typeck.c: Include "expr.h".
        (expand_expr): Use proper values when calling the function.
 
 Mon Sep 29 11:05:54 1997  Alexandre Oliva  <oliva@dcc.unicamp.br>
 
-       * lang-options.h: new -Wold-style-cast flag.
-       * cp-tree.h (warn_old_style_cast): new variable.
-       * decl2.c (warn_old_style_cast): ditto.
-       (lang_decode_option): support -Wold-style-cast.
-       (reparse_absdcl_as_casts): produce old-style-cast warning.
+       * lang-options.h: New -Wold-style-cast flag.
+       * cp-tree.h (warn_old_style_cast): New variable.
+       * decl2.c (warn_old_style_cast): Likewise.
+       (lang_decode_option): Support -Wold-style-cast.
+       (reparse_absdcl_as_casts): Produce old-style-cast warning.
 
 Mon Sep 29 09:20:53 1997  Benjamin Kosnik  <bkoz@rhino.cygnus.com>
 
        * decl.c (cp_finish_decl): Allow expand_aggr_init to set
-       TREE_USED, reset value based on already_used.
+       TREE_USED, reset value based on already_used.
 
        * init.c (expand_member_init): Revert change.
-       
+
 Mon Sep 29 08:57:53 1997  Jason Merrill  <jason@yorick.cygnus.com>
 
        * cp-tree.h, decl.c, decl2.c, pt.c:
-       Lose DECL_C_STATIC and DECL_PUBLIC.  Don't pretend statics are public.
+       Lose DECL_C_STATIC and DECL_PUBLIC.  Don't pretend statics are public.
 
        * decl2.c (lang_decode_option): Add missing ;.
 
 Sat Sep 27 16:22:48 1997  Jason Merrill  <jason@yorick.cygnus.com>
 
        * friend.c (do_friend): Disable injection for all template-derived
-       decls.
+       decls.
        * decl2.c (lang_decode_option): Handle -fguiding-decls.
        * parse.y (notype_template_declarator): New nonterminal.
        (direct_notype_declarator): Use it.
@@ -9080,112 +9457,112 @@ Sat Sep 27 16:22:48 1997  Jason Merrill  <jason@yorick.cygnus.com>
 
 Sat Sep 27 16:21:58 1997  Mark Mitchell  <mmitchell@usa.net>
 
-        * call.c (add_template_candidate): Add explicit_targs parameter.
-        (build_scoped_method_call): Use it.
-        (build_overload_call_real): Likewise.
-        (build_user_type_conversion_1): Likewise.
-        (build_new_function_call): Likewise.
-        (build_object_call): Likewise.
-        (build_new_op): Likewise.
-        (build_new_method_call): Likewise.
-        (build_new_function_call): Handle TEMPLATE_ID_EXPR.
-        (build_new_method_call): Likewise.
+       * call.c (add_template_candidate): Add explicit_targs parameter.
+       (build_scoped_method_call): Use it.
+       (build_overload_call_real): Likewise.
+       (build_user_type_conversion_1): Likewise.
+       (build_new_function_call): Likewise.
+       (build_object_call): Likewise.
+       (build_new_op): Likewise.
+       (build_new_method_call): Likewise.
+       (build_new_function_call): Handle TEMPLATE_ID_EXPR.
+       (build_new_method_call): Likewise.
 
-        * class.c (finish_struct_methods): Add specialization pass to
-        determine which methods were specializing which other methods.
-        (instantiate_type): Handle TEMPLATE_ID_EXPR.
+       * class.c (finish_struct_methods): Add specialization pass to
+       determine which methods were specializing which other methods.
+       (instantiate_type): Handle TEMPLATE_ID_EXPR.
 
-        * cp-tree.def (TEMPLATE_ID_EXPR): New tree code.
+       * cp-tree.def (TEMPLATE_ID_EXPR): New tree code.
 
-        * cp-tree.h (name_mangling_version): New variable.
+       * cp-tree.h (name_mangling_version): New variable.
        (flag_guiding_decls): Likewise.
-        (build_template_decl_overload): New function.
-        (begin_specialization): Likewise.
-        (reset_specialization): Likewise.
-        (end_specialization): Likewise.
-        (determine_explicit_specialization): Likewise.
-        (check_explicit_specialization): Likewise.
-        (lookup_template_function): Likewise.
-        (fn_type_unification): Add explicit_targs parameter.
-        (type_unification): Likewise.
-
-        * decl.c (duplicate_decls): Add smarts for explicit
-        specializations.
-        (grokdeclarator): Handle TEMPLATE_ID_EXPR, and function
-        specializations.
-        (grokfndecl): Call check_explicit_specialization.
-
-        * decl2.c (lang_decode_option): Handle -fname-mangling-version.
-        (build_expr_from_tree): Handle TEMPLATE_ID_EXPR.
-        (check_classfn): Handle specializations.
-
-        * error.c (dump_function_name): Print specialization arguments.
-
-       * friend.c (do_friend): Don't call pushdecl for template 
-        instantiations. 
-
-        * init.c (build_member_call): Handle TEMPLATE_ID_EXPR.
-
-        * lang-options.h: Add -fname-mangling-version, -fguiding-decls, 
+       (build_template_decl_overload): New function.
+       (begin_specialization): Likewise.
+       (reset_specialization): Likewise.
+       (end_specialization): Likewise.
+       (determine_explicit_specialization): Likewise.
+       (check_explicit_specialization): Likewise.
+       (lookup_template_function): Likewise.
+       (fn_type_unification): Add explicit_targs parameter.
+       (type_unification): Likewise.
+
+       * decl.c (duplicate_decls): Add smarts for explicit
+       specializations.
+       (grokdeclarator): Handle TEMPLATE_ID_EXPR, and function
+       specializations.
+       (grokfndecl): Call check_explicit_specialization.
+
+       * decl2.c (lang_decode_option): Handle -fname-mangling-version.
+       (build_expr_from_tree): Handle TEMPLATE_ID_EXPR.
+       (check_classfn): Handle specializations.
+
+       * error.c (dump_function_name): Print specialization arguments.
+
+       * friend.c (do_friend): Don't call pushdecl for template
+       instantiations.
+
+       * init.c (build_member_call): Handle TEMPLATE_ID_EXPR.
+
+       * lang-options.h: Add -fname-mangling-version, -fguiding-decls,
        and -fno-guiding-decls.
 
-        * lex.c (identifier_type): Return PFUNCNAME for template function
-        names.
-
-        * method.c (build_decl_overload_real): New function.
-        (build_template_parm_names): New function.
-        (build_overload_identifier): Use it.
-        (build_underscore_int): New function.
-        (build_overload_int): Use it.  Add levels for template
-        parameters.
-        (build_overload_name): Likewise.  Also, handle TYPENAME_TYPEs.
-        (build_overload_nested_names): Handle template type parameters.
-        (build_template_decl_overload): New function.
-
-        * parse.y (YYSTYPE): New ntype member.
-        (nested_name_specifier): Use it.
-        (nested_name_specifier_1): Likewise.
-        (PFUNCNAME): New token.
-        (template_id, object_template_id): New non-terminals.
-        (template_parm_list): Note specializations.
-        (template_def): Likewise.
-        (structsp): Likewise.
-        (fn.def2): Handle member template specializations.
-        (component_decl_1): Likewise.
-        (direct_notype_declarator): Handle template-ids.
-        (component_decl_1): Likewise.
-        (direct_notype_declarator): Handle template-ids.
-        (primary): Handle TEMPLATE_ID_EXPR, and template-ids.
-
-        * pt.c (processing_specializations): New variable.
-        (template_header_count): Likewise.
-        (type_unification_real): New function.
-        (processing_explicit_specialization): Likewise.
-        (note_template_header): Likewise.
-        (is_member_template): Handle specializations.
-        (end_template_decl): Call reset_specialization.
-        (push_template_decl): Handle member template specializations.
-        (tsubst): Likewise.
-        (tsubst_copy): Handle TEMPLATE_ID_EXPR.
-        (instantiate_template): Handle specializations.
-        (instantiate_decl): Likewise.
-        (fn_type_unification): Handle explicit_targs.
-        (type_unification): Likewise.  Allow incomplete unification
-        without an error message, if allow_incomplete.
-        (get_bindings): Use new calling sequence for fn_type_unification.
-
-        * spew.c (yylex): Handle PFUNCNAME.
-
-        * tree.c (is_overloaded_fn): Handle TEMPLATE_ID_EXPR.
-        (really_overloaded_fn): Likewise.
-        (get_first_fn): Handle function templates.
-
-        * typeck.c (build_x_function_call): Use really_overloaded_fn.
-        Handle TEMPLATE_ID_EXPR.
-        (build_x_unary_op): Likewise.
-        (build_unary_op): Likewise.
-        (mark_addressable): Templates whose address is taken are marked  
-        as used. 
+       * lex.c (identifier_type): Return PFUNCNAME for template function
+       names.
+
+       * method.c (build_decl_overload_real): New function.
+       (build_template_parm_names): New function.
+       (build_overload_identifier): Use it.
+       (build_underscore_int): New function.
+       (build_overload_int): Use it.  Add levels for template
+       parameters.
+       (build_overload_name): Likewise.  Also, handle TYPENAME_TYPEs.
+       (build_overload_nested_names): Handle template type parameters.
+       (build_template_decl_overload): New function.
+
+       * parse.y (YYSTYPE): New ntype member.
+       (nested_name_specifier): Use it.
+       (nested_name_specifier_1): Likewise.
+       (PFUNCNAME): New token.
+       (template_id, object_template_id): New non-terminals.
+       (template_parm_list): Note specializations.
+       (template_def): Likewise.
+       (structsp): Likewise.
+       (fn.def2): Handle member template specializations.
+       (component_decl_1): Likewise.
+       (direct_notype_declarator): Handle template-ids.
+       (component_decl_1): Likewise.
+       (direct_notype_declarator): Handle template-ids.
+       (primary): Handle TEMPLATE_ID_EXPR, and template-ids.
+
+       * pt.c (processing_specializations): New variable.
+       (template_header_count): Likewise.
+       (type_unification_real): New function.
+       (processing_explicit_specialization): Likewise.
+       (note_template_header): Likewise.
+       (is_member_template): Handle specializations.
+       (end_template_decl): Call reset_specialization.
+       (push_template_decl): Handle member template specializations.
+       (tsubst): Likewise.
+       (tsubst_copy): Handle TEMPLATE_ID_EXPR.
+       (instantiate_template): Handle specializations.
+       (instantiate_decl): Likewise.
+       (fn_type_unification): Handle explicit_targs.
+       (type_unification): Likewise.  Allow incomplete unification
+       without an error message, if allow_incomplete.
+       (get_bindings): Use new calling sequence for fn_type_unification.
+
+       * spew.c (yylex): Handle PFUNCNAME.
+
+       * tree.c (is_overloaded_fn): Handle TEMPLATE_ID_EXPR.
+       (really_overloaded_fn): Likewise.
+       (get_first_fn): Handle function templates.
+
+       * typeck.c (build_x_function_call): Use really_overloaded_fn.
+       Handle TEMPLATE_ID_EXPR.
+       (build_x_unary_op): Likewise.
+       (build_unary_op): Likewise.
+       (mark_addressable): Templates whose address is taken are marked
+       as used.
 
 1997-09-25  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
 
@@ -9215,7 +9592,7 @@ Thu Sep 25 11:11:13 1997  Jason Merrill  <jason@yorick.cygnus.com>
        Rvalue conversions were removed in London.
        * call.c (is_subseq): Don't consider lvalue transformations.
        (build_conv): LVALUE_CONV and RVALUE_CONV get IDENTITY_RANK.
-       (joust): Reenable ?: kludge.
+       (joust): Re-enable ?: kludge.
 
 1997-09-22  Brendan Kehoe  <brendan@lisa.cygnus.com>
 
@@ -9251,12 +9628,12 @@ Wed Sep 17 10:31:25 1997  Jason Merrill  <jason@yorick.cygnus.com>
 Tue Sep 16 14:06:56 1997  Jason Merrill  <jason@yorick.cygnus.com>
 
        * call.c (build_new_op): Give better error for syntactically
-       correct, but semantically invalid, use of undeclared template.
+       correct, but semantically invalid, use of undeclared template.
 
        * call.c (compare_qual): Handle pmfs.
 
        * decl.c (store_parm_decls): last_parm_cleanup_insn is the insn
-       after the exception spec.
+       after the exception spec.
 
 Mon Sep 15 11:52:13 1997  Jason Merrill  <jason@yorick.cygnus.com>
 
@@ -9292,9 +9669,9 @@ Thu Sep 11 10:08:45 1997  Mark Mitchell  <mmitchell@usa.net>
 
        * pt.c (coerce_template_parms): Avoid looking at the
        TYPE_LANG_DECL portion of a typename type, since there won't be
-       one. 
+       one.
        (tsubst): Do constant folding as necessary to make sure that
-       arguments passed to lookup_template_class really are constants. 
+       arguments passed to lookup_template_class really are constants.
 
 Wed Sep 10 11:21:55 1997  Jason Merrill  <jason@yorick.cygnus.com>
 
@@ -9311,9 +9688,9 @@ Tue Sep  9 19:49:38 1997  Jason Merrill  <jason@yorick.cygnus.com>
 Tue Sep  9 17:57:25 1997  Mark Mitchell  <mmitchell@usa.net>
 
        * error.c (dump_decl): Avoid crashing when presented with a
-       uninitialized constant, as can occur with a template parameter.
+       uninitialized constant, as can occur with a template parameter.
        (dump_expr): Make sure that there are enough levels of
-       current_template_parms before we start diving through them.
+       current_template_parms before we start diving through them.
 
 1997-09-09  Brendan Kehoe  <brendan@lisa.cygnus.com>
 
@@ -9322,7 +9699,7 @@ Tue Sep  9 17:57:25 1997  Mark Mitchell  <mmitchell@usa.net>
 
 Tue Sep  9 09:36:39 1997  Benjamin Kosnik  <bkoz@rhino.cygnus.com>
 
-       * except.c (expand_throw): Call build_delete for all 
+       * except.c (expand_throw): Call build_delete for all
        exception types, not just objects with destructors.
 
 Mon Sep  8 02:33:20 1997  Jody Goldberg  <jodyg@idt.net>
@@ -9330,7 +9707,7 @@ Mon Sep  8 02:33:20 1997  Jody Goldberg  <jodyg@idt.net>
        * decl.c (current_local_enum): Remove static.
        * pt.c (tsubst_enum): Save and restore value of current_local_enum
        in case template is expanded in enum decl.
-       (instantiate_class_template) : Use new tsubst_enum signature.
+       (instantiate_class_template): Use new tsubst_enum signature.
        (tsubst_expr): Likewise.
 
 Mon Sep  8 01:21:43 1997  Mark Mitchell  <mmitchell@usa.net>
@@ -9342,7 +9719,7 @@ Mon Sep  8 01:21:43 1997  Mark Mitchell  <mmitchell@usa.net>
        member templates using the same parameter names can be declared.
        (end_member_template_processing): Pop the binding level.
        (push_template_decl): Mark member templates as static when
-       appropriate. 
+       appropriate.
 
        * lex.c (do_pending_inlines): Pass the function, not its template
        arguments, to begin_member_template_processing.
@@ -9350,17 +9727,17 @@ Mon Sep  8 01:21:43 1997  Mark Mitchell  <mmitchell@usa.net>
        (do_pending_defargs): Likewise.
 
        * error.c (dump_expr): Obtain the correct declaration for a
-       TEMPLATE_CONST_PARM. 
+       TEMPLATE_CONST_PARM.
 
        * call.c (add_template_conv_candidate): New function.
        (build_object_call): Handle member templates, as done in the other
        build_ functions.
-       
+
 Sat Sep  6 10:20:27 1997  Mark Mitchell  <mmitchell@usa.net>
 
        * decl.c (replace_defag): Undo previous change.
        * lex.c (do_pending_defargs): Deal with member templates.
-       
+
        * pt.c (is_member_template): Avoid crashing when passed a
        non-function argument.
 
@@ -9380,24 +9757,24 @@ Fri Sep  5 01:37:17 1997  Mark Mitchell  <mmitchell@usa.net>
        * pt.c (push_template_decl): Likewise.
        (classtype_mangled_name): Likewise.
        (lookup_template_class): Likewise.
-       
+
        * cp-tree.h (DECL_NTPARMS): Change name from DECL_NT_PARMS to
        DECL_NTPARMS to conform to usage elsewhere.
        * call.c (add_template_candidate): Likewise.
        * class.c (instantiate_type): Likewise.
        * pt.c (instantiate_template): Likewise.
        (get_bindings): Likewise.
-       
+
        * class.c (grow_method): Use DECL_FUNCTION_TEMPLATE_P instead of
        is_member_template.
 
        * pt.c (unify): Undo changes to allow multiple levels of template
-       parameters. 
+       parameters.
        (type_unification): Likewise.
        (fn_type_unification): Likewise.
        (get_class_bindings): Likewise.
        * cp-tree.h (Likewise).
-       
+
        * decl.c (replace_defarg): Check that the type of the default
        parameter does not invlove a template type before complaining
        about the initialization.
@@ -9406,13 +9783,13 @@ Fri Sep  5 01:37:17 1997  Mark Mitchell  <mmitchell@usa.net>
        member templates correctly.
 
        * pt.c (is_member_template): Deal with class specializations
-       correctly. 
+       correctly.
        (tsubst): Handle "partial instantiation" of member templates
-       correctly. 
+       correctly.
 
 Wed Sep  3 12:30:24 1997  Mark Mitchell  <mmitchell@usa.net>
 
-       * pt.c (type_unification): Change calling squence to allow for
+       * pt.c (type_unification): Change calling sequence to allow for
        multiple levels of template parameters.
        (tsubst_expr): Likewise.
        (tsubst): Likewise.
@@ -9426,7 +9803,7 @@ Wed Sep  3 12:30:24 1997  Mark Mitchell  <mmitchell@usa.net>
        * decl.c (grokdeclarator): Use it.
        * decl2.c (finish_file): Use it.
        * method.c (build_overload_identifier): Use it.
-       
+
        * call.c (add_template_candidate):  Add additional parameter for
        the function return type.  Call fn_type_unification istead of
        type_unification.
@@ -9434,12 +9811,12 @@ Wed Sep  3 12:30:24 1997  Mark Mitchell  <mmitchell@usa.net>
        (build_new_function_call): Likewise.
        (build_new_op): Likewise.
        (build_new_method_call): Likewise.
-       
+
        * class.c (grow_method): Don't give an error message indicating
-       that two member templates with the same name are ambiguous.
+       that two member templates with the same name are ambiguous.
        (finish_struct): Treat member template functions just like member
-       functions.
-       
+       functions.
+
        * cp-tree.h (check_member_template): Add declaration.
        (begin_member_template_processing): Likewise.
        (end_member_template_processing): Likewise.
@@ -9452,31 +9829,31 @@ Wed Sep  3 12:30:24 1997  Mark Mitchell  <mmitchell@usa.net>
        (get_bindings): Likewise.
 
        * decl.c (decls_match): Handle multiple levels of template
-       parameters. 
+       parameters.
        (pushdecl): Handle template type params just like other type
-       declarations. 
+       declarations.
        (push_class_level_binding): Return immediately if the
        class_binding_level is NULL.
        (grokfndecl): If check_classfn() returns a member_template, use
        the result of the template, not the template itself.
-       
+
        * decl2.c (check_member_template): New function.  Check to see
        that the entity declared to be a member template can be one.
        (check_classfn): Allow redeclaration of member template functions
        with different types; the new functions can be specializations or
        explicit instantiations.
-       
+
        * error.c (dump_decl): Handle multiple levels of template
-       parameters. 
-       (dump_function_decl): Update to handle function templates.
+       parameters.
+       (dump_function_decl): Update to handle function templates.
 
        * lex.c (do_pending_inlines): Set up template parameter context
        for member templates.
        (process_next_inline): Likewise.
 
-       * method. (build_overload_identifier): Adjust for multiple levels
+       * method.c (build_overload_identifier): Adjust for multiple levels
        of template parameters.
-       
+
        * parse.y (fn.def2): Add member templates.
        (component_decl_1): Likewise.
 
@@ -9487,7 +9864,7 @@ Wed Sep  3 12:30:24 1997  Mark Mitchell  <mmitchell@usa.net>
        (current_template_parms): Return a vector of all the template
        parms, not just the innermost level of parms.
        (push_template_decl): Deal with the possibility of member
-       templates. 
+       templates.
        (lookup_template_class): Likewise.
        (uses_template_parms): Likewise.
        (tsubst): Modify processing to TEMPLATE_TYPE_PARM and
@@ -9497,7 +9874,7 @@ Wed Sep  3 12:30:24 1997  Mark Mitchell  <mmitchell@usa.net>
        (do_decl_instantiation): Handle member templates.
 
        * search.c (lookup_fnfields_1): Handle member template conversion
-       operators. 
+       operators.
 
        * tree.c (cp_tree_equal): Check the levels, as well as the
        indices, of TEMPLATE_CONST_PARMs.
@@ -9505,12 +9882,12 @@ Wed Sep  3 12:30:24 1997  Mark Mitchell  <mmitchell@usa.net>
        * typeck.c (comptypes): Check the levels, as well as the indices,
        fo TEMPLATE_TYPE_PARMs.
        (build_x_function_call): Treat member templates like member
-       functions. 
-       
+       functions.
+
 Wed Sep  3 11:09:25 1997  Jason Merrill  <jason@yorick.cygnus.com>
 
        * typeck.c (c_expand_return): Always convert_for_initialization
-       before checking for returning a pointer to local.
+       before checking for returning a pointer to local.
 
        * pt.c (type_unification): If strict and the function parm doesn't
        use template parms, just compare types.
@@ -9523,7 +9900,7 @@ Wed Sep  3 10:35:49 1997  Klaus Espenlaub  <kespenla@student.informatik.uni-ulm.
 Wed Sep  3 00:02:53 1997  Jason Merrill  <jason@yorick.cygnus.com>
 
        * typeck.c (convert_arguments): Don't arbitrarily choose the first
-       of a set of overloaded functions.
+       of a set of overloaded functions.
 
 Tue Sep  2 12:09:13 1997  Jason Merrill  <jason@yorick.cygnus.com>
 
@@ -9534,12 +9911,12 @@ Tue Sep  2 12:09:13 1997  Jason Merrill  <jason@yorick.cygnus.com>
        (build_overload_identifier): Pass it.
 
        * decl.c (duplicate_decls): Don't bash a previous template
-       definition with a redeclaration.
+       definition with a redeclaration.
 
        * pt.c (unify): float doesn't match double.
 
        * pt.c (do_type_instantiation): Handle getting a _TYPE or a
-       TYPE_DECL.  Handle getting non-template types.
+       TYPE_DECL.  Handle getting non-template types.
        * parse.y (explicit_instantiation): Use typespec instead of
        aggr template_type.
 
@@ -9547,7 +9924,7 @@ Tue Sep  2 10:27:08 1997  Richard Henderson  <rth@cygnus.com>
 
        * typeck.c (build_ptrmemfunc1): Clean up ptr->int cast warnings.
 
-Mon Sep  1 13:19:04 1997  Eugene Mamchits <eugin@ips.ras.ru>
+Mon Sep  1 13:19:04 1997  Eugene Mamchits  <eugin@ips.ras.ru>
 
        * call.c (add_builtin_candidate): Add missing TREE_TYPE.
        (compare_ics): Likewise.
@@ -9555,8 +9932,8 @@ Mon Sep  1 13:19:04 1997  Eugene Mamchits <eugin@ips.ras.ru>
 Mon Sep  1 13:19:04 1997  Jason Merrill  <jason@yorick.cygnus.com>
 
        * call.c (joust): Warn about choosing one conversion op over
-       another because of 'this' argument when the other return type is
-       better.
+       another because of 'this' argument when the other return type is
+       better.
        (source_type): New fn.
 
        * call.c (build_new_op): Strip leading REF_BIND from first operand
@@ -9569,7 +9946,7 @@ Thu Aug 28 09:45:23 1997  Jason Merrill  <jason@yorick.cygnus.com>
 
        * call.c (null_ptr_cst_p): Remove support for (void*)0.
 
-Wed Aug 27 02:03:34 1997  Jeffrey A Law  (law@cygnus.com)
+Wed Aug 27 02:03:34 1997  Jeffrey A Law  <law@cygnus.com>
 
        * typeck.c (expand_target_expr): Make definition match declaration.
 
@@ -9589,7 +9966,7 @@ Sat Aug 23 18:02:59 1997  Mark Mitchell  <mmitchell@usa.net>
        * error.c (type_as_string): Put const/volatile on template type
        parameters where appropriate.
 
-Sat Aug 23 17:47:22 1997  Jeffrey A Law  (law@cygnus.com)
+Sat Aug 23 17:47:22 1997  Jeffrey A Law  <law@cygnus.com>
 
        * call.c (strictly_better): Make arguments unsigned ints.
 
@@ -9597,7 +9974,7 @@ Thu Aug 21 18:48:44 1997  Jason Merrill  <jason@yorick.cygnus.com>
 
        * lex.c (real_yylex): Refer to __complex instead of complex.
 
-Thu Aug 21 22:25:46 1997  J"orn Rennecke <amylaar@cygnus.co.uk>
+Thu Aug 21 22:25:46 1997  J"orn Rennecke  <amylaar@cygnus.co.uk>
 
        * lex.c (real_yylex): Don't use getc directly.
 
@@ -9609,10 +9986,10 @@ Wed Aug 20 03:13:36 1997  H.J. Lu  (hjl@gnu.ai.mit.edu)
 
        * parse.y, pt.c: Include "except.h".
        * call.c, class.c, class.h, cp-tree.h, cvt.c, decl.c, decl2.c,
-       error.c, except.c, expr.c, friend.c, g++spec.c, init.c, input.c,
-       lex.c, lex.h, method.c, parse.y, pt.c, repo.c, rtti.c, search.c,
-       sig.c, spew.c, tree.c, typeck.c, typeck2.c, xref.c: Finish
-       prototyping.
+       error.c, except.c, expr.c, friend.c, g++spec.c, init.c, input.c,
+       lex.c, lex.h, method.c, parse.y, pt.c, repo.c, rtti.c, search.c,
+       sig.c, spew.c, tree.c, typeck.c, typeck2.c, xref.c: Finish
+       prototyping.
 
 Wed Aug 20 01:34:40 1997  Jason Merrill  <jason@yorick.cygnus.com>
 
@@ -9635,7 +10012,7 @@ Tue Aug 19 02:26:07 1997  Jason Merrill  <jason@yorick.cygnus.com>
        * repo.c (finish_repo): Don't crash on no args.
 
        * parse.y (named_complex_class_head_sans_basetype): Handle
-       explicit global scope.
+       explicit global scope.
        * decl2.c (handle_class_head): New fn.
 
        * pt.c (unify): Add CONST_DECL case.
@@ -9668,13 +10045,13 @@ Wed Aug 13 10:46:19 1997  H.J. Lu  (hjl@gnu.ai.mit.edu)
 
 Tue Aug 12 20:13:57 1997  Jason Merrill  <jason@yorick.cygnus.com>
 
-       * parse.y: Don't clear the inlines from their obstack until they've 
+       * parse.y: Don't clear the inlines from their obstack until they've
        all been processed.
 
        * decl.c (duplicate_decls): Don't complain about exception
-       specification mismatch if flag_exceptions is off.
+       specification mismatch if flag_exceptions is off.
 
-Mon Aug 11 15:01:56  1997  Marc Lehmann <pcg@goof.com>
+Mon Aug 11 15:01:56 1997  Marc Lehmann  <pcg@goof.com>
 
        * Make-lang.in (c++.distclean): Remove g++.c on make distclean.
 
@@ -9682,10 +10059,10 @@ Sun Aug 10 12:06:09 1997  Paul Eggert  <eggert@twinsun.com>
 
        * cp-tree.h: Replace STDIO_PROTO with PROTO in include files.
        * cvt.c, error.c, except.c, expr.c, friend.c, init.c, rtti.c:
-       Include <stdio.h> before include files that formerly used STDIO_PROTO. 
+       Include <stdio.h> before include files that formerly used STDIO_PROTO.
 
        * decl.c, g++spec.c, lex.c, method.c, repo.c:
-       Include "config.h" first, as per autoconf manual.
+       Include "config.h" first, as per autoconf manual.
 
 Fri Aug  8 11:47:48 1997  Jason Merrill  <jason@yorick.cygnus.com>
 
@@ -9697,13 +10074,13 @@ Fri Aug  8 11:47:48 1997  Jason Merrill  <jason@yorick.cygnus.com>
        * decl2.c (lang_decode_option): Handle -fhandle-exceptions.
        * lang-options.h: Add -fhandle-exceptions.
 
-       * class.c (build_vtable): vtables are artificial.
+       * class.c (build_vtable): Vtables are artificial.
        (prepare_fresh_vtable): Likewise.
 
 Wed Aug  6 11:02:36 1997  Jason Merrill  <jason@yorick.cygnus.com>
 
        * cvt.c (ocp_convert): After converting to the target type, set
-       LOOKUP_NO_CONVERSION.
+       LOOKUP_NO_CONVERSION.
 
        * call.c (joust): Warn about potentially confusing promotion rules
        with -Wsign-promo.
@@ -9781,18 +10158,18 @@ Fri Jul 18 17:56:08 1997  Jason Merrill  <jason@yorick.cygnus.com>
 Thu Jul 17 18:06:30 1997  Jason Merrill  <jason@yorick.cygnus.com>
 
        * method.c (build_overload_nested_name): Use static_labelno
-       instead of var_labelno.
+       instead of var_labelno.
        (build_qualified_name): New fn.
        (build_overload_name): Split out from here.
        (build_static_name): Use build_qualified_name.
-       * decl.c (cp_finish_decl): Statics in extern inline functions 
+       * decl.c (cp_finish_decl): Statics in extern inline functions
        have comdat linkage.
        (start_function): Initialize static_labelno.
 
 Thu Jul 17 11:20:17 1997  Benjamin Kosnik  <bkoz@rhino.cygnus.com>
 
-       * class.c (finish_struct_methods): add check of warn_ctor_dtor_privacy
-       before "all member functions in class [] are private"
+       * class.c (finish_struct_methods): Add check of warn_ctor_dtor_privacy
+       before "all member functions in class [] are private".
 
 Wed Jul 16 23:47:08 1997  Jason Merrill  <jason@yorick.cygnus.com>
 
@@ -9806,7 +10183,7 @@ Wed Jul 16 12:34:29 1997  Benjamin Kosnik  <bkoz@lisa.cygnus.com>
 Mon Jul 14 03:23:46 1997  Jason Merrill  <jason@yorick.cygnus.com>
 
        * typeck.c (get_member_function_from_ptrfunc): Promote index
-       before saving it.
+       before saving it.
 
 Sun Jul 13 00:11:52 1997  Jason Merrill  <jason@yorick.cygnus.com>
 
@@ -9860,7 +10237,7 @@ Wed Jul  9 13:44:12 1997  Jason Merrill  <jason@yorick.cygnus.com>
 
 Wed Jul  9 13:04:38 1997  Geoffrey Noer  <noer@cygnus.com>
 
-       * decl.c (init_decl_processing): fix Jun 30 patch -- move
+       * decl.c (init_decl_processing): Fix Jun 30 patch -- move
        ifndef for Cygwin32 to include SIGSEGV.
 
 Thu Jul  3 01:44:05 1997  Jason Merrill  <jason@yorick.cygnus.com>
@@ -9871,17 +10248,17 @@ Thu Jul  3 01:44:05 1997  Jason Merrill  <jason@yorick.cygnus.com>
        * rtti.c (build_dynamic_cast): Call complete_type on the types.
 
        * decl.c (grokfndecl): If the function we chose doesn't actually
-       match, die.
+       match, die.
 
        * decl2.c (grokclassfn): Don't specify 'const int' for the
-       artificial destructor parm.
+       artificial destructor parm.
 
-       * pt.c (type_unification): If we are called recursively, nothing 
+       * pt.c (type_unification): If we are called recursively, nothing
        decays.
 
 Mon Jun 30 17:53:21 1997  Geoffrey Noer  <noer@cygnus.com>
 
-        * decl.c (init_decl_processing): Stop trying to catch signals
+       * decl.c (init_decl_processing): Stop trying to catch signals
        other than SIGABRT since the Cygwin32 library doesn't support
        them correctly yet.  This fixes a situation in which g++ causes
        a hang on SIGSEGVs and other such signals in our Win32-hosted
@@ -9893,11 +10270,11 @@ Mon Jun 30 14:50:01 1997  Jason Merrill  <jason@yorick.cygnus.com>
 
 Fri Jun 27 15:18:49 1997  Jason Merrill  <jason@yorick.cygnus.com>
 
-       * typeck2.c (store_init_value): Always return the value if our 
+       * typeck2.c (store_init_value): Always return the value if our
        type needs constructing.
 
        * method.c (hack_identifier): Convert class statics from
-       reference, too.
+       reference, too.
 
 Thu Jun 26 11:44:46 1997  Jason Merrill  <jason@yorick.cygnus.com>
 
@@ -9915,7 +10292,7 @@ Thu Jun 19 12:28:43 1997  Brendan Kehoe  <brendan@lisa.cygnus.com>
 Tue Jun 17 18:35:57 1997  Mike Stump  <mrs@cygnus.com>
 
        * except.c (expand_builtin_throw): Add support
-       -fno-sjlj-exceptions -fPIC exception handling on the SPARC.
+       -fno-sjlj-exceptions -fPIC exception handling on the SPARC.
 
 Mon Jun 16 01:24:37 1997  Jason Merrill  <jason@yorick.cygnus.com>
 
@@ -9923,7 +10300,7 @@ Mon Jun 16 01:24:37 1997  Jason Merrill  <jason@yorick.cygnus.com>
 
        * cp-tree.h (TI_SPEC_INFO): New macro.
        (CLASSTYPE_TI_SPEC_INFO): New macro.
-       * pt.c (push_template_decl): Correctly determine # of template parms 
+       * pt.c (push_template_decl): Correctly determine # of template parms
        for partial specs.
 
        * call.c (compare_ics): Really fix 'this' conversions.
@@ -9932,20 +10309,20 @@ Mon Jun 16 01:24:37 1997  Jason Merrill  <jason@yorick.cygnus.com>
        non-template fn.
 
        * pt.c (push_template_decl): Complain about mismatch in # of
-       template parms between a class template and a member template.
+       template parms between a class template and a member template.
 
 Sun Jun 15 02:38:20 1997  Jason Merrill  <jason@yorick.cygnus.com>
 
        * method.c (synthesize_method): You can't call
-       function_cannot_inline_p after finish_function.
+       function_cannot_inline_p after finish_function.
        * decl.c (finish_function): Turn on flag_inline_functions and turn
-       off DECL_INLINE before handing a synthesized method to the
-       backend.
+       off DECL_INLINE before handing a synthesized method to the
+       backend.
 
 Thu Jun 12 17:35:28 1997  Jason Merrill  <jason@yorick.cygnus.com>
 
        * method.c (synthesize_method): Remove July 30 change to never set
-       DECL_INLINE if at_eof.
+       DECL_INLINE if at_eof.
 
 Thu Jun 12 15:25:08 1997  Mike Stump  <mrs@cygnus.com>
 
@@ -9985,22 +10362,22 @@ Tue Jun 10 00:22:09 1997  Jason Merrill  <jason@yorick.cygnus.com>
 Mon Jun  9 14:25:30 1997  Mike Stump  <mrs@cygnus.com>
 
        * Makefile.in, Make-lang.in: Protect C-ls with a comment
-       character, idea from Paul Eggert <eggert@twinsun.com>.
+       character, idea from Paul Eggert <eggert@twinsun.com>.
 
 Mon Jun  9 01:52:03 1997  Jason Merrill  <jason@yorick.cygnus.com>
 
        * typeck.c (c_expand_return): Be more persistent in looking for
-       returned temps.
+       returned temps.
 
        * cvt.c (build_up_reference): Use NOP_EXPR for switching from
-       pointer to reference.
+       pointer to reference.
 
        * class.c (build_vbase_path): Don't do anything if PATH has no steps.
 
 Sun Jun  8 03:07:05 1997  Jason Merrill  <jason@yorick.cygnus.com>
 
        * init.c (build_member_call, build_offset_ref):
-       Use do_scoped_id instead of do_identifier.
+       Use do_scoped_id instead of do_identifier.
 
        * cvt.c (convert): Remove bogosity.
 
@@ -10014,13 +10391,13 @@ Fri Jun  6 17:36:39 1997  Jason Merrill  <jason@yorick.cygnus.com>
        * cvt.c (build_up_reference): Call get_binfo to get access control.
 
        * decl2.c (import_export_decl): If we don't support weaks, leave
-       statics undefined.
+       statics undefined.
 
 Fri Jun  6 15:55:49 1997  Mike Stump  <mrs@cygnus.com>
 
        * except.c (expand_builtin_throw): Add support for machines that
-       cannot access globals after throw's epilogue when
-       -fno-sjlj-exceptions is used.
+       cannot access globals after throw's epilogue when
+       -fno-sjlj-exceptions is used.
 
 Thu Jun  5 16:28:43 1997  Jason Merrill  <jason@yorick.cygnus.com>
 
@@ -10037,14 +10414,14 @@ Thu Jun  5 16:28:43 1997  Jason Merrill  <jason@yorick.cygnus.com>
 Tue Jun  3 18:08:23 1997  Jason Merrill  <jason@yorick.cygnus.com>
 
        * search.c (push_class_decls): A name which ambiguously refers to
-       several instantiations of the same template just refers to the
-       template.
+       several instantiations of the same template just refers to the
+       template.
 
 Tue Jun  3 12:30:40 1997  Benjamin Kosnik  <bkoz@cirdan.cygnus.com>
 
-       * decl.c (build_enumerator): fix problem with unsigned long
+       * decl.c (build_enumerator): Fix problem with unsigned long
        enumerated values being smashed to ints, causing overflow
-       when computing next enumerated value. (for enum values around
+       when computing next enumerated value (for enum values around
        MAX_VAL).
 
 Mon Jun  2 17:40:56 1997  Jason Merrill  <jason@yorick.cygnus.com>
@@ -10177,7 +10554,7 @@ Wed May 14 19:08:28 1997  Mike Stump  <mrs@cygnus.com>
        (struct cp_function): Add last_parm_cleanup_insn.
        (push_cp_function_context): Likewise.
        (pop_cp_function_context): Likewise.
-       
+
 Tue May 13 15:51:20 1997  Jason Merrill  <jason@yorick.cygnus.com>
 
        * pt.c (tsubst_copy): Handle BIT_NOT_EXPR.
@@ -10230,13 +10607,13 @@ Wed Apr 23 18:06:50 1997  Jason Merrill  <jason@yorick.cygnus.com>
 
        * typeck.c (c_expand_return): Don't complain about returning void
        to void in an artificial function.
-       * method.c (make_thunk): Change settings of READONLY/VOLATILE, 
+       * method.c (make_thunk): Change settings of READONLY/VOLATILE,
        don't set DECL_RESULT, set DECL_ARTIFICIAL.
-       (emit_thunk, generic code): Also set up DECL_LANG_SPECIFIC. 
+       (emit_thunk, generic code): Also set up DECL_LANG_SPECIFIC.
 
 Wed Apr 23 14:43:06 1997  Mike Stump  <mrs@cygnus.com>
 
-       * init.c (init_decl_processing): Add supoprt for setjmp/longjmp based
+       * init.c (init_decl_processing): Add support for setjmp/longjmp based
        exception handling.
        * except.c (init_exception_processing): Likewise.
        (expand_end_catch_block): Likewise.
@@ -10254,7 +10631,7 @@ Wed Apr 23 14:43:06 1997  Mike Stump  <mrs@cygnus.com>
        (store_parm_decls): Likewise.
        (cplus_expand_expr_stmt): Likewise.
        * decl2.c (finish_file): Likewise.
-       
+
        * Make-lang.in (exception.o): Ok to compile with -O now.
 
        * decl.c (maybe_build_cleanup_1): We no longer have to unsave, as
@@ -10262,7 +10639,7 @@ Wed Apr 23 14:43:06 1997  Mike Stump  <mrs@cygnus.com>
 
        * decl2.c (lang_f_options): Remove support for short temps.
        * lang-options.h: Likewise.
-       
+
 Wed Apr 23 04:12:06 1997  Jason Merrill  <jason@yorick.cygnus.com>
 
        * tree.c (varargs_function_p): New fn.
@@ -10328,7 +10705,7 @@ Wed Apr  2 12:51:36 1997  Mike Stump  <mrs@cygnus.com>
        * exception.cc (__default_unexpected): Call terminate by default,
        so that if the user overrides terminate, the correct function will
        be called.
-       
+
 Wed Mar 19 14:14:45 1997  Mike Stump  <mrs@cygnus.com>
 
        * parse.y (left_curly): Avoid trying to use any fields of
@@ -10556,7 +10933,7 @@ Tue Feb 11 13:50:48 1997  Mike Stump  <mrs@cygnus.com>
        avoid lossing on systems that require one (ones that define malloc
        in xm.h).
 
-Mon Feb 10 22:51:13 1997  Bruno Haible <bruno@linuix.mathematik.uni-karlsruhe.de>
+Mon Feb 10 22:51:13 1997  Bruno Haible  <bruno@linuix.mathematik.uni-karlsruhe.de>
 
        * decl2.c (max_tinst_depth): New variable.
        (lang_decode_option): Parse "-ftemplate-depth-NN" command line
@@ -10725,7 +11102,7 @@ Thu Jan 23 16:39:06 1997  Jason Merrill  <jason@yorick.cygnus.com>
 
 Tue Jan 21 18:32:04 1997  Mike Stump  <mrs@cygnus.com>
 
-       * cvt.c (cp_convert): Pedwarn enum to pointer conversions.
+       * cvt.c (cp_convert): pedwarn enum to pointer conversions.
 
 Mon Jan 20 17:59:51 1997  Jason Merrill  <jason@yorick.cygnus.com>
 
@@ -10849,7 +11226,7 @@ Fri Dec 27 10:31:40 1996  Paul Eggert  <eggert@twinsun.com>
        * Make-lang.in (g++spec.o): Don't use $< with an explicit target;
        this isn't portable to some versions of `make' (e.g. Solaris 2.5.1).
 
-Tue Dec 24 10:24:03 1996  Jeffrey A Law  (law@cygnus.com)
+Tue Dec 24 10:24:03 1996  Jeffrey A Law  <law@cygnus.com>
 
        * decl.c (grokvardecl): Avoid ANSI style initialization.
 
@@ -10894,7 +11271,7 @@ Sat Dec  7 17:20:22 1996  Jason Merrill  <jason@yorick.cygnus.com>
 
        * cp-tree.h (TYPE_MAIN_DECL): Use TYPE_STUB_DECL.
        * *.c: Use TYPE_MAIN_DECL instead of TYPE_NAME where appropriate.
-       
+
 Fri Dec  6 14:40:09 1996  Jason Merrill  <jason@yorick.cygnus.com>
 
        * decl.c (grokdeclarator): When giving an anonymous struct a name,
@@ -11040,7 +11417,7 @@ Wed Nov 13 12:32:07 1996  Jason Merrill  <jason@yorick.cygnus.com>
 Wed Nov 13 11:51:20 1996  Brendan Kehoe  <brendan@lisa.cygnus.com>
 
        * g++.c (main): Also set PEXECUTE_SEARCH, to make the invocation
-       of GCC be path-relative. 
+       of GCC be path-relative.
 
 Wed Nov 13 11:27:16 1996  Michael Meissner  <meissner@tiktok.cygnus.com>
 
@@ -11055,7 +11432,7 @@ Wed Nov 13 07:53:38 1996  Brendan Kehoe  <brendan@lisa.cygnus.com>
 
 Wed Nov 13 02:00:26 1996  Jason Merrill  <jason@yorick.cygnus.com>
 
-       * init.c (expand_default_init): Avoid calling constructors to 
+       * init.c (expand_default_init): Avoid calling constructors to
        initialize reference temps.
 
        * cvt.c (convert_to_reference): Fix.
@@ -11148,7 +11525,7 @@ Fri Nov  8 17:38:44 1996  Jason Merrill  <jason@yorick.cygnus.com>
        * decl2.c (finish_file): Don't emit debug info.
        * decl.c (pushdecl): Lose obsolete code.
        (grokdeclarator): Still do the long long thing after complaining.
-       * search.c (note_debug_info_needed): Don't do anything if we're in a 
+       * search.c (note_debug_info_needed): Don't do anything if we're in a
        template.
        * method.c (synthesize_method): For non-local classes,
        push_to_top_level first.
@@ -11212,7 +11589,7 @@ Thu Oct 31 17:08:49 1996  Jason Merrill  <jason@yorick.cygnus.com>
        similar code in build_up_ref.
        * cvt.c (build_up_reference): Drastically simplify.
 
-Mon Oct 28 12:45:05 1996  Jeffrey A Law  (law@cygnus.com)
+Mon Oct 28 12:45:05 1996  Jeffrey A Law  <law@cygnus.com>
 
        * typeck.c (signed_or_unsigned_type): If the given type already
        as the correct signedness, then just return it.
@@ -11337,7 +11714,7 @@ Fri Sep 27 16:40:30 1996  Jason Merrill  <jason@yorick.cygnus.com>
        * decl2.c (build_expr_from_tree): Use it.
        * cp-tree.h: Declare it.
 
-       * decl.c (start_decl): variable-sized arrays cannot be initialized.
+       * decl.c (start_decl): Variable-sized arrays cannot be initialized.
        * error.c (dump_type_suffix): Handle variable arrays.
 
 Fri Sep 27 13:14:05 1996  Brendan Kehoe  <brendan@lisa.cygnus.com>
@@ -11361,7 +11738,7 @@ Thu Sep 26 10:59:00 1996  Jason Merrill  <jason@yorick.cygnus.com>
        calling them.
        (get_tinfo_fn_dynamic): Extracted from build_typeid.
        * tinfo2.cc (__dynamic_cast): Adjust.
-       
+
        * rtti.c (build_typeid): Use resolves_to_fixed_type_p.
        (build_x_typeid): Likewise.
 
@@ -11440,7 +11817,7 @@ Sun Sep 22 05:31:22 1996  Jason Merrill  <jason@yorick.cygnus.com>
 
        * typeck2.c (store_init_value): Oops.
 
-       * new.{h,cc}, exception.{h,cc}, typeinfo.h, tinfo{2.cc,.cc,.h}: 
+       * new.{h,cc}, exception.{h,cc}, typeinfo.h, tinfo{2.cc,.cc,.h}:
        New files for C++ lang-support library.
        * Make-lang.in (CXX_EXTRA_HEADERS): Define.
        (CXX_LIB2FUNCS): Define.
@@ -11565,7 +11942,7 @@ Wed Sep  4 17:16:09 1996  Bob Manson  <manson@charmed.cygnus.com>
 
        * init.c (perform_member_init): Use add_partial_entry () instead
        of directly manipulating lists.
-       (emit_base_init): Ditto.
+       (emit_base_init): Likewise.
 
 Wed Sep  4 12:14:36 1996  Mike Stump  <mrs@cygnus.com>
 
@@ -11656,7 +12033,7 @@ Fri Aug 30 10:01:55 1996  Mike Stump  <mrs@cygnus.com>
        to start_function.
        * parse.y (datadef): Remove non-winning optimization.
        (decl): Likewise.
-       (fndef): Remove ambiguous error productions uncovered by grammer
+       (fndef): Remove ambiguous error productions uncovered by grammar
        fixing.
        (constructor_declarator): Add exception_specification_opt here.
        (component_constructor_declarator): Likewise.
@@ -11686,7 +12063,7 @@ Wed Aug 28 01:40:30 1996  Jason Merrill  <jason@yorick.cygnus.com>
 
        * call.c (joust): Extend the previous change to all comparisons.
 
-       * decl2.c, method.c, lex.c: Use MAKE_DECL_ONE_ONLY and 
+       * decl2.c, method.c, lex.c: Use MAKE_DECL_ONE_ONLY and
        NO_LINKAGE_HEURISTICS.
 
        * decl2.c (finish_file): Emit any statics that weren't already.
@@ -11721,7 +12098,7 @@ Tue Aug 27 13:12:21 1996  Jason Merrill  <jason@yorick.cygnus.com>
 Tue Aug 27 13:14:58 1996  Bob Manson  <manson@charmed.cygnus.com>
 
        * rtti.c (build_dynamic_cast): Don't try to dereference exprtype
-       too early. Make sure we explode if exprtype turns out to be a
+       too early.  Make sure we explode if exprtype turns out to be a
        NULL_TREE when it shouldn't be.
 
 Tue Aug 27 10:56:21 1996  Mike Stump  <mrs@cygnus.com>
@@ -11735,7 +12112,7 @@ Tue Aug 27 10:56:21 1996  Mike Stump  <mrs@cygnus.com>
        * lex.c (cons_up_default_function): Likewise.
        * parse.y: Likewise.
        * pt.c (tsubst): Likewise.
-       
+
 Mon Aug 26 17:40:03 1996  Mike Stump  <mrs@cygnus.com>
 
        * decl2.c (groktypefield): Remove unused code.
@@ -11747,11 +12124,11 @@ Mon Aug 26 17:00:33 1996  Mike Stump  <mrs@cygnus.com>
        Change type_quals into cv_qualifiers.  Change nonempty_type_quals into
        nonempty_cv_qualifiers.
        * hash.h: Rebuild.
-       
+
        * lex.c (make_pointer_declarator): Change type_quals into
        cv_qualifiers.
        (make_reference_declarator): Likewise.
-       
+
 Thu Aug 22 01:09:22 1996  Jason Merrill  <jason@yorick.cygnus.com>
 
        * decl.c (start_function): Only check interface_* for templates
@@ -11768,7 +12145,7 @@ Wed Aug 21 00:13:15 1996  Jason Merrill  <jason@yorick.cygnus.com>
 
        * call.c (build_new_method_call): Add missing args to cp_error.
 
-       * tree.c (error_type): Dont print reference-to-array.
+       * tree.c (error_type): Don't print reference-to-array.
 
        * typeck.c (convert_for_assignment): Don't say contravariance for
        removing const.
@@ -11984,7 +12361,7 @@ Sun Aug  4 15:29:11 1996  Jason Merrill  <jason@yorick.cygnus.com>
        (build_conditional_expr): If both operands are TARGET_EXPRs, wrap
        the COND_EXPR in a TARGET_EXPR so they use the same slot.
 
-       * cvt.c (build_up_reference): Propagate INDIRECT_BIND to 
+       * cvt.c (build_up_reference): Propagate INDIRECT_BIND to
        recursive calls.
        * typeck.c (complete_type): Propagate
        TYPE_NEEDS_{CONSTRUCTING,DESTRUCTOR}.
@@ -12081,7 +12458,7 @@ Thu Aug  1 15:18:00 1996  Brendan Kehoe  <brendan@lisa.cygnus.com>
 
 Thu Aug  1 11:53:51 1996  Bob Manson  <manson@charmed.cygnus.com>
 
-       * pt.c (instantiate_class_template): Call complete_type. Also, if
+       * pt.c (instantiate_class_template): Call complete_type.  Also, if
        we're at the end of the file and we just instantiated a template
        class with a vtable, call finish_prevtable_vardecl.
 
@@ -12237,12 +12614,12 @@ Tue Jul 23 12:46:30 1996  Jason Merrill  <jason@yorick.cygnus.com>
        * cvt.c (implicit_conversion): Do const-ref case first.
        (add_conv_candidate, build_object_call, op_error): New fns.
        (ptr_complete_ob, TYPE_PTROB_P): void is not an object type.
-       ({add,build}_builtin_candidate{,s}, print_z_candidates): Display 
+       ({add,build}_builtin_candidate{,s}, print_z_candidates): Display
        builtin candidates.
        (build_new_op): Handle CALL_EXPR.  Don't try to decay void.
-       Fall back on preincrement handling.  Use op_error.  
+       Fall back on preincrement handling.  Use op_error.
        Handle warn_synth.
-       (convert_like): Pass INDIRECT_BIND.  Don't try to do anything with 
+       (convert_like): Pass INDIRECT_BIND.  Don't try to do anything with
        an error_mark_node.
        (build_over_call): Handle PROMOTE_PROTOTYPES and ellipsis promotions
        properly.
@@ -12261,7 +12638,7 @@ Mon Jul 22 12:18:54 1996  Jason Merrill  <jason@yorick.cygnus.com>
        * g++.c (main): Don't link with -lg++.
 
        NEW_OVER changes:
-       * cvt.c (convert_to_reference): Don't use convert_from_refeence on
+       * cvt.c (convert_to_reference): Don't use convert_from_reference on
        result of build_type_conversion.
        (cp_convert): Only call build_method_call for ctors if
        build_type_conversion failed.
@@ -12269,7 +12646,7 @@ Mon Jul 22 12:18:54 1996  Jason Merrill  <jason@yorick.cygnus.com>
        (TYPE_PTR{,OB,MEM}_P): New macros.
        ({add,build}_builtin_candidate{,s}): New functions.
        (print_z_candidates): Handle builtins.
-       (build_user_type_conversion_1): Don't use conversion fns for 
+       (build_user_type_conversion_1): Don't use conversion fns for
        converting to a base type.
        (build_user_type_conversion_1): Set ICS_USER_FLAG on AMBIG_CONVs.
        (build_user_type_conversion): Use convert_from_reference.
@@ -12591,7 +12968,7 @@ Fri Jun  7 10:37:33 1996  Mike Stump  <mrs@cygnus.com>
        lifetime of the temporary, don't try it again.
        * typeck.c (c_expand_return): Don't try and convert the return
        value twice when we want a reference, once is enough.
-       
+
 Tue Jun  4 15:41:45 1996  Jason Merrill  <jason@yorick.cygnus.com>
 
        * pt.c (tsubst_expr, case DECL_STMT): Don't pass
@@ -12668,8 +13045,8 @@ Thu May 23 12:13:08 1996  Bob Manson  <manson@charmed.cygnus.com>
        and cant_synth_asn_ref.
        (finish_base_struct): Remove the code that tries to conditionalize
        synthesis of copy constructors & assignment operators based on
-       access permissions. Instead, let it fail when it tries to
-       synthesize the copy constructor. This will give meaningful error
+       access permissions.  Instead, let it fail when it tries to
+       synthesize the copy constructor.  This will give meaningful error
        messages instead of silently generating code to perform a bitcopy.
 
 Wed May 22 11:45:19 1996  Bob Manson  <manson@charmed.cygnus.com>
@@ -12688,7 +13065,7 @@ Wed May 22 11:45:19 1996  Bob Manson  <manson@charmed.cygnus.com>
        (init_decl_processing): Use NULL instead of NULL_TREE to initialize
        named_label_uses.
        (finish_function): Likewise.
-       
+
        (start_decl): Complain about defining a static data member
        in a different type from which it was declared.
 
@@ -12968,11 +13345,11 @@ Wed Apr 24 15:41:15 1996  Bob Manson  <manson@charmed.cygnus.com>
        definition of flagged_type_tree is found before it is used.
        * lex.c: Likewise.
        * parse.y: Added the ftype member to the type union, and changed a
-       number of rules to use it instead of ttype. Added calls to
+       number of rules to use it instead of ttype.  Added calls to
        check_for_new_type() as appropriate.
        * typeck2.c (check_for_new_type): New function for checking
        if a newly defined type appears in the specified tree.
-       * cp-tree.h: Add new type flagged_type_tree. Add a prototype
+       * cp-tree.h: Add new type flagged_type_tree.  Add a prototype
        for check_for_new_type().
 
 Wed Apr 24 00:36:21 1996  Jason Merrill  <jason@yorick.cygnus.com>
@@ -13097,7 +13474,7 @@ Sun Apr 14 11:34:39 1996  Jason Merrill  <jason@yorick.cygnus.com>
 Fri Apr 12 09:08:27 1996  Bob Manson  <manson@charmed.cygnus.com>
 
        * call.c (build_method_call): Remember the original basetype we
-       were called with. Give an error message instead of trying
+       were called with.  Give an error message instead of trying
        (incorrectly) to call a non-static member function through a
        non-inherited class.
 
@@ -13226,7 +13603,7 @@ Sat Apr  6 13:56:27 1996  Jason Merrill  <jason@yorick.cygnus.com>
 Fri Apr  5 17:02:09 1996  Jason Merrill  <jason@yorick.cygnus.com>
 
        RTTI rewrite to initialize nodes as needed, not require that
-       users #include <typeinfo>, complete functionality and reduce wasted 
+       users #include <typeinfo>, complete functionality and reduce wasted
        space.
        * rtti.c (init_rtti_processing): New fn.
        (build_typeid): The vtable entry is now a function.
@@ -13326,11 +13703,11 @@ Sat Mar 30 12:14:33 1996  Brendan Kehoe  <brendan@lisa.cygnus.com>
 
 Fri Mar 29 15:51:36 1996  Bob Manson  <manson@charmed.cygnus.com>
 
-       * class.c (base_info, finish_base_struct): Replace 
+       * class.c (base_info, finish_base_struct): Replace
        needs_virtual_dtor with base_has_virtual.
 
        (finish_struct_1): Remove the old code that tried to make default
-       destructors virtual. Use base_has_virtual when checking if we need
+       destructors virtual.  Use base_has_virtual when checking if we need
        to add a vtable entry for the rtti code.
 
 Fri Mar 29 14:02:36 1996  Jason Merrill  <jason@yorick.cygnus.com>
@@ -13443,7 +13820,7 @@ Fri Mar 22 17:57:55 1996  Mike Stump  <mrs@cygnus.com>
 Fri Mar 22 13:48:29 1996  Jason Merrill  <jason@yorick.cygnus.com>
 
        * decl.c (grokdeclarator): Call bad_specifiers for typedefs.  Also
-       give an error if initialized.  Pedwarn about nested type with the
+       give an error if initialized.  pedwarn about nested type with the
        same name as its enclosing class.
 
        * pt.c (tsubst, case TYPE_DECL): Set DECL_CONTEXT.
@@ -13674,7 +14051,7 @@ Wed Mar 13 14:03:34 1996  Jason Merrill  <jason@yorick.cygnus.com>
 
 Tue Mar 12 14:36:02 1996  Jason Merrill  <jason@yorick.cygnus.com>
 
-       * init.c (build_new): Pedwarn about init and array new.
+       * init.c (build_new): pedwarn about init and array new.
        (expand_vec_init): Handle lists, use convert_for_initialization.
 
        * typeck.c (convert_for_initialization): Pass LOOKUP_NO_CONVERSION
@@ -13796,7 +14173,7 @@ Mon Mar  4 20:03:33 1996  Jason Merrill  <jason@yorick.cygnus.com>
 
        * error.c (dump_expr): Support LOOKUP_EXPR and actually do
        something for CAST_EXPR.
-       
+
 Mon Feb 19 14:49:18 1996  Rusty Russell  <rusty@adelaide.maptek.com.au>
 
        * cvt.c (cp_convert): Warn about implicit conversion of the
@@ -14066,7 +14443,7 @@ Thu Feb 22 15:30:12 1996  Brendan Kehoe  <brendan@lisa.cygnus.com>
        (repo_compile_flags, repo_template_declared,
        repo_template_defined, repo_class_defined, repo_inline_used,
        repo_vtable_used, repo_tinfo_used): #if 0 unused fns.
-       (repo_get_id, repo_vtable_used): Declare as static. 
+       (repo_get_id, repo_vtable_used): Declare as static.
        * cp-tree.h (mark_{decl,class}_instantiated, finish_repo): Add
        prototypes.
 
@@ -14095,7 +14472,7 @@ Thu Feb 22 13:24:15 1996  Brendan Kehoe  <brendan@lisa.cygnus.com>
        (init_lex): Don't set it.
        (init_parse): Add decl before use.
        (reduce_count): Only define #ifdef GATHER_STATISTICS && REDUCE_LENGTH.
-       (current_unit_{name, language}): Delete unused vars. 
+       (current_unit_{name, language}): Delete unused vars.
        (check_newline): Don't bother setting them, just accept the #pragma.
        * cp-tree.h (init_repo, peek_yylex): Add prototypes.
        (current_unit_{name, language}): Delete decls.
@@ -14219,7 +14596,7 @@ Thu Feb 22 00:54:22 1996  Jason Merrill  <jason@yorick.cygnus.com>
 
 Wed Feb 21 16:57:33 1996  Brendan Kehoe  <brendan@lisa.cygnus.com>
 
-       * init.c (expand_recursive_init{,_1}): Delete decls. 
+       * init.c (expand_recursive_init{,_1}): Delete decls.
        (sort_member_init): Delete unused var INIT.
        (emit_base_init): Delete unused var X.
        (build_offset_ref): Delete unused var CNAME.
@@ -14255,7 +14632,7 @@ Wed Feb 21 16:57:33 1996  Brendan Kehoe  <brendan@lisa.cygnus.com>
 
        * class.c (n_*): Wrap with #ifdef GATHER_STATISTICS.
 
-       * class.c (get_vtable_entry): Diable unused function.
+       * class.c (get_vtable_entry): Disable unused function.
        (doing_hard_virtuals): Delete unused static global var.
        (finish_struct_1): Don't init DOING_HARD_VIRTUALS.
        (prepare_fresh_vtable): Delete unused vars PATH and RESULT.
@@ -14286,7 +14663,7 @@ Wed Feb 21 16:57:33 1996  Brendan Kehoe  <brendan@lisa.cygnus.com>
        (grokparms): Delete unused var SAW_VOID.
        (start_function): Delete unused var OLDDECL.
        (cplus_expand_expr_stmt): Delete unused var
-       REMOVE_IMPLICIT_IMMEDIATELY. 
+       REMOVE_IMPLICIT_IMMEDIATELY.
 
        * cp-tree.h (pushdecl_nonclass_level): Fix prototype.
 
@@ -14301,7 +14678,7 @@ Wed Feb 21 00:06:17 1996  Jason Merrill  <jason@yorick.cygnus.com>
        (tsubst_expr): Set lineno from TREE_COMPLEXITY in stmt nodes.
        * parse.y: Use do_pushlevel and do_poplevel.
        * cp-tree.h: Declare do_poplevel.
-       
+
        * cp-tree.h: Declare at_eof.
        * decl.c (cp_finish_decl): Pass it to rest_of_decl_compilation.
        * decl2.c (import_export_decl): Renamed from import_export_inline.
@@ -14918,7 +15295,7 @@ Tue Dec 19 22:36:56 1995  Jason Merrill  <jason@yorick.cygnus.com>
 Mon Dec 18 15:51:33 1995  Jason Merrill  <jason@yorick.cygnus.com>
 
        * cp-tree.h, decl2.c (flag_weak): New flag to control the use of
-       weak symbols.   
+       weak symbols.
        * lang-options.h: Add -f{no-,}weak.
        * decl.c (init_decl_processing): If the target does not support weak
        symbols, don't use them.
@@ -14945,7 +15322,7 @@ Thu Dec 14 14:16:26 1995  Mike Stump  <mrs@cygnus.com>
        copy constructors well.  The compiler would do bitwise copying,
        instead of ctor calling in some cases.
 
-Wed Dec 13 17:05:54 PST 1995  Paul Eggert  <eggert@twinsun.com>
+Wed Dec 13 17:05:54 1995  Paul Eggert  <eggert@twinsun.com>
 
        * g++.c (my_strerror): Return "cannot access" if errno is 0.
        (pfatal_with_name, perror_exec): Don't assume that
@@ -14956,7 +15333,7 @@ Wed Dec 13 17:05:54 PST 1995  Paul Eggert  <eggert@twinsun.com>
 Wed Dec 13 16:22:38 1995  Jason Merrill  <jason@yorick.cygnus.com>
 
        Lose CLASSTYPE_METHODS/DECL_NEXT_METHOD chain; make
-       TYPE_METHODS/TREE_CHAIN mean what they used to. 
+       TYPE_METHODS/TREE_CHAIN mean what they used to.
        * decl2.c (constructor_name_full): Refer to CLASSTYPE_METHOD_VEC
        instead of TYPE_METHODS.
        * decl.c (duplicate_decls): Lose references to DECL_NEXT_METHOD.
@@ -14997,7 +15374,7 @@ Mon Dec 11 18:56:14 1995  Mike Stump  <mrs@cygnus.com>
        * decl2.c (build_cleanup): New routine, taken from finish_file.
        (finish_file): Use build_cleanup instead, and don't put function
        local statics in global dtor list.
-       
+
 Wed Dec  6 14:34:29 1995  Mike Stump  <mrs@cygnus.com>
 
        * except.c (expand_throw): Ensure that we have cleanups, if we try
@@ -15036,7 +15413,7 @@ Wed Dec  6 11:48:21 1995  Mike Stump  <mrs@cygnus.com>
 
        * class.c (build_vfn_ref): Remove building_cleanup logic, as we now
        use UNSAVE_EXPRs.
-       typeck.c (get_member_function_from_ptrfunc): Remove remnants of
+       typeck.c (get_member_function_from_ptrfunc): Remove remnants of
        building_cleanup logic, as we now use UNSAVE_EXPRs.
        * cp-tree.h (unsave_expr): Declare it.
        * decl.c (building_cleanup): Remove.
@@ -15130,11 +15507,11 @@ Fri Nov 10 09:18:09 1995  Brendan Kehoe  <brendan@lisa.cygnus.com>
 Mon Nov  6 18:36:13 1995  Brendan Kehoe  <brendan@lisa.cygnus.com>
 
        * call.c (build_method_call): Make sure instance has a
-       TYPE_LANG_SPECIFIC node before we dive into it.  
+       TYPE_LANG_SPECIFIC node before we dive into it.
 
 Sat Nov  4 20:01:52 1995  Jason Molenda  <crash@phydeaux.cygnus.com>
 
-       * method.c (make_thunk): use TREE_SET_CODE to set thunk's tree code.
+       * method.c (make_thunk): Use TREE_SET_CODE to set thunk's tree code.
 
 Thu Nov  2 17:56:57 1995  Mike Stump  <mrs@cygnus.com>
 
@@ -15169,7 +15546,7 @@ Tue Oct 31 11:56:55 1995  Jason Merrill  <jason@yorick.cygnus.com>
        (emit_thunk): Don't call assemble_external.
        (make_thunk): Create thunk as a FUNCTION_DECL so that it
        gets the right mode and ENCODE_SECTION_INFO works.
-       
+
        * parse.y: Use mark_used.  Pass operator names to do_identifier.
        * lex.c (do_identifier): Handle operator names.