1 2004-01-11 Ian Lance Taylor <ian@wasabisystems.com>
4 * parser.c (cp_parser_decl_specifier_seq): If the first decl_spec
5 is error_mark_node, don't add any more decl_specs.
6 (cp_parser_init_declarator): After committing to a declaration, if
7 the decl_specifiers start with error_mark_node, issue an error and
8 change the type to "int".
10 2004-01-09 Nathanael Nerode <neroden@gcc.gnu.org>
13 * Make-lang.in: Copy gcc.1 to g++.1 rather than using .so.
15 2004-01-10 Giovanni Bajo <giovannibajo@gcc.gnu.org>
19 * pt.c (tsubst): Substitution must fail if we are attempting to
20 create an array with element type that is an abstract class type.
21 * decl.c (cp_finish_decl): Strip pointers and array types recursively
22 before calling abstract_virtuals_error.
24 2004-01-09 Alexandre Oliva <aoliva@redhat.com>
26 * name-lookup.c (qualified_lookup_using_namespace): Consider
27 strong using directives even if we've already found a binding.
29 2004-01-09 Mark Mitchell <mark@codesourcery.com>
31 * cp-tree.h (cxx_expand_expr): Change prototype.
32 * expr.c (cxx_expand_expr): Add alt_rtl parameter.
34 2004-01-08 Giovanni Bajo <giovannibajo@gcc.gnu.org>
37 * pt.c (value_dependent_expression_p): Handle COMPONENT_REFs by
38 looking into them recursively. They can be there because of the
39 new __offsetof__ extension.
41 2004-01-07 Zack Weinberg <zack@codesourcery.com>
43 * parser.c (cp_parser_save_member_function_body): Mark the
46 2004-01-05 Mark Mitchell <mark@codesourcery.com>
49 * class.c (build_clone): Copy type attributes from the original
50 function to the clone.
53 * class.c (build_vtbl_ref_1): Do not unconditionally mark vtable
54 references as constant.
57 * parser.c (cp_parser_explicit_instantiation): Improve error
59 (cp_parser_require): Improve indication of the error location.
62 * parser.c (cp_parser_class_head): Reorder logic to check for
63 invalid qualification.
65 2004-01-04 Mark Mitchell <mark@codesourcery.com>
68 * name-lookup.c (lookup_using_namespace): Remove spacesp
70 (unqualified_namespace_lookup): Likewise.
71 (lookup_qualified_name): Adjust accordingly.
72 (lookup_name_real): Likewise.
73 (lookup_arg_dependent): Do not eliminate the namespace of the
74 functions found by unqualified name lookup unless that is the
77 2004-01-04 Andrew Pinski <pinskia@physics.uc.edu>
79 * semantics.c (push_deferring_access_checks): Fix format.
80 (resume_deferring_access_checks): Likewise.
81 (stop_deferring_access_checks): Likewise.
82 (pop_deferring_access_checks): Likewise.
83 (get_deferred_access_checks): Likewise.
84 (pop_to_parent_deferring_access_checks): Likewise.
85 (perform_deferred_access_checks): Likewise.
86 (perform_or_defer_access_check): Likewise.
88 2004-01-04 Richard Henderson <rth@redhat.com>
90 * call.c (build_over_call): Don't create a save_expr of an
91 aggregate, but rather its address.
93 2004-01-04 Mark Mitchell <mark@codesourcery.com>
96 * parser.c (cp_parser_postfix_expression): Allow "." to appear in
97 an offsetof expression.
99 * parser.c (cp_parser_parameter_declaration): Fix comment.
102 * call.c (CHECK_COPY_CONSTRUCTOR_P): New macro.
103 (reference_binding): Set it when appropriate.
104 (build_temp): New function, split out from ...
105 (convert_like_real): ... here. Honor CHECK_COPY_CONSTRUCTOR_P.
106 (initialize_reference): Likewise.
109 * parser.c (cp_parser): Add in_type_id_in_expr_p.
110 (cp_parser_new): Initialize it.
111 (cp_parser_postfix_expression): Set it.
112 (cp_parser_sizeof_operand): Likewise.
113 (cp_parser_parameteR_declaration): Do not commit early to tenative
114 parsers when in_type_id_in_expr_p is set.
116 2004-01-03 Kriang Lerdsuwanakij <lerdsuwa@users.sourceforge.net>
119 * parser.c (cp_parser_template_argument): Don't call
120 make_unbound_class_template directly.
121 (cp_parser_lookup_name): Don't extract TEMPLATE_DECL from
122 UNBOUND_CLASS_TEMPLATE tree node.
124 2004-01-02 Richard Sandiford <rsandifo@redhat.com>
127 * method.c (use_thunk): Pass the CALL_EXPR through force_target_expr.
129 2004-01-02 Kriang Lerdsuwanakij <lerdsuwa@users.sourceforge.net>
132 * cp-tree.h (DECL_UNBOUND_CLASS_TEMPLATE_P): New macro.
133 (DECL_FUNCTION_TEMPLATE_P): Use it.
134 (DECL_CLASS_TEMPLATE_P): Likewise.
135 * parser.c (cp_parser_lookup_name): Add is_template parameter.
136 (cp_parser_type_parameter): Adjust call to cp_parser_lookup_name.
137 (cp_parser_template_name): Likewise.
138 (cp_parser_elaborated_type_specifier): Likewise.
139 (cp_parser_namespace_name): Likewise.
140 (cp_parser_class_name): Likewise.
141 (cp_parser_lookup_name_simple): Likewise.
143 See ChangeLog.3 for earlier changes.