1 2010-02-22 Mike Stump <mikestump@comcast.net>
4 * decl.c (duplicate_decls): Merge DECL_PRESERVE_P.
6 2010-02-21 Manuel López-Ibáñez <manu@gcc.gnu.org>
9 * error.c (print_instantiation_partial_context_line): New.
10 (print_instantiation_partial_context): Print at most 12 contexts,
11 skip the rest with a message.
13 2010-02-21 Dodji Seketeli <dodji@redhat.com>
16 * pt.c (lookup_template_class): Better support of specialization
17 of member of class template implicit instantiation.
19 2010-02-20 Manuel López-Ibáñez <manu@gcc.gnu.org>
22 * call.c (conversion_null_warnings): Replace -Wconversion with
24 * cvt.c (build_expr_type_conversion): Likewise.
26 2010-02-18 Jason Merrill <jason@redhat.com>
29 * class.c (create_vtable_ptr): Set DECL_PACKED if type is packed.
32 * typeck.c (cp_build_binary_op): Adapt mixed complex/non handling from
34 * cp-tree.h (WANT_VECTOR_OR_COMPLEX): Rename from WANT_VECTOR.
35 * cvt.c (build_expr_type_conversion): Allow COMPLEX_TYPE.
38 * semantics.c (finish_goto_stmt): Don't call decay_conversion.
42 * pt.c (tsubst_qualified_id): Do normal lookup in non-dependent scope.
43 (maybe_update_decl_type): New fn.
44 * parser.c (cp_parser_init_declarator): Use it.
47 * semantics.c (begin_class_definition): Don't crash on unnamed ns.
49 2010-02-17 Jason Merrill <jason@redhat.com>
52 * call.c (build_over_call): Don't create zero-sized assignments.
53 * cp-gimplify.c (cp_genericize_r): Don't remove them here.
54 * cp-objcp-common.c (cp_expr_size): Remove.
55 * cp-tree.h: Remove prototype.
58 * name-lookup.c (set_decl_namespace): Don't copy DECL_CONTEXT if the
59 decl we looked up doesn't match.
62 * cp-gimplify.c (cp_gimplify_expr) [INIT_EXPR]: Return if we don't
63 have an INIT_EXPR anymore.
66 * pt.c (convert_nontype_argument): Change assert to test.
68 2010-02-16 Jason Merrill <jason@redhat.com>
70 * cp-gimplify.c (cp_gimplify_expr): Fix error recovery.
73 * cp-gimplify.c (cp_gimplify_expr) [MODIFY_EXPR]: Use
74 VIEW_CONVERT_EXPR for conversions between structural equality types
75 that the back end can't tell are the same.
78 * tree.c (build_cplus_array_type): Set TYPE_MAIN_VARIANT to strip
79 cv-quals from element here.
80 (cp_build_qualified_type_real): Not here. Preserve typedef name.
82 2010-02-14 Jason Merrill <jason@redhat.com>
85 * semantics.c (finish_compound_literal): Use
86 cp_apply_type_quals_to_decl when creating a static variable.
88 2010-02-12 Jason Merrill <jason@redhat.com>
91 * name-lookup.h (current_binding_level): Check for null
94 2010-02-12 Jason Merrill <jason@redhat.com>
97 * tree.c (cp_tree_equal): Correct CALL_EXPR logic.
99 2010-02-12 Jakub Jelinek <jakub@redhat.com>
102 * name-lookup.c (pushdecl_maybe_friend): Check default args of t
105 2010-02-10 Jason Merrill <jason@redhat.com>
108 * semantics.c (outer_lambda_capture_p): Revert.
109 (add_capture): Only finish_member_declaration if
110 we're in the lambda class.
111 (register_capture_members): New.
112 * cp-tree.h: Declare it.
113 * parser.c (cp_parser_lambda_expression): Call it.
115 2010-02-10 Jason Merrill <jason@redhat.com>
118 * semantics.c (outer_lambda_capture_p): Use current_function_decl
119 instead of current_class_type.
121 2010-02-10 Jason Merrill <jason@redhat.com>
123 PR c++/42983, core issue 906
124 * method.c (defaultable_fn_check): Check virtualness.
126 2010-02-10 Jason Merrill <jason@redhat.com>
129 * semantics.c (maybe_add_lambda_conv_op): Set DECL_INTERFACE_KNOWN.
131 2010-02-10 Shujing Zhao <pearly.zhao@oracle.com>
133 * Make-lang.in (cp/cvt.o, cp/parser.o, cp/search.o): Depend on intl.h.
134 * cvt.c (warn_ref_binding): Wrap the messages into G_() for easy
136 * parser.c (cp_parser_postfix_expression, cp_parser_new_type_id)
137 (cp_parser_cast_expression, cp_parser_condition, cp_parser_decltype)
138 (cp_parser_parameter_declaration)
139 (cp_parser_exception_specification_opt)
140 (cp_parser_exception_declaration): Likewise.
141 * pt.c (check_default_tmpl_args): Likewise.
142 * search.c (lookup_field_r): Likewise.
144 2010-02-09 Jason Merrill <jason@redhat.com>
147 * pt.c (tsubst_copy_and_build): Propagate LAMBDA_EXPR_LOCATION.
149 2010-02-09 Jason Merrill <jason@redhat.com>
152 * decl2.c (change_return_type): New fn.
153 * semantics.c (apply_lambda_return_type): Use it.
154 * cp-tree.h: Declare it.
156 2010-02-05 Richard Guenther <rguenther@suse.de>
158 * Make-lang.in (cp/cp-lang.o): Depend on gt-cp-cp-lang.h.
159 * cp-lang.c: Include gt-cp-cp-lang.h.
160 * config-lang.in (gtfiles): Add cp/cp-lang.c.
162 2010-02-05 Dodji Seketeli <dodji@redhat.com>
165 * typeck.c (get_template_parms_of_dependent_type): Try getting
166 the template parameters fromt the type itself first.
168 2010-02-03 Jason Merrill <jason@redhat.com>
172 * mangle.c (write_unqualified_id): Split out from write_expression.
173 (write_unqualified_name): Call it.
174 (write_member_name): Likewise.
175 (write_expression): Support TEMPLATE_ID_EXPR.
176 Disambiguate operator names.
179 * mangle.c (write_type) [VECTOR_TYPE]: Change mangling with
182 2010-02-02 Jason Merrill <jason@redhat.com>
185 * decl.c (cp_finish_decl): Add local statics to cfun->local_decls.
186 * optimize.c (clone_body): Remap their initializers when making base
188 (maybe_clone_body): Complain if multiple clones aren't safe.
190 2010-01-29 Dodji Seketeli <dodji@redhat.com>
197 * cp-tree.h (NON_DEFAULT_TEMPLATE_ARGS_COUNT,
198 SET_NON_DEFAULT_TEMPLATE_ARGS_COUNT,
199 GET_NON_DEFAULT_TEMPLATE_ARGS_COUNT): New accessor macros.
200 * pt.c (coerce_template_parms, type_unification_real,
201 expand_template_argument_pack, coerce_template_parameter_pack):
202 Set the non default template args count.
203 (current_template_args): Always set non defaulted
204 template args count when compiled with --enable-checking
205 (tsubst_template_args, type_unification_real): Propagate the non
206 defaulted template args count.
207 * error.c (get_non_default_template_args_count): Renamed
208 count_non_default_template_args into this. Don't calculate the
209 non default template argument count anymore. Use the new
210 accessor macros above to get it.
211 (dump_template_argument_list, dump_type, dump_decl,
212 dump_template_parms): Adjust.
213 * parser.c (cp_parser_template_argument_list): Always set defaulted
214 template args count when compiled with --enable-checking.
216 2010-01-29 Shujing Zhao <pearly.zhao@oracle.com>
218 * decl.c (redeclaration_error_message): Wrap the return messages into
219 G_() for easy translation.
221 2010-01-28 Jason Merrill <jason@redhat.com>
224 * semantics.c (begin_class_definition): Don't use type_as_string.
226 2010-01-28 Dodji Seketeli <dodji@redhat.com>
230 * typeck.c (get_template_parms_of_dependent_type): Factorized
231 this out of incompatible_template_type_parms_p
232 (incompatible_dependent_types_p): Renamed
233 incompatible_template_type_parms_p into this. Make it detect
234 two incompatible dependent typedefs too.
235 (structural_comptypes): Use incompatible_dependent_types_p.
236 * pt.c (get_template_info):
237 Handle BOUND_TEMPLATE_TEMPLATE_PARAM.
239 2010-01-20 Janis Johnson <janis187@us.ibm.com>
240 Jason Merrill <jason@redhat.com>
242 * mangle.c (write_type): Mangle transparent record as member type.
243 * semantics.c (begin_class_definition): Recognize decimal classes
244 and set TYPE_TRANSPARENT_AGGR.
246 2010-01-20 Jason Merrill <jason@redhat.com>
249 * mangle.c (write_expression): Handle tree codes that have extra
250 arguments in the middle-end.
252 2010-01-20 Paolo Carlini <paolo.carlini@oracle.com>
255 * except.c (expand_start_catch_block): Deal correctly with
256 do_begin_catch returning error_mark_node.
258 2010-01-20 Jason Merrill <jason@redhat.com>
261 * class.c (layout_class_type): Set packed_maybe_necessary for packed
265 * semantics.c (build_lambda_object): Call mark_used on captured
269 * decl.c (grokdeclarator): Clear type_quals for a member function
270 declared using a typedef. Don't complain about adding cv-quals
271 to a function typedef in C++0x mode.
273 2010-01-20 Jakub Jelinek <jakub@redhat.com>
275 * decl.c (create_array_type_for_decl): Remove set but not used
276 variable error_msg. Remove break stmts after return stmts.
278 2010-01-19 Dodji Seketeli <dodji@redhat.com>
280 * error.c (dump_template_parms, count_non_default_template_args):
281 Revert fix of PR c++/42634.
283 2010-01-18 Dodji Seketeli <dodji@redhat.com>
286 * error.c (dump_template_parms): Use innermost template
287 arguments before calling count_non_default_template_args.
288 (count_non_default_template_args): We are being called with
289 template innermost arguments now. There is no need to ensure
292 2010-01-18 Dodji Seketeli <dodji@redhat.com>
295 * cvt.c (build_expr_type_conversion): Look through OVERLOAD.
297 2010-01-17 Dodji Seketeli <dodji@redhat.com>
300 *pt.c (tsubst_decl): Revert commit for PR c++/42697.
302 2010-01-17 Dodji Seketeli <dodji@redhat.com>
305 *pt.c (tsubst_decl): Get the arguments of a specialization from
306 the specialization template, not from the most general template.
308 2010-01-16 Jason Merrill <jason@redhat.com>
311 * semantics.c (finish_decltype_type): Within a template, treat
312 unresolved CALL_EXPR as dependent.
314 2010-01-15 Dodji Seketeli <dodji@redhat.com>
316 * error.c (dump_template_parms,count_non_default_template_args):
317 Revert changes of PR c++/42634.
319 2010-01-14 Jakub Jelinek <jakub@redhat.com>
322 * decl.c (finish_function): Don't emit -Wreturn-type warnings in
323 functions with noreturn attribute.
325 2010-01-14 Jason Merrill <jason@redhat.com>
328 * call.c (build_new_method_call): Don't free the vec here.
331 * call.c (convert_like_real): Do full decay_conversion for ck_rvalue.
333 2010-01-13 Dodji Seketeli <dodji@redhat.com>
336 * error.c (dump_template_parms): Use innermost template
337 arguments before calling count_non_default_template_args.
338 (count_non_default_template_args): We are being called with
339 template innermost arguments now. There is no need to ensure
342 2010-01-07 Dodji Seketeli <dodji@redhat.com>
345 * pt.c (unify_pack_expansion): In non-deduced contexts, re-use template
346 arguments that were previously deduced.
348 2010-01-05 Jason Merrill <jason@redhat.com>
350 * pt.c (unify_pack_expansion): Handle deduction from init-list.
351 * call.c (build_over_call): Don't complain about it.
353 2010-01-04 Jason Merrill <jason@redhat.com>
356 * pt.c (tsubst_decl): Don't apply type attributes in place.
359 * semantics.c (describable_type): Remove decltype comment and
364 Copyright (C) 2010 Free Software Foundation, Inc.
366 Copying and distribution of this file, with or without modification,
367 are permitted in any medium without royalty provided the copyright
368 notice and this notice are preserved.