1 2010-03-03 Jason Merrill <jason@redhat.com>
4 * mangle.c: Include cgraph.h.
5 (mangle_decl): If the mangled name will change in a later
6 ABI version, make the later mangled name an alias.
7 * method.c (make_alias_for): Copy DECL_ARGUMENTS.
8 * Make-lang.in (mangle.o): Depend on cgraph.h.
10 2010-03-01 Marco Poletti <poletti.marco@gmail.com>
12 * pt.c (redeclare_class_template): Use error_n and inform_n.
14 2010-02-27 Mark Mitchell <mark@codesourcery.com>
17 * cp-tree.h (push_tinst_level): Declare.
18 (pop_tinst_level): Likewise.
19 * pt.c (push_tinst_level): Give it external linkage.
20 (pop_tinst_level): Likewise.
21 * mangle.c (mangle_decl_string): Set the source location to that
22 of the decl while mangling.
24 2010-02-27 Simon Martin <simartin@users.sourceforge.net>
27 * pt.c (redeclare_class_template): Return false if there are erroneous
30 2010-02-24 Manuel López-Ibáñez <manu@gcc.gnu.org>
32 * pt.c (push_tinst_level): Replace -ftemplate-depth- with
35 2010-02-24 Jason Merrill <jason@redhat.com>
38 * mangle.c (write_type): Give -Wabi warning for old vector mangling.
40 * class.c (layout_class_type): Don't give -Wabi warning for a bug
41 in a previous ABI version.
43 2010-02-23 Jason Merrill <jason@redhat.com>
46 * typeck2.c (digest_init_r): Accept value init of array.
48 2010-02-22 Manuel López-Ibáñez <manu@gcc.gnu.org>
51 * typeck.c (convert_arguments): Update error message.
53 2010-02-22 Mike Stump <mikestump@comcast.net>
56 * decl.c (duplicate_decls): Merge DECL_PRESERVE_P.
58 2010-02-21 Manuel López-Ibáñez <manu@gcc.gnu.org>
61 * error.c (print_instantiation_partial_context_line): New.
62 (print_instantiation_partial_context): Print at most 12 contexts,
63 skip the rest with a message.
65 2010-02-21 Dodji Seketeli <dodji@redhat.com>
68 * pt.c (lookup_template_class): Better support of specialization
69 of member of class template implicit instantiation.
71 2010-02-20 Manuel López-Ibáñez <manu@gcc.gnu.org>
74 * call.c (conversion_null_warnings): Replace -Wconversion with
76 * cvt.c (build_expr_type_conversion): Likewise.
78 2010-02-18 Jason Merrill <jason@redhat.com>
81 * class.c (create_vtable_ptr): Set DECL_PACKED if type is packed.
84 * typeck.c (cp_build_binary_op): Adapt mixed complex/non handling from
86 * cp-tree.h (WANT_VECTOR_OR_COMPLEX): Rename from WANT_VECTOR.
87 * cvt.c (build_expr_type_conversion): Allow COMPLEX_TYPE.
90 * semantics.c (finish_goto_stmt): Don't call decay_conversion.
94 * pt.c (tsubst_qualified_id): Do normal lookup in non-dependent scope.
95 (maybe_update_decl_type): New fn.
96 * parser.c (cp_parser_init_declarator): Use it.
99 * semantics.c (begin_class_definition): Don't crash on unnamed ns.
101 2010-02-17 Jason Merrill <jason@redhat.com>
104 * call.c (build_over_call): Don't create zero-sized assignments.
105 * cp-gimplify.c (cp_genericize_r): Don't remove them here.
106 * cp-objcp-common.c (cp_expr_size): Remove.
107 * cp-tree.h: Remove prototype.
110 * name-lookup.c (set_decl_namespace): Don't copy DECL_CONTEXT if the
111 decl we looked up doesn't match.
114 * cp-gimplify.c (cp_gimplify_expr) [INIT_EXPR]: Return if we don't
115 have an INIT_EXPR anymore.
118 * pt.c (convert_nontype_argument): Change assert to test.
120 2010-02-16 Jason Merrill <jason@redhat.com>
122 * cp-gimplify.c (cp_gimplify_expr): Fix error recovery.
125 * cp-gimplify.c (cp_gimplify_expr) [MODIFY_EXPR]: Use
126 VIEW_CONVERT_EXPR for conversions between structural equality types
127 that the back end can't tell are the same.
130 * tree.c (build_cplus_array_type): Set TYPE_MAIN_VARIANT to strip
131 cv-quals from element here.
132 (cp_build_qualified_type_real): Not here. Preserve typedef name.
134 2010-02-14 Jason Merrill <jason@redhat.com>
137 * semantics.c (finish_compound_literal): Use
138 cp_apply_type_quals_to_decl when creating a static variable.
140 2010-02-12 Jason Merrill <jason@redhat.com>
143 * name-lookup.h (current_binding_level): Check for null
146 2010-02-12 Jason Merrill <jason@redhat.com>
149 * tree.c (cp_tree_equal): Correct CALL_EXPR logic.
151 2010-02-12 Jakub Jelinek <jakub@redhat.com>
154 * name-lookup.c (pushdecl_maybe_friend): Check default args of t
157 2010-02-10 Jason Merrill <jason@redhat.com>
160 * semantics.c (outer_lambda_capture_p): Revert.
161 (add_capture): Only finish_member_declaration if
162 we're in the lambda class.
163 (register_capture_members): New.
164 * cp-tree.h: Declare it.
165 * parser.c (cp_parser_lambda_expression): Call it.
167 2010-02-10 Jason Merrill <jason@redhat.com>
170 * semantics.c (outer_lambda_capture_p): Use current_function_decl
171 instead of current_class_type.
173 2010-02-10 Jason Merrill <jason@redhat.com>
175 PR c++/42983, core issue 906
176 * method.c (defaultable_fn_check): Check virtualness.
178 2010-02-10 Jason Merrill <jason@redhat.com>
181 * semantics.c (maybe_add_lambda_conv_op): Set DECL_INTERFACE_KNOWN.
183 2010-02-10 Shujing Zhao <pearly.zhao@oracle.com>
185 * Make-lang.in (cp/cvt.o, cp/parser.o, cp/search.o): Depend on intl.h.
186 * cvt.c (warn_ref_binding): Wrap the messages into G_() for easy
188 * parser.c (cp_parser_postfix_expression, cp_parser_new_type_id)
189 (cp_parser_cast_expression, cp_parser_condition, cp_parser_decltype)
190 (cp_parser_parameter_declaration)
191 (cp_parser_exception_specification_opt)
192 (cp_parser_exception_declaration): Likewise.
193 * pt.c (check_default_tmpl_args): Likewise.
194 * search.c (lookup_field_r): Likewise.
196 2010-02-09 Jason Merrill <jason@redhat.com>
199 * pt.c (tsubst_copy_and_build): Propagate LAMBDA_EXPR_LOCATION.
201 2010-02-09 Jason Merrill <jason@redhat.com>
204 * decl2.c (change_return_type): New fn.
205 * semantics.c (apply_lambda_return_type): Use it.
206 * cp-tree.h: Declare it.
208 2010-02-05 Richard Guenther <rguenther@suse.de>
210 * Make-lang.in (cp/cp-lang.o): Depend on gt-cp-cp-lang.h.
211 * cp-lang.c: Include gt-cp-cp-lang.h.
212 * config-lang.in (gtfiles): Add cp/cp-lang.c.
214 2010-02-05 Dodji Seketeli <dodji@redhat.com>
217 * typeck.c (get_template_parms_of_dependent_type): Try getting
218 the template parameters fromt the type itself first.
220 2010-02-03 Jason Merrill <jason@redhat.com>
224 * mangle.c (write_unqualified_id): Split out from write_expression.
225 (write_unqualified_name): Call it.
226 (write_member_name): Likewise.
227 (write_expression): Support TEMPLATE_ID_EXPR.
228 Disambiguate operator names.
231 * mangle.c (write_type) [VECTOR_TYPE]: Change mangling with
234 2010-02-02 Jason Merrill <jason@redhat.com>
237 * decl.c (cp_finish_decl): Add local statics to cfun->local_decls.
238 * optimize.c (clone_body): Remap their initializers when making base
240 (maybe_clone_body): Complain if multiple clones aren't safe.
242 2010-01-29 Dodji Seketeli <dodji@redhat.com>
249 * cp-tree.h (NON_DEFAULT_TEMPLATE_ARGS_COUNT,
250 SET_NON_DEFAULT_TEMPLATE_ARGS_COUNT,
251 GET_NON_DEFAULT_TEMPLATE_ARGS_COUNT): New accessor macros.
252 * pt.c (coerce_template_parms, type_unification_real,
253 expand_template_argument_pack, coerce_template_parameter_pack):
254 Set the non default template args count.
255 (current_template_args): Always set non defaulted
256 template args count when compiled with --enable-checking
257 (tsubst_template_args, type_unification_real): Propagate the non
258 defaulted template args count.
259 * error.c (get_non_default_template_args_count): Renamed
260 count_non_default_template_args into this. Don't calculate the
261 non default template argument count anymore. Use the new
262 accessor macros above to get it.
263 (dump_template_argument_list, dump_type, dump_decl,
264 dump_template_parms): Adjust.
265 * parser.c (cp_parser_template_argument_list): Always set defaulted
266 template args count when compiled with --enable-checking.
268 2010-01-29 Shujing Zhao <pearly.zhao@oracle.com>
270 * decl.c (redeclaration_error_message): Wrap the return messages into
271 G_() for easy translation.
273 2010-01-28 Jason Merrill <jason@redhat.com>
276 * semantics.c (begin_class_definition): Don't use type_as_string.
278 2010-01-28 Dodji Seketeli <dodji@redhat.com>
282 * typeck.c (get_template_parms_of_dependent_type): Factorized
283 this out of incompatible_template_type_parms_p
284 (incompatible_dependent_types_p): Renamed
285 incompatible_template_type_parms_p into this. Make it detect
286 two incompatible dependent typedefs too.
287 (structural_comptypes): Use incompatible_dependent_types_p.
288 * pt.c (get_template_info):
289 Handle BOUND_TEMPLATE_TEMPLATE_PARAM.
291 2010-01-20 Janis Johnson <janis187@us.ibm.com>
292 Jason Merrill <jason@redhat.com>
294 * mangle.c (write_type): Mangle transparent record as member type.
295 * semantics.c (begin_class_definition): Recognize decimal classes
296 and set TYPE_TRANSPARENT_AGGR.
298 2010-01-20 Jason Merrill <jason@redhat.com>
301 * mangle.c (write_expression): Handle tree codes that have extra
302 arguments in the middle-end.
304 2010-01-20 Paolo Carlini <paolo.carlini@oracle.com>
307 * except.c (expand_start_catch_block): Deal correctly with
308 do_begin_catch returning error_mark_node.
310 2010-01-20 Jason Merrill <jason@redhat.com>
313 * class.c (layout_class_type): Set packed_maybe_necessary for packed
317 * semantics.c (build_lambda_object): Call mark_used on captured
321 * decl.c (grokdeclarator): Clear type_quals for a member function
322 declared using a typedef. Don't complain about adding cv-quals
323 to a function typedef in C++0x mode.
325 2010-01-20 Jakub Jelinek <jakub@redhat.com>
327 * decl.c (create_array_type_for_decl): Remove set but not used
328 variable error_msg. Remove break stmts after return stmts.
330 2010-01-19 Dodji Seketeli <dodji@redhat.com>
332 * error.c (dump_template_parms, count_non_default_template_args):
333 Revert fix of PR c++/42634.
335 2010-01-18 Dodji Seketeli <dodji@redhat.com>
338 * error.c (dump_template_parms): Use innermost template
339 arguments before calling count_non_default_template_args.
340 (count_non_default_template_args): We are being called with
341 template innermost arguments now. There is no need to ensure
344 2010-01-18 Dodji Seketeli <dodji@redhat.com>
347 * cvt.c (build_expr_type_conversion): Look through OVERLOAD.
349 2010-01-17 Dodji Seketeli <dodji@redhat.com>
352 *pt.c (tsubst_decl): Revert commit for PR c++/42697.
354 2010-01-17 Dodji Seketeli <dodji@redhat.com>
357 *pt.c (tsubst_decl): Get the arguments of a specialization from
358 the specialization template, not from the most general template.
360 2010-01-16 Jason Merrill <jason@redhat.com>
363 * semantics.c (finish_decltype_type): Within a template, treat
364 unresolved CALL_EXPR as dependent.
366 2010-01-15 Dodji Seketeli <dodji@redhat.com>
368 * error.c (dump_template_parms,count_non_default_template_args):
369 Revert changes of PR c++/42634.
371 2010-01-14 Jakub Jelinek <jakub@redhat.com>
374 * decl.c (finish_function): Don't emit -Wreturn-type warnings in
375 functions with noreturn attribute.
377 2010-01-14 Jason Merrill <jason@redhat.com>
380 * call.c (build_new_method_call): Don't free the vec here.
383 * call.c (convert_like_real): Do full decay_conversion for ck_rvalue.
385 2010-01-13 Dodji Seketeli <dodji@redhat.com>
388 * error.c (dump_template_parms): Use innermost template
389 arguments before calling count_non_default_template_args.
390 (count_non_default_template_args): We are being called with
391 template innermost arguments now. There is no need to ensure
394 2010-01-07 Dodji Seketeli <dodji@redhat.com>
397 * pt.c (unify_pack_expansion): In non-deduced contexts, re-use template
398 arguments that were previously deduced.
400 2010-01-05 Jason Merrill <jason@redhat.com>
402 * pt.c (unify_pack_expansion): Handle deduction from init-list.
403 * call.c (build_over_call): Don't complain about it.
405 2010-01-04 Jason Merrill <jason@redhat.com>
408 * pt.c (tsubst_decl): Don't apply type attributes in place.
411 * semantics.c (describable_type): Remove decltype comment and
416 Copyright (C) 2010 Free Software Foundation, Inc.
418 Copying and distribution of this file, with or without modification,
419 are permitted in any medium without royalty provided the copyright
420 notice and this notice are preserved.