OSDN Git Service

* lex.c (handle_pragma_interface): Don't copy the filename.
[pf3gnuchains/gcc-fork.git] / gcc / cp / ChangeLog
index 4c0d919..ce147f7 100644 (file)
@@ -1,3 +1,165 @@
+2008-03-24  Tom Tromey  <tromey@redhat.com>
+
+       * lex.c (handle_pragma_interface): Don't copy the filename.
+       (handle_pragma_implementation): Copy filename using xstrdup.
+
+2008-03-21  Paolo Carlini  <pcarlini@suse.de>
+
+       * cp-tree.h (IS_AGGR_TYPE): Rename to MAYBE_CLASS_TYPE_P.
+       (SET_IS_AGGR_TYPE): Rename to SET_CLASS_TYPE_P.
+       (IS_AGGR_TYPE_CODE): Rename to RECORD_OR_UNION_CODE_P.
+       (PROMOTES_TO_AGGR_TYPE): Remove.
+       (CLASS_TYPE_P, TYPE_NON_AGGREGATE_CLASS): Adjust.
+       * typeck.c (unary_complex_lvalue, build_modify_expr,
+       convert_for_initialization): Adjust.
+       * init.c (is_aggr_type): Remove.
+       (is_class_type): Add.
+       (build_offset_ref, build_new_1, build_vec_delete_1, build_vec_init,
+       build_delete): Adjust.
+       * lex.c (make_aggr_type): Remove.
+       (make_class_type): Add.
+       (cxx_make_type): Adjust.
+       * class.c (finish_struct_1, fixed_type_or_null, is_empty_class):
+       Adjust.
+       * decl.c (build_typename_type, make_typename_type,
+       make_unbound_class_template, cxx_init_decl_processing,
+       check_tag_decl, groktypename, start_decl_1, layout_var_decl,
+       check_initializer, cp_finish_decl, build_ptrmemfunc_type, grokparms,
+       grok_op_properties, xref_tag, check_function_type): Adjust.
+       * call.c (check_dtor_name, standard_conversion, implicit_conversion,
+       add_builtin_candidate, add_builtin_candidates,
+       build_user_type_conversion_1, convert_like_real, build_cxx_call,
+       is_subseq, compare_ics): Adjust.
+       * method.c (use_thunk): Adjust.
+       * rtti.c (build_dynamic_cast_1, create_pseudo_type_info,
+       create_tinfo_types): Adjust.
+       * cvt.c (cp_convert_to_pointer, convert_to_pointer_force,
+       build_up_reference, convert_to_reference, convert_from_reference,
+       ocp_convert, build_expr_type_conversion): Adjust.
+       * tree.c (bind_template_template_parm, error_type): Adjust.
+       * dump.c (cp_dump_tree): Adjust.
+       * search.c (lookup_member): Adjust.
+       * friend.c (make_friend_class, do_friend): Adjust.
+       * typeck2.c (store_init_value, process_init_constructor_array,
+       process_init_constructor_record, build_x_arrow, build_m_component_ref,
+       build_functional_cast): Adjust.
+       * pt.c (finish_member_template_decl, process_template_parm,
+       lookup_template_class, tsubst_function_type, tsubst,
+       tsubst_copy_and_build, get_template_base, bt_instantiate_type_proc):
+       Adjust.
+       * semantics.c (begin_class_definition, finish_base_specifier,
+       finish_typeof, cxx_omp_predetermined_sharing, finish_decltype_type):
+       Adjust.
+       * name-lookup.c (constructor_name_p, push_overloaded_decl,
+       do_class_using_decl, lookup_qualified_name,
+       maybe_process_template_type_declaration): Adjust.
+       * decl2.c (grok_array_decl, check_member_template,
+       constrain_class_visibility): Adjust.
+       * parser.c (cp_parser_class_name): Adjust.
+
+2008-03-18  Paolo Bonzini  <bonzini@gnu.org>
+
+        * cp-lang.c (LANG_HOOKS_REDUCE_BIT_FIELD_OPERATIONS): Delete.
+       
+2008-03-17  Jason Merrill  <jason@redhat.com>
+
+       PR c++/35548
+       * call.c (reference_binding): Check LOOKUP_NO_TEMP_BIND when binding
+       a temp directly to a reference as per DR391.
+
+2008-03-12  Richard Guenther  <rguenther@suse.de>
+
+       PR c++/35469
+       Revert:
+       2008-02-04  Richard Guenther  <rguenther@suse.de>
+
+        PR java/35035
+        * decl.c (record_builtin_java_type): Make jboolean a
+        integer type again where its mode doesn't match that of bool.
+
+       2008-01-25  Richard Guenther  <rguenther@suse.de>
+
+        PR c++/33887
+        * decl.c (record_builtin_java_type): Make __java_boolean
+        a variant of bool.
+        * typeck.c (structural_comptypes): Move TYPE_FOR_JAVA check
+        after TYPE_MAIN_VARIANT check.
+
+2008-03-10  Jakub Jelinek  <jakub@redhat.com>
+
+       PR c++/35328
+       * semantics.c (finish_omp_clauses): Look through NOP_EXPR even
+       if errorcount.
+
+       PR c++/35337
+       * semantics.c (finish_omp_clauses): Use %qD instead of %qE for
+       DECL_P in not a variable and appears more than once error messages.
+
+2008-03-07  Paolo Bonzini  <bonzini@gnu.org>
+
+       Revert:
+
+       2008-02-06  Douglas Gregor  <doug.gregor@gmail.com>
+
+       PR c++/35049
+       PR c++/35096
+       * typeck.c (structural_comptypes): Call cp_comptypes.
+       (comptypes): New; called from the C/C++ common bits to perform
+       strict checks.
+       (cp_comptypes): Renamed from comptypes, which is already used,
+       with a different signature, by the C++ front end.
+       (build_reinterpret_cast_1): Call cp_comptypes.
+       (ptr_reasonably_similar): Ditto.
+       * decl.c (decls_match): Ditto.
+       * cvt.c (convert_to_reference): Ditto.
+       * cp-tree.h (same_type_p): Ditto.
+       (same_or_base_type_p): Ditto.
+       (comptypes): Rename to cp_comptypes.
+       * pt.c (canonical_type_parameter): Call cp_comptypes.
+
+2008-03-07  Paolo Bonzini  <bonzini@gnu.org>
+
+       * cp-objcp-common.c (cxx_types_compatible_p): Remove obsolete
+       test for equivalence between pointer and references.
+
+2008-03-02  Manuel Lopez-Ibanez  <manu@gcc.gnu.org>
+
+       PR 24924
+       * class.c (finish_struct_anon): Use permerror instead of pedwarn.
+       (check_field_decls): Likewise.
+       (note_name_declared_in_class): Likewise.
+       * call.c (build_new_op): Likewise.
+       (convert_like_real): Likewise.
+       (build_over_call): Likewise.
+       * lex.c (unqualified_fn_lookup_error): Likewise.
+       * parser.c (cp_parser_template_id): Likewise.
+       * cvt.c (warn_ref_binding): Likewise.
+       (convert_to_reference): Likewise.
+       (ocp_convert): Likewise.
+       (convert_to_void): Use error instead of pedwarn.
+       * error.c (cp_cpp_error): Use pedantic_warning_kind.
+       * decl.c (compute_array_index_type): Use constant_expression_error.
+       
+2008-03-01  Douglas Gregor  <doug.gregor@gmail.com>
+
+       * parser.c (cp_lexer_next_token_is_decl_specifier_keyword): Note
+       that auto is either a storage class or a simple type specifier,
+       depending on the dialect.
+       (cp_parser_decl_specifier_seq): Complain about `auto' as a storage
+       specifier in C++98 mode, error in C++0x mode (since we don't
+       support auto as a type specifier, yet).
+       (cp_parser_storage_class_specifier_opt): Don't treat `auto' as a
+       storage specifier in C++0x mode.
+       (cp_parser_simple_type_specifier): Parse `auto' as a
+       simple-type-specifier, but error because we don't support it yet.
+
+2008-02-29  Manuel Lopez-Ibanez  <manu@gcc.gnu.org>
+
+       * parser.c (cp_parser_nonclass_name): New.
+       (cp_parser_pseudo_destructor_name): Use it instead of
+       cp_parser_type_name.
+       (cp_parser_type_name): Move code to cp_parser_nonclass_name.
+
 2008-02-29  Tom Tromey  <tromey@redhat.com>
 
        * parser.c (struct cp_token) <input_file_stack_index>: Remove.