OSDN Git Service

* typeck.c (cp_build_array_ref): Factor out from...
[pf3gnuchains/gcc-fork.git] / gcc / cp / ChangeLog
index c62f817..cd8dfd2 100644 (file)
@@ -1,3 +1,104 @@
+2010-05-13  Jason Merrill  <jason@redhat.com>
+
+       * typeck.c (cp_build_array_ref): Factor out from...
+       (build_array_ref): ...here.  Drop complain parm.
+       (build_new_op): Adjust.
+       * class.c (build_vtbl_ref_1): Adjust.
+       * decl2.c (grok_array_decl): Adjust.
+       * cp-tree.h: Adjust prototypes.
+
+2010-05-13  Jan Hubicka  <jh@suse.cz>
+
+       * decl.c (cp_finish_decl): Do not worry about used attribute.
+
+2010-05-12  Jason Merrill  <jason@redhat.com>
+
+       * typeck.c (build_array_ref): Take complain parm.
+       * cp-tree.h: Add it to prototype.
+       * call.c (build_new_op): Pass it.
+       * class.c (build_vtbl_ref): Pass it.
+       * decl2.c (grok_array_decl): Pass it.
+
+       PR bootstrap/44048
+       PR target/44099
+       * cp-tree.def (NULLPTR_TYPE): Remove.
+       * cp-tree.h (NULLPTR_TYPE_P): New.
+       (SCALAR_TYPE_P): Use it.
+       (nullptr_type_node): New.
+       (cp_tree_index): Add CPTI_NULLPTR_TYPE.
+       * decl.c (cxx_init_decl_processing): Call record_builtin_type on
+       nullptr_type_node.
+       * cvt.c (ocp_convert): Use NULLPTR_TYPE_P instead of NULLPTR_TYPE.
+       * cxx-pretty-print.c (pp_cxx_constant): Likewise.
+       * error.c (dump_type, dump_type_prefix, dump_type_suffix): Likewise.
+       * mangle.c (write_type): Likewise.
+       * name-lookup.c (arg_assoc_type): Likewise.
+       * typeck.c (build_reinterpret_cast_1): Likewise.
+       * rtti.c (typeinfo_in_lib_p): Likewise.
+       (emit_support_tinfos): Remove local nullptr_type_node.
+
+       * cp-tree.h (UNKNOWN_TYPE): Remove.
+       * decl.c (cxx_init_decl_processing): Use LANG_TYPE instead.
+       * error.c (dumy_type, dump_type_prefix, dump_type_suffix): Likewise.
+       * typeck2.c (cxx_incomplete_type_diagnostic): Likewise.
+       * class.c (instantiate_type): Check unknown_type_node rather than
+       UNKNOWN_TYPE.
+       * name-lookup.c (maybe_push_decl): Likewise.
+       * rtti.c (get_tinfo_decl_dynamic): Likewise.
+       (get_typeid): Likewise.
+       * semantics.c (finish_offsetof): Likewise.
+
+       PR c++/20669
+       * call.c (add_template_candidate_real): If deduction fails, still
+       add the template as a non-viable candidate.
+       (equal_functions): Handle template candidates.
+       (print_z_candidate): Likewise.
+       (print_z_candidates): Likewise.
+       (build_new_function_call): Likewise.
+
+       * cp-tree.h (LOOKUP_LIST_ONLY): New.
+       * call.c (add_candidates): Enforce it.
+       (build_new_method_call): Try non-list ctor if no viable list ctor.
+       (build_user_type_conversion_1): Likewise.
+
+       * call.c (add_candidates): Distinguish between type(x) and
+       x.operator type().
+       (convert_class_to_reference): Set LOOKUP_NO_CONVERSION.
+       (build_new_method_call): Give better error for conversion op.
+
+       * call.c (add_candidates): Add first_arg and return_type parms.
+       Add special constructor/conversion op handling.
+       (convert_class_to_reference): Use it.
+       (build_user_type_conversion_1): Likewise.
+       (build_op_call): Likewise.
+       (build_new_method_call): Likewise.
+       (build_new_op): Adjust.
+       (perform_overload_resolution): Adjust.
+
+2010-05-11  Paolo Carlini  <paolo.carlini@oracle.com>
+
+       PR c++/34272
+       PR c++/43630
+       PR c++/34491
+       * pt.c (process_partial_specialization): Return error_mark_node
+       in case of unused template parameters in partial specialization.
+
+2010-05-11  Jakub Jelinek  <jakub@redhat.com>
+
+       PR c++/44062
+       * semantics.c (finish_expr_stmt): Don't call mark_exp_read here...
+       * cvt.c (convert_to_void): ... but here.  If expr is a COMPOUND_EXPR,
+       look at its second operand.
+
+2010-05-10  Jason Merrill  <jason@redhat.com>
+
+       PR c++/44017
+       * semantics.c (baselink_for_fns): Revert earlier change.
+
+       PR c++/44045
+       * typeck.c (cp_build_modify_expr): Complain about assignment to
+       array from init list.
+
 2010-05-10  Fabien ChĂȘne  <fabien.chene@gmail.com>
 
        PR c++/43719