+2005-02-22 Mark Mitchell <mark@codesourcery.com>
+
+ PR c++/19883
+ * parser.c (cp_parser_direct_declarator): Always complain about
+ non-constant array bounds when in a function scope.
+ * semantics.c (finish_id_expression): Do not mark dependent names
+ as non-constant.
+
+2005-02-21 Douglas Gregor <dgregor@cs.indiana.edu>
+
+ PR c++/19076
+ PR c++/6628
+ * cp-tree.h (cp_apply_type_quals_to_decl): Declared.
+ * decl.c (grokdeclarator): Pedwarn about qualifying a function
+ type.
+ Add qualifiers when declaring a typedef of a function type.
+ Member function pointers pick up the qualifiers of the typedef
+ used to declare them.
+ Don't complain about creating cv-qualified function types.
+ Complain about qualified function typedefs that are used to
+ declare non-static member functions or free functions.
+ Use cp_apply_type_quals_to_decl.
+ (start_preparsed_function): Use cp_apply_type_quals_to_decl.
+ (grokclassfn): Use cp_apply_type_quals_to_decl.
+ * error.c (dump_type_suffix): Print qualifiers for function
+ types.
+ * pt.c (tsubst_decl): Use cp_apply_type_quals_to_decl.
+ (tsubst): When substituting a function type into a member
+ pointer type, pass along the qualifiers.
+ (unify): Unify member pointers to member function pointers.
+ * tree.c (cp_build_qualified_type_real): Function types may be
+ qualified. This includes restrict qualifiers.
+ * typeck.c (cp_apply_type_quals_to_decl): New function to replace
+ use of c_apply_type_quals_to_decl. Drops qualifiers that are being
+ added to function types.
+
+2005-02-20 Zack Weinberg <zack@codesourcery.com>
+
+ PR 18785
+ * cp-objcp-common.h (LANG_HOOKS_TO_TARGET_CHARSET): Set to
+ c_common_to_target_charset. Delete bogus comment.
+
+2005-02-18 Richard Henderson <rth@redhat.com>
+
+ PR libstdc++/10606
+ * except.c (do_get_exception_ptr): New.
+ (expand_start_catch_block): Use it.
+
+2005-02-19 Jakub Jelinek <jakub@redhat.com>
+
+ * decl.c (start_decl_1): Only check TYPE_NEEDS_CONSTRUCTING
+ if type is not error_mark_node.
+
+2005-01-20 Giovanni Bajo <giovannibajo@gcc.gnu.org>
+
+ PR c++/19508
+ * decl2.c (grokfield): Do not apply attributes to template parameters
+ as they are ignored by tsubst anyway.
+
+2005-02-18 Jakub Jelinek <jakub@redhat.com>
+
+ PR c++/19813
+ * decl.c (start_decl_1): Clear TREE_READONLY flag if
+ its type has TYPE_NEEDS_CONSTRUCTING.
+ (complete_vars): Likewise.
+
+2005-02-17 Alexandre Oliva <aoliva@redhat.com>
+
+ PR c++/20028
+ * class.c (finish_struct): Initialize TYPE_SIZE_UNIT of a
+ template along with TYPE_SIZE.
+
+ PR c++/20022
+ * semantics.c (perform_deferred_access_checks): Use
+ get_deferred_access_checks to get the top of the stack.
+
+2005-02-15 Alexandre Oliva <aoliva@redhat.com>
+
+ PR c++/17788
+ * class.c (add_implicitly_declared_members, check_field_decl)
+ (check_field_decls, check_bases): Remove arguments, tests and
+ assignments of cant_have_default_ctor-related variables.
+
+2005-02-15 Alexandre Oliva <aoliva@redhat.com>
+
+ * decl2.c (mark_used): Set the source location of the used decl to
+ the current input location here...
+ * method.c (synthesize_method): ... not here. Set input_location
+ from the decl instead.
+
+2005-02-14 Nathan Sidwell <nathan@codesourcery.com>
+
+ PR c++/19608
+ * parser.c (cp_parser_late_parsing_for_member): Use
+ current_function_decl as scope to push to and from.
+
+ PR c++/19884
+ * pt.c (check_explicit_specialization): Make sure namespace
+ binding lookup found an overloaded function.
+ (lookup_template_function): Just assert FNS is an overloaded
+ function.
+
+ PR c++/19895
+ * decl.c (grokdeclarator): Check for error mark node in ptrmem
+ construction.
+
+2005-02-14 Alexandre Oliva <aoliva@redhat.com>
+
+ PR c++/17816
+ * decl.c (redeclaration_error_message): Report redefinition of
+ pure virtual function.
+
+2005-02-14 Nathan Sidwell <nathan@codesourcery.com>
+
+ PR c++/19891
+ * class.c (build_simple_base_path): Build the component_ref
+ directly.
+ (update_vtable_entry_for_fn): Walk the covariant's binfo chain
+ rather than using lookup_base.
+ * search.c (dfs_walk_once): Add non-recursive assert check.
+ * typeck.c (build_class_member_access_expr): It is possible for
+ the member type to be both const and volatile.
+
+2005-02-12 Kriang Lerdsuwanakij <lerdsuwa@users.sourceforge.net>
+
+ PR c++/14479
+ PR c++/19487
+ * pt.c (maybe_check_template_type): Remove.
+ * cp-tree.h (maybe_check_template_type): Remove prototype.
+ * name-lookup.c (maybe_process_template_type_declaration): Don't
+ use maybe_check_template_type.
+
+2005-02-11 Richard Henderson <rth@redhat.com>
+
+ PR c++/19632
+ * pt.c (get_mostly_instantiated_function_type): Save and restore
+ flag_access_control instead of push/pop_access_scope.
+
+2005-02-10 Mark Mitchell <mark@codesourcery.com>
+
+ PR c++/19755
+ * decl.c (reshape_init): Issue warnings about missing braces.
+
+2005-02-11 Kazu Hirata <kazu@cs.umass.edu>
+
+ * cp-tree.def, except.c, ptree.c: Update copyright.
+
+2005-02-09 Mark Mitchell <mark@codesourcery.com>
+
+ PR c++/19811
+ * call.c (build_op_delete_call): Check COMPLETE_TYPE_P before
+ attempting name lookup.
+
+ * parser.c (cp_parser_unqualified_id): Initialize type_decl.
+
+ PR c++/19787
+ * call.c (initialize_reference): Robustify.
+
+ PR ++/19732
+ * decl.c (grokdeclarator): Check for invalid use of destructor
+ names.
+
+ PR c++/19762
+ * parser.c (cp_parser_unqualified_id): Avoid creating destructor
+ names with invalid types.
+
+ PR c++/19826
+ * parser.c (cp_parser_direct_declarator): Allow type-dependent
+ expressions as array bounds.
+
+ PR c++/19739
+ * parser.c (cp_parser_attributes_list): Allow empty lists.
+
+2005-02-08 Mark Mitchell <mark@codesourcery.com>
+
+ PR c++/19733
+ * class.c (add_method): Don't set TYPE_HAS_DESTRUCTOR.
+ (check_bases): Give warnings about a base class with a
+ non-virtual destructor, even if it is implicit.
+ (finish_struct_bits): Don't copy TYPE_HAS_DESTRUCTOR.
+ (maybe_warn_about_overly_private_class): Don't use
+ TYPE_HAS_DESTRUCTOR.
+ (finish_struct_methods): Don't set TYPE_HAS_DESTRUCTOR.
+ (check_for_override): Give it external linkage.
+ (add_implicitly_declared_members): Generate destructors lazily.
+ (check_field_decls): Use TYPE_HAS_NONTRIVIAL_DESTRUCTOR, not
+ TYPE_HAS_DESTRUCTOR.
+ (check_bases_and_members): Call check_methods before
+ check_field_decls.
+ (check_bases_and_members): Use TYPE_HAS_NONTRIVIAL_DESTRUCTOR, not
+ TYPE_HAS_DESTRUCTOR.
+ (finish_struct_1): Do not use TYPE_HAS_DESTRUCTOR.
+ * cp-tree.def (PSEUDO_DTOR_EXPR): Document.
+ * cp-tree.h (TYPE_HAS_DESTRUCTOR): Remove.
+ (lang_type_class): Add lazy_destructor.
+ (CLASSTYPE_LAZY_DESTRUCTOR): New macro.
+ (CLASSTYPE_DESTRUCTORS): Robustify.
+ (TYPE_HAS_DESTRUCTOR): Remove.
+ (check_for_override): Declare.
+ (build_vbase_delete): Remove.
+ * cvt.c (convert_to_void): Issue errors about pseudo-destructor
+ expressions.
+ * decl.c (cxx_maybe_build_cleanup): Remove dead code.
+ * except.c (dtor_nothrow): Lazily create destructors if necessary.
+ (build_throw): Use TYPE_HAS_NONTRIVIAL_DESTRUCTOR.
+ * init.c (build_delete): Lazily create destructors, if necessary.
+ (build_vbase_delete): Remove.
+ * method.c (locate_dtor): Simplify.
+ (implicitly_declare_fn): Add support for destructors.
+ * parser.c (cp_parser_lookup_name): Lazily create destructors, if
+ necessary.
+ * pt.c (check_explicit_specialization): Don't use
+ TYPE_HAS_DESTRUCTOR.
+ (instantiate_class_template): Likewise.
+ * ptree.c (cxx_print_type): Don't print TYPE_HAS_DESTRUCTOR.
+ * rtti.c (emit_support_tinfos): Robustify.
+ * search.c (lookup_fnfields_1): Lazily create destructors.
+ * typeck.c (build_class_member_access_expr): Remove
+ PSEUDO_DTOR_EXPR handling.
+ (lookup_destructor): Likewise.
+
+2005-02-08 Kazu Hirata <kazu@cs.umass.edu>
+
+ * cxx-pretty-print.c, cxx-pretty-print.h, decl.h: Update
+ copyright.
+
+2005-02-07 Mark Mitchell <mark@codesourcery.com>
+
+ * parser.c (cp_lexer_start_debugging): Avoid arithmetic operations
+ on boolean variables.
+ (cp_lexer_stop_debugging): Likewise.
+
+2005-02-03 Giovanni Bajo <giovannibajo@gcc.gnu.org>
+
+ PR c++/17401
+ * parser.c (cp_parser_pure_specifier): Emit a specific error
+ message with an invalid pure specifier.
+ * decl2.c (grok_function_init): Remove.
+ (grokfield): An initializer for a method is a always a pure
+ specifier.
+
+2005-02-02 Matt Austern <austern@apple.com>
+
+ PR c++/19628
+ * cp-tree.h (builtin_valid_in_constant_expr_p): Declare.
+ * parser.c (cp_parser_postfix_expression): Accept function call in
+ constant expression if builtin_valid_in_constant_expr_p is true
+ for that function.
+ * pt.c (value_dependent_expression_p): Handle CALL_EXPRs properly.
+ * semantics.c (finish_id_expression): Accept function call in constant
+ expression if builtin_valid_in_constant_expr_p is true for that
+ function.
+ * tree.c (builtin_valid_in_constant_expr_p): New.
+
+2005-02-02 Volker Reichelt <reichelt@igpm.rwth-aachen.de>
+
+ PR c++/17413
+ * pt.c (check_instantiated_args): Improve error message.
+ Fix logic when to print its second part.
+
+2005-02-02 Volker Reichelt <reichelt@igpm.rwth-aachen.de>
+
+ * cp-tree.h (complete_type_or_else): Remove macro.
+ (complete_type_or_diagnostic): Rename to complete_type_or_else
+ and remove last argument.
+ * typeck.c (complete_type_or_diagnostic): Rename to
+ complete_type_or_else and remove last argument.
+
+2005-02-02 Volker Reichelt <reichelt@igpm.rwth-aachen.de>
+
+ * cp-tree.h (commonparms): Remove prototype.
+ (convert_arguments): Likewise.
+ (PFN_FROM_PTRMEMFUNC): Remove.
+ * typeck.c (commonparms): Make static.
+ (convert_arguments): Add prototype. Make static.
+ (PFN_FROM_PTRMEMFUNC): Replace by pfn_from_ptrmemfunc.
+
+2005-01-31 Mark Mitchell <mark@codesourcery.com>
+
+ * parser.c (cp_parser_primary_expression): Don't complain about
+ floating-point literals in integral constant expressions when
+ !pedantic.
+
+2005-02-01 Alexandre Oliva <aoliva@redhat.com>
+
+ * parser.c (cp_parser_template_id): Revert comment patch too.
+
+ PR c++/18757
+ PR c++/19366
+ PR c++/19499
+ * parser.c (cp_parser_template_id): Revert 2004-12-09's patch.
+ Issue an error when creating the template id.
+ * pt.c (fn_type_unification): Return early if the explicit
+ template arg list is an error_mark_node.
+
+2005-01-31 Mark Mitchell <mark@codesourcery.com>
+
+ * decl.c (build_enumerator): Do not issue duplicate error messages
+ about invalid enumeration constants.
+ * parser.c (cp_parser_non_integral_constant_expression): Always
+ set parser->non_integral_constant_expression_p.
+ (cp_parser_primary_expression): Add cast_p parameter. Issue
+ errors about invalid uses of floating-point literals in
+ cast-expressions.
+ (cp_parser_postfix_expression): Add cast_p parameter.
+ (cp_parser_open_square_expression): Pass it.
+ (cp_parser_parenthesized_expression_list): Add cast_p parameter.
+ (cp_parser_unary_expression): Likewise.
+ (cp_parser_new_placement): Pass it.
+ (cp_parser_direct_new_declarator): Likewise.
+ (cp_parser_new_initializer): Likewise.
+ (cp_parser_cast_expression): Add cast_p parameter.
+ (cp_parser_binary_expression): Likewise.
+ (cp_parser_question_colon_clause): Likewise.
+ (cp_parser_assignment_expression): Likewise.
+ (cp_parser_expression): Likewise.
+ (cp_parser_constant_expression): If an integral constant
+ expression is invalid, return error_mark_node.
+ (cp_parser_expression_statement): Pass cast_p.
+ (cp_parser_condition): Likewise.
+ (cp_parser_iteration_statement): Likewise.
+ (cp_parser_jump_statement): Likewise.
+ (cp_parser_mem_initializer): Likewise.
+ (cp_parser_template_argument): Likewise.
+ (cp_parser_parameter_declaration): Likewise.
+ (cp_parser_initializer): Likewise.
+ (cp_parser_throw_expression): Likewise.
+ (cp_parser_attribute_list): Likewise.
+ (cp_parser_simple_cast_expression): Likewise.
+ (cp_parser_functional_cast): Likewise.
+ (cp_parser_late_parsing_default_args): Likewise.
+ (cp_parser_sizeof_operand): Save/restore
+ non_integral_constant_expression_p.
+
+2005-01-31 Mike Stump <mrs@apple.com>
+
+ * parser.c (cp_lexer_new_main): Get the first token, first, before
+ doing anything.
+
+2005-01-31 Mark Mitchell <mark@codesourcery.com>
+
+ * decl.c (start_decl): Add missing parentheses.
+
2005-01-30 Mark Mitchell <mark@codesourcery.com>
+ PR c++/19555
+ * cp-tree.h (DECL_USE_TEMPLATE): Expand documentation.
+ * decl.c (duplicate_decls): Do not discard
+ DECL_IMPLICIT_INSTANTIATION when merging declarations.
+ (start_decl): Do not SET_DECL_TEMPLATE_SPECIALIZATION for
+ variables that do not have DECL_USE_TEMPLATE.
+
PR c++/19395
* decl.c (grokdeclarator): Refactor code so that qualified names
are never allowed as the declarator in a typedef.
PR c++/19349
* name-lookup.c (pushdecl_namespace_level): Avoid accessing free'd
- memory.
+ memory.
2005-01-28 Mark Mitchell <mark@codesourcery.com>
* typeck.c (comptypes): Handle return code from objc_comptypes
correctly.
-
+
2005-01-19 Kazu Hirata <kazu@cs.umass.edu>
* cp-tree.h, name-lookup.h: Remove unused prototypes.
names.
(cp_parser_member_declaration): Adjust call to make_id_declarator.
(cp_parser_check_declarator_template_parameters): Do not expect a
- SCOPE_REF.
-
+ SCOPE_REF.
+
* decl.c (duplicate_decls): Call ggc_free on declarations we will
not be needing any longer.
* call.c (build_this): In templates, do not bother with
build_unary_op.
* typeck.c (unary_complex_lvalue): In a template, always refuse
- simplifications.
+ simplifications.
PR c++/18492
* cp-gimplify.c (cp_genericize): Relax assertion.
PR c++/18257
* rtti.c (emit_support_tinfos): On systems without weak symbols,
- emit the runtime library type-info objects as non-COMDAT.
+ emit the runtime library type-info objects as non-COMDAT.
2004-12-21 Mark Mitchell <mark@codesourcery.com>
* error.c (dump_expr): <STRING_CST case> Add parens, if needed.
* cp-tree.def (TEMPLATE_TYPE_PARM,
- BOUND_TEMPLATE_TEMPLATE_PARM, TYPE_OF_TYPE, TYPENAME_TYPE): Reorder
+ BOUND_TEMPLATE_TEMPLATE_PARM, TYPE_OF_TYPE, TYPENAME_TYPE): Reorder
for better code efficiency.
* cp-tree.h (CLASS_TYPE_P): Short circuit IS_AGGR_TYPE check.
(CAN_HAVE_FULL_LANG_DECL_P): Reorder for better optimization.
(INTEGRAL_CODE_P, CP_INTEGRAL_TYPE_P,
INTEGRAL_OR_ENUMERATION_TYPE_P, SCALAR_TYPE_P,
CP_AGGREGATE_TYPE_P, TYPE_PTROB_P, TYPE_REF_OBJ_P,
- TYPE_PTROBV_P): Likewise.
+ TYPE_PTROBV_P): Likewise.
PR c++/18975
* method.c (do_build_copy_constructor): Refactor. Don't const
PR c++/19044
* decl.c (make_rtl_for_nonlocal_decl): Use
set_builtin_user_assembler_name.
-
+
2004-12-19 Mark Mitchell <mark@codesourcery.com>
* cp-tree.h (note_decl_for_pch): New function.
PR c++/18514
* name-lookup.c (do_nonmember_using_decl): A real function
declaration takes precedence over an anticipated declaration.
-
+
2004-12-09 Volker Reichelt <reichelt@igpm.rwth-aachen.de>
* parser.c (cp_parser_member_declaration): Fix comment typo.
2004-12-08 Kriang Lerdsuwanakij <lerdsuwa@users.sourceforge.net>
PR c++/18100
- * decl.c (lookup_and_check_tag): Diagnose nested class with
+ * decl.c (lookup_and_check_tag): Diagnose nested class with
the same name as enclosing class.
2004-12-08 Nathan Sidwell <nathan@codesourcery.com>
make_typename_type.
(tsubst_decl): Do not pre-substitute the type of the declaration.
(tsubst): Hand off declarations more quickly. Adjust call to
- make_typename_type.
+ make_typename_type.
PR c++/18512
* parser.c (cp_parser_postfix_dot_deref_expression): Robustify.
(lookup_type_scope): Adjust declaration.
* decl.c (lookup_and_check_tag, xref_tag, xref_tag_from_type):
Change bool parameter GLOBALIZED to TAG_SCOPE parameter SCOPE.
- (start_enum): Likewise. Add assertion test that NAME is
+ (start_enum): Likewise. Add assertion test that NAME is
IDENTIFIER_NODE. Use anonymous name for dummy ENUMERAL_TYPE in
case of error.
* cp-tree.h (xref_tag, xref_tag_from_type): Adjust declarations.
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 Adam Nemet <anemet@lnxw.com>
- PR middle-end/18160
+ PR middle-end/18160
* typeck.c (cxx_mark_addressable): Issue an error if address of an
explicit register variable is requested.
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.
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,
+ * 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):
+ * 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):
+ * 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,
+ * 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
+ * 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
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.
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
(build_reinterpret_cast_1): Add for_reinterpret_cast_p parameter.
Allow function pointer conversions that DR195 suggests.
(build_reinterpret_cast, build_c_cast): Update
- build_reinterpret_cast_1 calls.
+ build_reinterpret_cast_1 calls.
2004-10-20 Kazu Hirata <kazu@cs.umass.edu>
* parser.c (cp_parser_simple_declaration): Do not diagnose invalid
type names if we have already found a valid type.
(cp_parser_member_declaration): Likewise.
-
+
PR c++/17916
* parser.c (cp_parser_member_specification_opt): Handle
CPP_PRAGMA.
* pt.c (struct pair_fn_data): Use pointer_set_t, not htab_t
(for_each_template_parm): Convert from htab_t to pointer_set_t.
* tree.c (cp_walk_subtrees): Last argument is pointer_set_t* now.
-
+
2004-10-13 Andrew Pinski <pinskia@physics.uc.edu>
PR c++/17661
2004-10-11 Mark Mitchell <mark@codesourcery.com>
PR c++/15786
- * parser.c (cp_parser_declarator): Add member_p parameter.
+ * parser.c (cp_parser_declarator): Add member_p parameter.
(cp_parser_condition): Adjust calls to cp_parser_declarator.
(cp_parser_explicit_instantiation): Likewise.
(cp_parser_init_declarator): Likewise.
2004-10-10 Gabriel Dos Reis <gdr@integrable-solutions.net>
Convert diagnostics to use quoting flag q 7/n
- * typeck.c (composite_pointer_type_r, composite_pointer_type,
- cxx_sizeof_or_alignof_type, cxx_sizeof_or_alignof_expr,
- string_conv_p, build_class_member_access_expr,
- build_class_member_access_expr, lookup_destructor,
- finish_class_member_access_expr, build_indirect_ref,
- get_member_function_from_ptrfunc, build_function_call,
- convert_arguments, build_binary_op, pointer_diff, build_unary_op,
- check_for_casting_away_constness, build_static_cast,
- build_reinterpret_cast, build_const_cast, build_c_cast,
- build_modify_expr, get_delta_difference, build_ptrmemfunc,
- dubious_conversion_warnings, convert_for_assignment,
- convert_for_initialization,
- maybe_warn_about_returning_address_of_local, check_return_expr):
+ * typeck.c (composite_pointer_type_r, composite_pointer_type,
+ cxx_sizeof_or_alignof_type, cxx_sizeof_or_alignof_expr,
+ string_conv_p, build_class_member_access_expr,
+ build_class_member_access_expr, lookup_destructor,
+ finish_class_member_access_expr, build_indirect_ref,
+ get_member_function_from_ptrfunc, build_function_call,
+ convert_arguments, build_binary_op, pointer_diff, build_unary_op,
+ check_for_casting_away_constness, build_static_cast,
+ build_reinterpret_cast, build_const_cast, build_c_cast,
+ build_modify_expr, get_delta_difference, build_ptrmemfunc,
+ dubious_conversion_warnings, convert_for_assignment,
+ convert_for_initialization,
+ maybe_warn_about_returning_address_of_local, check_return_expr):
Use quoting marks.
- * typeck2.c (error_not_base_type, readonly_error,
- abstract_virtuals_error, cxx_incomplete_type_diagnostic,
- store_init_value, digest_init, build_x_arrow,
+ * typeck2.c (error_not_base_type, readonly_error,
+ abstract_virtuals_error, cxx_incomplete_type_diagnostic,
+ store_init_value, digest_init, build_x_arrow,
build_m_component_ref, require_complete_eh_spec_types): Likewise.
- * tree.c (cp_build_qualified_type_real,
+ * tree.c (cp_build_qualified_type_real,
handle_java_interface_attribute, handle_init_priority_attribute):
Likewise.
- * semantics.c (finish_asm_stmt, finish_non_static_data_member,
- finish_pseudo_destructor_expr,
- check_template_template_default_arg, begin_class_definition,
- finish_base_specifier, qualified_name_lookup_error,
+ * semantics.c (finish_asm_stmt, finish_non_static_data_member,
+ finish_pseudo_destructor_expr,
+ check_template_template_default_arg, begin_class_definition,
+ finish_base_specifier, qualified_name_lookup_error,
finish_id_expression, finish_typeof): Likewise.
* search.c (lookup_base, check_final_overrider,
PR c++/17685
* decl.c (grokdeclarator): Disallow declarations of operators as
non-functions.
-
+
2004-10-08 Volker Reichelt <reichelt@igpm.rwth-aachen.de>
PR c++/17868
2004-10-05 Gabriel Dos Reis <gdr@integrable-solutions.net>
Convert diagnostics to use quoting flag q 6/n
- * pt.c (finish_member_template_decl, check_specialization_scope,
- maybe_process_partial_specialization, determine_specialization,
- check_explicit_specialization, maybe_check_template_type,
- process_partial_specialization, check_default_tmpl_args,
- push_template_decl_real, redeclare_class_template,
- convert_nontype_argument, coerce_template_parms,
- lookup_template_class, push_tinst_level,
- instantiate_class_template, tsubst_arg_types,
- tsubst_function_type, tsubst, tsubst_qualified_id,
- tsubst_copy_and_build, check_instantiated_args,
- do_decl_instantiation, do_type_instantiation,
- invalid_nontype_parm_type_p, check_specialization_namespace,
- convert_template_argument, determine_specialization,
- check_template_shadow, tsubst_decl
+ * pt.c (finish_member_template_decl, check_specialization_scope,
+ maybe_process_partial_specialization, determine_specialization,
+ check_explicit_specialization, maybe_check_template_type,
+ process_partial_specialization, check_default_tmpl_args,
+ push_template_decl_real, redeclare_class_template,
+ convert_nontype_argument, coerce_template_parms,
+ lookup_template_class, push_tinst_level,
+ instantiate_class_template, tsubst_arg_types,
+ tsubst_function_type, tsubst, tsubst_qualified_id,
+ tsubst_copy_and_build, check_instantiated_args,
+ do_decl_instantiation, do_type_instantiation,
+ invalid_nontype_parm_type_p, check_specialization_namespace,
+ convert_template_argument, determine_specialization,
+ check_template_shadow, tsubst_decl
instantiate_pending_templates): Use quoting marks.
2004-10-05 Nathan Sidwell <nathan@codesourcery.com>
2004-10-04 Gabriel Dos Reis <gdr@integrable-solutions.net>
Convert diagnostics to use quoting flag q 5/n
- * parser.c (cp_parser_name_lookup_error,
- cp_parser_diagnose_invalid_type_name,
- cp_parser_primary_expression, cp_parser_unqualified_id,
- cp_parser_nested_name_specifier_opt, cp_parser_labeled_statement,
- cp_parser_jump_statement, cp_parser_simple_declaration,
- cp_parser_decl_specifier_seq, cp_parser_mem_initializer_id,
- cp_parser_type_parameter, cp_parser_template_id,
- cp_parser_template_name, cp_parser_direct_declarator,
- cp_parser_parameter_declaration_list, cp_parser_class_head,
- cp_parser_base_specifier, cp_parser_lookup_name,
- cp_parser_late_parsing_default_args,
- cp_parser_optional_template_keyword
- cp_parser_elaborated_type_specifier, cp_parser_check_class_key,
+ * parser.c (cp_parser_name_lookup_error,
+ cp_parser_diagnose_invalid_type_name,
+ cp_parser_primary_expression, cp_parser_unqualified_id,
+ cp_parser_nested_name_specifier_opt, cp_parser_labeled_statement,
+ cp_parser_jump_statement, cp_parser_simple_declaration,
+ cp_parser_decl_specifier_seq, cp_parser_mem_initializer_id,
+ cp_parser_type_parameter, cp_parser_template_id,
+ cp_parser_template_name, cp_parser_direct_declarator,
+ cp_parser_parameter_declaration_list, cp_parser_class_head,
+ cp_parser_base_specifier, cp_parser_lookup_name,
+ cp_parser_late_parsing_default_args,
+ cp_parser_optional_template_keyword
+ cp_parser_elaborated_type_specifier, cp_parser_check_class_key,
cp_parser_check_access_in_redeclaration): Use quoting marks.
- * name-lookup.c (supplement_binding, pushdecl,
- check_for_out_of_scope_variable, validate_nonmember_using_decl,
- do_nonmember_using_decl, lookup_tag, set_decl_namespace,
- push_namespace, do_namespace_alias, do_using_directive,
+ * name-lookup.c (supplement_binding, pushdecl,
+ check_for_out_of_scope_variable, validate_nonmember_using_decl,
+ do_nonmember_using_decl, lookup_tag, set_decl_namespace,
+ push_namespace, do_namespace_alias, do_using_directive,
ambiguous_decl, lookup_namespace_name, add_function): Likewise.
* method.c (use_thunk): Likewise.
- * lex.c (unqualified_name_lookup_error,
+ * lex.c (unqualified_name_lookup_error,
unqualified_fn_lookup_error): Likewise.
2004-10-04 Gabriel Dos Reis <gdr@integrable-solutions.net>
Convert diagnostics to use quoting flag q 4/n
- * except.c (decl_is_java_type, build_throw,
- is_admissible_throw_operand, check_handlers_1, check_handlers):
+ * except.c (decl_is_java_type, build_throw,
+ is_admissible_throw_operand, check_handlers_1, check_handlers):
Use quoting formats.
* friend.c (add_friend, make_friend_class, do_friend): Likewise.
- * init.c (sort_mem_initializers, emit_mem_initializers,
- member_init_ok_or_else, expand_member_init, is_aggr_type,
+ * init.c (sort_mem_initializers, emit_mem_initializers,
+ member_init_ok_or_else, expand_member_init, is_aggr_type,
build_offset_ref, build_java_class_ref): Likewise.
2004-10-03 Gabriel Dos Reis <gdr@integrable-solutions.net>
* decl.c (pop_label, duplicate_decls, redeclaration_error_message,
redeclaration_error_message, lookup_label, check_goto,
make_typename_type, make_unbound_class_template,
- fixup_anonymous_aggr, check_tag_decl, start_decl, start_decl_1,
- grok_reference_init, layout_var_decl, maybe_commonize_var,
- check_for_uninitialized_const_var, reshape_init_array,
+ fixup_anonymous_aggr, check_tag_decl, start_decl, start_decl_1,
+ grok_reference_init, layout_var_decl, maybe_commonize_var,
+ check_for_uninitialized_const_var, reshape_init_array,
reshape_init, check_initializer, cp_finish_decl,
- member_function_or_else, bad_specifiers, grokfndecl, grokvardecl,
- check_static_variable_definition, compute_array_index_type,
- create_array_type_for_decl, check_special_function_return_type,
- grokdeclarator, check_default_argument, grokparms,
- grok_ctor_properties, grok_op_properties,
- check_elaborated_type_specifier, xref_tag, finish_enum,
- build_enumerator, check_function_type, start_preparsed_function,
+ member_function_or_else, bad_specifiers, grokfndecl, grokvardecl,
+ check_static_variable_definition, compute_array_index_type,
+ create_array_type_for_decl, check_special_function_return_type,
+ grokdeclarator, check_default_argument, grokparms,
+ grok_ctor_properties, grok_op_properties,
+ check_elaborated_type_specifier, xref_tag, finish_enum,
+ build_enumerator, check_function_type, start_preparsed_function,
store_parm_decls): Use quoting formats.
- * decl2.c (grok_array_decl, delete_sanity, check_member_template,
- check_java_method, check_classfn, finish_static_data_member_decl,
+ * decl2.c (grok_array_decl, delete_sanity, check_member_template,
+ check_java_method, check_classfn, finish_static_data_member_decl,
grokfield, grokbitfield, grok_function_init,
build_anon_union_vars, coerce_new_type, coerce_delete_type,
check_default_args): Likewise.
header that was implicitly extern "C".
(cp_parser_declaration_seq_opt): Push/pop lang context as
required by the token's and parser's implicit_extern_c.
-
+
2004-09-27 Mark Mitchell <mark@codesourcery.com>
PR c++/17585
(dfs_depth_post, dfs_depth_q): Remove.
(find_final_overrider): Use number of vbase classes as depth
bound.
-
+
* cp-tree.h (types_overlap_p): Remove.
* search.c (struct overlap_info): Remove.
(dfs_check_overlap, dfs_no_overlap_yet, types_overlap_p): Remove.
-
+
* pt.c (GTB_VIA_VIRTUAL, GTB_IGNORE_TYPE): Remove.
(get_template_base_recursive): Remove. Replace with ...
(get_template_base_r): ... this.