+2004-11-25 Joseph S. Myers <joseph@codesourcery.com>
+
+ * g++spec.c, lex.c: Avoid ` as left quote in diagnostics.
+
+2004-11-24 Mark Mitchell <mark@codesourcery.com>
+
+ PR c++/17473
+ * name-lookup.c (supplement_binding): Do not allow typedefs to be
+ redefined in class scope.
+
+ PR c++/18285
+ * parser.c (cp_parser_set_decl_type_spec): Do not try to allow
+ redefinitions of builtin types other that "bool" or "wchar_t".
+
+2004-11-24 Steven Bosscher <stevenb@suse.de>
+
+ * decl.c (cxx_init_decl_processing): Don't clear
+ flag_inline_functions.
+
+2004-11-24 Mark Mitchell <mark@codesourcery.com>
+
+ * pt.c (tsubst_function_type): Do not permit function types which
+ return arrays or functions.
+
+ PR c++/18586
+ * parser.c (cp_parser_init_declarator): Do not pop scope twice.
+
+ PR c++/18530
+ * cp-tree.h (CTOR_NAME): Remove.
+ (DTOR_NAME): Remove.
+ * decl.c (initialize_predefined_identifiers): Add spaces to the
+ end of constructor and destructor names.
+
+2004-11-24 Giovanni Bajo <giovannibajo@gcc.gnu.org>
+
+ PR c++/8929
+ * decl.c (start_decl): Check for invalid specialization headers.
+
+2004-11-24 Paolo Bonzini <bonzini@gnu.org>
+
+ PR c++/16882
+
+ * call.c (standard_conversion): Move check for conversions between
+ vector pointers...
+ * typeck.c (ptr_reasonably_similar): ... here.
+
+2004-11-23 Ben Elliston <bje@au.ibm.com>
+
+ * cp-tree.h (context_as_string): Remove extern.
+ * error.c (context_as_string): Remove.
+
+ * cp-tree.h (cp_type_qual_from_rid): Remove extern.
+ * lex.c (cp_type_qual_from_rid): Remove.
+
+ * cp-tree.h (do_poplevel): Remove extern.
+ (check_multiple_declarators): Likewise.
+ * semantics.c (do_poplevel): Make static.
+ (check_multiple_declarators): Remove.
+
+ * cp-tree.h (check_final_overrider): Remove extern.
+ * search.c (check_final_overrider): Make static.
+
+ * cp-tree.h (build_artificial_parm): Remove extern.
+ * decl2.c (build_artificial_parm): Make static.
+
+2004-11-22 Giovanni Bajo <giovannibajo@gcc.gnu.org>
+
+ PR c++/18354
+ * typeck.c (build_unary_op) <CONVERT_EXPR, NEGATE_EXPR>: Unify code.
+ Make sure the result is always a rvalue.
+
+2004-11-16 Giovanni Bajo <giovannibajo@gcc.gnu.org>
+
+ * decl.c (start_preparsed_function): Call check_function_type even
+ in templates.
+ (require_complete_types_for_parms): Skip dependent types.
+ (check_function_type): Likewise.
+
+2004-11-16 Steven Bosscher <stevenb@suse.de>
+
+ * Make-lang.in (cp/decl.o, cp/search.o): Don't depend on stack.h.
+ * search.c: Don't include it.
+
+2004-11-15 Andrew Pinski <pinskia@physics.uc.edu>
+
+ * cp-gimplify.c: Include pointer-set.h
+ (cp_genericize_r): Use pointer_sets instead of a hashtable.
+ Also instert the new statement for CLEANUP_STMT.
+ (cp_genericize): Use pointer_sets instead of a hashtable.
+ * Make-lang.in (cp-gimplify.o): Depend on pointer-set.h.
+
+2004-11-15 Kriang Lerdsuwanakij <lerdsuwa@users.sourceforge.net>
+
+ Friend class name lookup 1/n, PR c++/18471
+ * decl.c (lookup_and_check_tag): New function.
+ (xref_tag, start_enum): Use it.
+ (check_elaborated_type_specifier): Move TEMPLATE_TYPE_PARM check
+ before !DECL_IMPLICIT_TYPEDEF_P. Also display previously declared
+ location.
+ * name-lookup.c (lookup_name_current_level): Rename to ...
+ (lookup_name_innermost_nonclass_level): ... this.
+ (lookup_type_scope): New function.
+ * name-lookup.h (lookup_name_current_level): Rename to ...
+ (lookup_name_innermost_nonclass_level): ... this.
+ (lookup_type_scope): Add declaration.
+
+2004-11-14 Kriang Lerdsuwanakij <lerdsuwa@users.sourceforge.net>
+
+ PR c++/17344
+ * pt.c (coerce_template_parms): Only emit error message about
+ invalid template argument when TF_ERROR.
+
+2004-11-12 Mark Mitchell <mark@codesourcery.com>
+
+ PR c++/18389
+ * decl.c (start_decl): Make sure to set *pop_scope_p. Return
+ error_mark_node to indicate errors.
+
+ PR c++/18429
+ * parser.c (cp_parser_direct_declarator): Disallow non-constant
+ array bounds when not inside a function.
+
+ PR c++/18436
+ * pt.c (tsubst_copy_and_build): Do not do Koenig lookup when an
+ unqualified name resolves to a member function.
+
+ PR c++/18407
+ * pt.c (tsubst_copy_and_build): Handle qualified names used from a
+ derived class correctly.
+
+ * decl2.c (import_export_decl): Fix typo in comment.
+ * tree.c (pod_type_p): Likewise.
+
+2004-11-10 Andrew Pinski <pinskia@physics.uc.edu>
+
+ * typeck.c (cxx_mark_addressable): Add braces around the first if.
+
+2004-11-10 Adam Nemet <anemet@lnxw.com>
+
+ PR middle-end/18160
+ * typeck.c (cxx_mark_addressable): Issue an error if address of an
+ explicit register variable is requested.
+
+2004-11-10 Nathan Sidwell <nathan@codesourcery.com>
+
+ PR c++/18143
+ * cp-tree.h (NON_THUNK_FUNCTION_CHECK, THUNK_FUNCTION_CHECK): New.
+ (struct lang_decl_flags): Add thunk_p flag.
+ (struct lang_decl): Remove separate fixed_offset. Place
+ cloned_function and fixed_offset into union.
+ (DECL_CLONED_FUNCTION_P, DECL_CLONED_FUNCTION): Adjust.
+ (DECL_THUNK_P, SET_DECL_THUNK_P): Adjust.
+ (THUNK_FIXED_OFFSET): Adjust.
+ * method.c (make_thunk): Adjust.
+
+2004-11-09 Mark Mitchell <mark@codesourcery.com>
+
+ PR c++/18369
+ * init.c (build_new_1): Handle parenthesized type-ids that name an
+ array type. Tidy.
+
+2004-11-09 Joseph S. Myers <joseph@codesourcery.com>
+
+ * call.c, class.c, decl.c, decl2.c, error.c, mangle.c, parser.c,
+ pt.c, search.c, semantics.c, typeck.c: Use %q, %< and %> for
+ quoting in diagnostics.
+ * parser.c (cp_parser_sizeof_operand): Use '' instead of `' for
+ quoting in printf format.
+ * decl.c (duplicate_decls, start_decl): Use %qD instead of
+ unquoted %D.
+
+2004-11-08 Kazu Hirata <kazu@cs.umass.edu>
+
+ * class.c, decl.c, lex.c, name-lookup.c, parser.c, pt.c,
+ search.c, typeck2.c: Fix comment formatting.
+
+2004-11-04 Ulrich Weigand <uweigand@de.ibm.com>
+
+ PR tree-optimization/18184
+ * cp-objcp-common.c (cxx_types_compatible_p): Do not treat pointers
+ of different modes or alias-all flags as equivalent.
+ * typeck.c (comptypes): Likewise.
+
+2004-11-04 Giovanni Bajo <giovannibajo@gcc.gnu.org>
+
+ DR 49, 100
+ * cp-tree.h (TYPE_REF_OBJ_P): New macro.
+ (TYPE_PTR_P, TYPE_PTROB_P, TYPE_PTROBV_P, TYPE_PTRFN_P,
+ TYPE_REFFN_P): Document.
+ (fold_decl_constant_value): New prototype.
+ * pt.c (convert_nontype_argument_function): Rewrite and extract
+ parts into...
+ (fold_decl_constant_value, convert_nontype_argument_function): New.
+ (lookup_template_class): Add comment about useless double call.
+ * mangle.c (write_expression): Strip conversions before lowering
+ pointer to members.
+ * cvt.c (ocp_convert): Check LOOKUP_COMPLAIN for a pedwarn. Disallow
+ enum to enum conversion.
+
+2004-11-02 Mark Mitchell <mark@codesourcery.com>
+
+ PR c++/18124
+ * parser.c (cp_parser_type_parameter): Robustify.
+
+ PR c++/18155
+ * parser.c (cp_parser_single_declaration): Disallow template
+ typedefs.
+
+ PR c++/18177
+ * typeck.c (build_const_cast): Use error_operand_p.
+
+2004-11-02 Ziemowit Laski <zlaski@apple.com>
+
+ * cp-lang.c (cxx_types_compatible_p): Remove prototype and definition.
+ (LANG_HOOKS_TYPES_COMPATIBLE_P): Move to cp-objcp-common.h.
+ * cp-objcp-common.c (cxx_types_compatible_p): Moved definition here
+ from cp-lang.c.
+ * cp-objcp-common.h (cxx_types_compatible_p): Moved prototype here
+ from cp-lang.c.
+ (LANG_HOOKS_TYPES_COMPATIBLE_P): Moved here from cp-lang.c.
+
+2004-11-01 Nathan Sidwell <nathan@codesourcery.com>
+
+ PR c++/18064
+ * search.c (check_final_overrider): Deprecate gnu covariant extension.
+
+2004-10-31 Gabriel Dos Reis <gdr@integrable-solutions.net>
+
+ Convert diagnostics to use quoting flag q 9/n
+ * typeck.c (build_x_unary_op, convert_member_func_to_ptr,
+ get_delta_difference): Use new quotation style.
+ * repo.c (reopen_repo_file_for_write): Likewise.
+ * pt.c (do_type_instantiation): Likewise.
+ * parser.c (cp_parser_diagnose_invalid_type_name):
+ * name-lookup.c (push_overloaded_decl, set_decl_namespace):
+ * error.c (cp_print_error_function,
+ print_instantiation_full_context): Likewise.
+ * decl.c (define_label, grok_reference_init,
+ maybe_deduce_size_from_array_init, revert_static_member_fn):
+ * decl2.c (check_classfn): Likewise.
+ * class.c (add_method, check_field_decls, layout_class_type,
+ resolve_address_of_overloaded_function): Likewise.
+ * call.c (build_x_va_arg, build_over_call): Likewise.
+
+2004-10-31 Gabriel Dos Reis <gdr@integrable-solutions.net>
+
+ Convert diagnostics to use quoting flag q 8/n
+ * cvt.c (cp_convert_to_pointer, warn_ref_binding,
+ convert_to_reference, ocp_convert, convert_to_void
+ cp_convert_to_pointer): Use new quotation style.
+
+2004-10-31 Mark Mitchell <mark@codesourcery.com>
+
+ PR c++/15172
+ * typeck2.c (store_init_value): Use split_nonconstant_init even
+ for types that require construction.
+
+1004-10-28 Matt Austern <austern@apple.com>
+
+ PR c++/17542
+ * cp-tree.h (class_key_or_enum_as_string): Declare.
+ * error.c (class_key_or_enum): Rename to class_key_or_enum_as_string
+ and remove static qualifier.
+ * decl.c (shadow_tag): Warn about ignored attributes in class/struct/
+ union/enum declaration.
+
+2004-10-29 Kazu Hirata <kazu@cs.umass.edu>
+
+ * pt.c: Fix a comment typo.
+
+2004-10-28 Nathan Sidwell <nathan@codesourcery.com>
+
+ * typeck.c (composite_pointer_type): Remove comment about DR 195.
+ (build_reinterpret_cast_1): Revert DR195 patch. Only emit a
+ warning when being pedantic.
+ (build_reinterpet_cast, build_c_cast): Adjust.
+
+2004-10-29 Mark Mitchell <mark@codesourcery.com>
+
+ PR c++/17695
+ * decl.c (grokdeclarator): Mark TYPE_DECLs as abstract when they
+ appear in a constructor/destructor that will be cloned.
+
+1004-10-28 Matt Austern <austern@apple.com>
+
+ PR c++/14124
+ * decl.c (finish_enum): Handle packed attribute.
+ * parser.c (cp_parser_enum_specifier): Process trailing attributes.
+
+2004-10-28 Mark Mitchell <mark@codesourcery.com>
+
+ PR c++/17132
+ * pt.c (instantiate_class_template): Increment
+ processing_template_decl when substituting into a member class
+ template.
+
2004-10-27 Mark Mitchell <mark@codesourcery.com>
PR c++/17435