OSDN Git Service

c32e19fcb732d9c07d4cf05ec143cf729704e328
[pf3gnuchains/gcc-fork.git] / gcc / cp / ChangeLog
1 2010-04-12  Fabien Chene  <fabien.chene@gmail.com>
2
3         PR c++/25811
4         * cp-tree.h (diagnose_uninitialized_cst_or_ref_member): Declare.
5         * init.c (build_new_1): Check for uninitialized const members and
6         uninitialized reference members, when using new without
7         new-initializer. Call diagnose_uninitialized_cst_or_ref_member.
8         (diagnose_uninitialized_cst_or_ref_member): Define, call
9         diagnose_uninitialized_cst_or_ref_member_1.
10         (diagnose_uninitialized_cst_or_ref_member_1): New function.
11
12 2010-04-12  Richard Guenther  <rguenther@suse.de>
13
14         PR c++/43611
15         * semantics.c (expand_or_defer_fn_1): Do not keep extern
16         template inline functions.
17
18 2010-04-09  Manuel López-Ibáñez  <manu@gcc.gnu.org>
19
20         PR c++/28584
21         * typeck.c (cp_build_c_cast): Warn for casting integer to larger
22         pointer type.
23
24 2010-04-07  Jason Merrill  <jason@redhat.com>
25
26         PR c++/43016
27         * decl.c (start_preparsed_function): Do defer nested functions.
28
29         PR c++/11094, DR 408
30         * cp-tree.h (VAR_HAD_UNKNOWN_BOUND, SET_VAR_HAD_UNKNOWN_BOUND): New.
31         * decl2.c (finish_static_data_member_decl): Set it.
32         * decl.c (duplicate_decls): Propagate it.
33         * pt.c (tsubst_decl): Don't substitute the domain of an array
34         VAR_DECL if it's set.
35         (regenerate_decl_from_template): Substitute it here.
36         (type_dependent_expression_p): Return true if it's set.
37         * semantics.c (finish_decltype_type): Instantiate such a variable.
38         * typeck.c (cxx_sizeof_expr): Likewise.
39         (strip_array_domain): New.
40
41         * name-lookup.c (current_decl_namespace): Non-static.
42         (pop_nested_namespace): Sanity check.
43         * cp-tree.h: Declare current_decl_namespace.
44         * decl.c (grokvardecl): Use it instead of current_namespace.
45         (grokfndecl): Likewise.
46
47         PR c++/38392
48         * pt.c (tsubst_friend_function): Instatiate a friend that has already
49         been used.
50
51         * pt.c (print_template_statistics): New.
52         * cp-tree.h: Declare it.
53         * tree.c (cxx_print_statistics): Call it.
54
55         PR c++/41970
56         * decl.c (grokvardecl): Tweak warning message.
57         (grokfndecl): Likewise.
58
59 2010-04-07  Dodji Seketeli  <dodji@redhat.com>
60
61         PR c++/42697
62         *pt.c (tsubst_decl): Get the arguments of a specialization from
63         the specialization template, not from the most general template.
64
65 2010-04-07  Dodji Seketeli  <dodji@redhat.com>
66
67         PR c++/40239
68         * typeck2.c (process_init_constructor_record):
69         value-initialize members that are are not explicitely
70         initialized.
71
72 2010-04-07  Jie Zhang  <jie@codesourcery.com>
73
74         PR c++/42556
75         * typeck2.c (split_nonconstant_init_1): Drop empty CONSTRUCTOR
76         when all of its elements are non-constant and have been split out.
77
78 2010-04-06  Taras Glek  <taras@mozilla.com>
79             Jason Merrill  <jason@redhat.com>
80
81         * parser.c (cp_parser_class_specifier): Set class location to that
82         of IDENTIFIER_NODE instead of '{' when possible.
83         * semantics.c (begin_class_definition): Do not overide locations
84         with less precise ones.
85
86 2010-04-06  Jason Merrill  <jason@redhat.com>
87
88         PR c++/43648
89         * name-lookup.c (constructor_name_p): Allow X::~X even for typedefs.
90
91         PR c++/43621
92         * pt.c (maybe_update_decl_type): Check the return value from
93         push_scope.
94
95 2010-04-01  Jason Merrill  <jason@redhat.com>
96
97         * decl.c (next_initializable_field): No longer static.
98         * cp-tree.h: Declare it.
99         * call.c (build_aggr_conv): Fail if there are more initializers
100         than initializable fields.
101
102         * semantics.c (maybe_add_lambda_conv_op): Use null_pointer_node
103         instead of void_zero_node.
104
105 2010-03-31  Dodji Seketeli  <dodji@redhat.com>
106
107         PR c++/43558
108         * cp-tree.h (TEMPLATE_TYPE_PARM_SIBLING_PARMS): New accessor macro.
109         * pt.c (end_template_parm_list): Store sibling template parms of
110         each TEMPLATE_TYPE_PARMs into its TEMPLATE_TYPE_PARM_SIBLING_PARMS.
111         (push_template_decl_real): Don't store the containing template decl
112         into the DECL_CONTEXT of TEMPLATE_TYPE_PARMs anymore.
113         * typeck.c (get_template_parms_of_dependent_type): Get sibling parms
114         of a TEMPLATE_TYPE_PARM from TEMPLATE_TYPE_PARM_SIBLING_PARMS.
115         Simplify the logic.
116
117 2010-03-30  Jason Merrill  <jason@redhat.com>
118
119         PR c++/43076
120         * pt.c (push_template_decl_real): Deal better with running out of
121         scopes before running out of template parms.
122
123         PR c++/41185
124         PR c++/41786
125         * parser.c (cp_parser_direct_declarator): Don't allow VLAs in
126         function parameter context.  Don't print an error if parsing
127         tentatively.
128
129         PR c++/43559
130         * pt.c (more_specialized_fn): Don't control cv-qualifier check
131         with same_type_p.
132
133 2010-03-26  Jason Merrill  <jason@redhat.com>
134
135         PR c++/43509
136         * parser.c (cp_parser_qualifying_entity): Do accept enum names in
137         c++0x mode, but not other type-names.
138
139 2010-03-26  Dodji Seketeli  <dodji@redhat.com>
140
141         PR c++/43327
142         * pt.c (add_to_template_args): Support NULL ARGS;
143         (most_specialized_class): call coerce_template_parms on
144         template arguments passed to get_class_bindings. Use
145         add_to_template_args.
146         (unify): Handle VAR_DECLs.
147
148 2010-03-26  Dodji Seketeli  <dodji@redhat.com>
149
150         * cp-tree.h (get_template_parms_at_level): Change unsigned parm
151         into int.
152         * pt.c (get_template_parms_at_level): Adjust.
153
154 2010-03-25  Dodji Seketeli  <dodji@redhat.com>
155
156         PR c++/43206
157         * cp-tree.h (get_template_parms_at_level): Declare ...
158         * pt.c (get_template_parms_at_level): ... new function.
159         * typeck.c (get_template_parms_of_dependent_type): If a template
160         type parm's DECL_CONTEXT isn't yet set, get its siblings from
161         current_template_parms. Use get_template_parms_at_level. Remove
162         useless test.
163         (incompatible_dependent_types_p): If we get empty parms from just one
164         of the template type parms we are comparing then the template parms are
165         incompatible.
166
167 2010-03-24  Jason Merrill  <jason@redhat.com>
168
169         PR c++/43502
170         * parser.c (make_declarator): Initialize id_loc.
171         (cp_parser_lambda_declarator_opt): And set it.
172
173 2010-03-23  Jason Merrill  <jason@redhat.com>
174
175         Make lambda conversion op and op() non-static.
176         * semantics.c (maybe_add_lambda_conv_op): Make non-static.
177         Also add the thunk function returned by the conversion op.
178         Mark the conversion deleted if the op() is variadic.
179         * decl2.c (mark_used): Give helpful message about deleted conversion.
180         * parser.c (cp_parser_lambda_declarator_opt): Don't make op() static.
181         * semantics.c (finish_this_expr): Adjust.
182         * mangle.c (write_closure_type_name): Adjust.
183         * decl.c (grok_op_properties): Don't allow it.
184         * call.c (build_user_type_conversion_1): No static conversion ops.
185         (build_op_call): Or op().
186
187         * decl2.c (change_return_type): Fix 'this' quals.
188
189 2010-03-22  Jason Merrill  <jason@redhat.com>
190
191         PR c++/43333
192         * tree.c (pod_type_p): Use old meaning in C++98 mode.
193
194         PR c++/43281
195         * pt.c (contains_auto_r): New fn.
196         (do_auto_deduction): Use it.
197         (tsubst): Don't look at TREE_TYPE of a TEMPLATE_TYPE_PARM.
198
199 2010-03-20  Simon Martin  <simartin@users.sourceforge.net>
200
201         PR c++/43081:
202         * decl2.c (grokfield): Handle invalid initializers for member
203         functions.
204
205 2010-03-20  Dodji Seketeli  <dodji@redhat.com>
206
207         PR c++/43375
208         * method.c (make_alias_for): Avoid crashing when DECL_LANG_SPECIFIC
209         is NULL.
210         * decl2.c (vague_linkage_p): Likewise.
211
212 2010-03-18  Paolo Carlini  <paolo.carlini@oracle.com>
213
214         PR c++/43418
215         * parser.c (cp_parser_for_init_statement): Use NULL_TREE, not
216         false, in the cp_parser_expression_statement call.
217
218 2010-03-05  Jason Merrill  <jason@redhat.com>
219
220         * mangle.c (mangle_decl): Give name collision error even without
221         ASM_OUTPUT_DEF.
222
223 2010-03-04  Marco Poletti  <poletti.marco@gmail.com>
224
225         * pt.c (process_partial_specialization): Use error_n instead of
226         error.
227
228 2010-03-03  Jason Merrill  <jason@redhat.com>
229
230         PR c++/12909
231         * mangle.c (mangle_decl): Handle VAR_DECL, too.
232
233 2010-03-03  Jason Merrill  <jason@redhat.com>
234
235         PR c++/12909
236         * mangle.c: Include cgraph.h.
237         (mangle_decl): If the mangled name will change in a later
238         ABI version, make the later mangled name an alias.
239         * method.c (make_alias_for): Copy DECL_ARGUMENTS.
240         * Make-lang.in (mangle.o): Depend on cgraph.h.
241         * method.c (make_alias_for): Handle VAR_DECL, too.
242         * decl2.c (vague_linkage_p): Rename from vague_linkage_fn_p.
243         * tree.c (no_linkage_check): Adjust.
244         * decl.c (maybe_commonize_var): Adjust.
245         * cp-tree.h: Adjust.
246
247 2010-03-01  Marco Poletti  <poletti.marco@gmail.com>
248
249         * pt.c (redeclare_class_template): Use error_n and inform_n.
250
251 2010-02-27  Mark Mitchell  <mark@codesourcery.com>
252
253         PR c++/42748
254         * cp-tree.h (push_tinst_level): Declare.
255         (pop_tinst_level): Likewise.
256         * pt.c (push_tinst_level): Give it external linkage.
257         (pop_tinst_level): Likewise.
258         * mangle.c (mangle_decl_string): Set the source location to that
259         of the decl while mangling.
260
261 2010-02-27  Simon Martin  <simartin@users.sourceforge.net>
262
263         PR c++/42054
264         * pt.c (redeclare_class_template): Return false if there are erroneous
265         template parameters.
266
267 2010-02-24  Manuel López-Ibáñez  <manu@gcc.gnu.org>
268
269         * pt.c (push_tinst_level): Replace -ftemplate-depth- with 
270         -ftemplate-depth=.
271
272 2010-02-24  Jason Merrill  <jason@redhat.com>
273
274         PR c++/12909
275         * mangle.c (write_type): Give -Wabi warning for old vector mangling.
276
277         * class.c (layout_class_type): Don't give -Wabi warning for a bug
278         in a previous ABI version.
279
280 2010-02-23  Jason Merrill  <jason@redhat.com>
281
282         PR c++/43143
283         * typeck2.c (digest_init_r): Accept value init of array.
284
285 2010-02-22  Manuel López-Ibáñez  <manu@gcc.gnu.org>
286
287         PR c++/43126
288         * typeck.c (convert_arguments): Update error message.
289
290 2010-02-22  Mike Stump  <mikestump@comcast.net>
291
292         PR c++/43125
293         * decl.c (duplicate_decls): Merge DECL_PRESERVE_P.
294
295 2010-02-21  Manuel López-Ibáñez  <manu@gcc.gnu.org>
296
297         PR c++/23510
298         * error.c (print_instantiation_partial_context_line): New.
299         (print_instantiation_partial_context): Print at most 12 contexts,
300         skip the rest with a message.
301
302 2010-02-21  Dodji Seketeli  <dodji@redhat.com>
303
304         PR c++/42824
305         * pt.c (lookup_template_class): Better support of specialization
306         of member of class template implicit instantiation.
307
308 2010-02-20  Manuel López-Ibáñez  <manu@gcc.gnu.org>
309
310         PR c++/35669
311         * call.c (conversion_null_warnings): Replace -Wconversion with
312         -Wconversion-null.
313         * cvt.c (build_expr_type_conversion): Likewise.
314
315 2010-02-18  Jason Merrill  <jason@redhat.com>
316
317         PR c++/42837
318         * class.c (create_vtable_ptr): Set DECL_PACKED if type is packed.
319
320         PR c++/43108
321         * typeck.c (cp_build_binary_op): Adapt mixed complex/non handling from
322         C build_binary_op.
323         * cp-tree.h (WANT_VECTOR_OR_COMPLEX): Rename from WANT_VECTOR.
324         * cvt.c (build_expr_type_conversion): Allow COMPLEX_TYPE.
325
326         PR c++/43070
327         * semantics.c (finish_goto_stmt): Don't call decay_conversion.
328
329         PR c++/26261
330         PR c++/43101
331         * pt.c (tsubst_qualified_id): Do normal lookup in non-dependent scope.
332         (maybe_update_decl_type): New fn.
333         * parser.c (cp_parser_init_declarator): Use it.
334
335         PR c++/43109
336         * semantics.c (begin_class_definition): Don't crash on unnamed ns.
337
338 2010-02-17  Jason Merrill  <jason@redhat.com>
339
340         PR c++/43075
341         * call.c (build_over_call): Don't create zero-sized assignments.
342         * cp-gimplify.c (cp_genericize_r): Don't remove them here.
343         * cp-objcp-common.c (cp_expr_size): Remove.
344         * cp-tree.h: Remove prototype.
345
346         PR c++/43069
347         * name-lookup.c (set_decl_namespace): Don't copy DECL_CONTEXT if the
348         decl we looked up doesn't match.
349
350         PR c++/43093
351         * cp-gimplify.c (cp_gimplify_expr) [INIT_EXPR]: Return if we don't
352         have an INIT_EXPR anymore.
353
354         PR c++/43079
355         * pt.c (convert_nontype_argument): Change assert to test.
356
357 2010-02-16  Jason Merrill  <jason@redhat.com>
358
359         * cp-gimplify.c (cp_gimplify_expr): Fix error recovery.
360
361         PR c++/43031
362         * cp-gimplify.c (cp_gimplify_expr) [MODIFY_EXPR]: Use
363         VIEW_CONVERT_EXPR for conversions between structural equality types
364         that the back end can't tell are the same.
365
366         PR c++/43036
367         * tree.c (build_cplus_array_type): Set TYPE_MAIN_VARIANT to strip
368         cv-quals from element here.
369         (cp_build_qualified_type_real): Not here.  Preserve typedef name.
370
371 2010-02-14  Jason Merrill  <jason@redhat.com>
372
373         PR c++/41997
374         * semantics.c (finish_compound_literal): Use
375         cp_apply_type_quals_to_decl when creating a static variable.
376
377 2010-02-12  Jason Merrill  <jason@redhat.com>
378
379         PR c++/43024
380         * name-lookup.h (current_binding_level): Check for null
381         cp_function_chain.
382
383 2010-02-12  Jason Merrill  <jason@redhat.com>
384
385         PR c++/43054
386         * tree.c (cp_tree_equal): Correct CALL_EXPR logic.
387
388 2010-02-12  Jakub Jelinek  <jakub@redhat.com>
389
390         PR c++/43033
391         * name-lookup.c (pushdecl_maybe_friend): Check default args of t
392         instead of x.
393
394 2010-02-10  Jason Merrill  <jason@redhat.com>
395
396         PR c++/41896
397         * semantics.c (outer_lambda_capture_p): Revert.
398         (add_capture): Only finish_member_declaration if
399         we're in the lambda class.
400         (register_capture_members): New.
401         * cp-tree.h: Declare it.
402         * parser.c (cp_parser_lambda_expression): Call it.
403
404 2010-02-10  Jason Merrill  <jason@redhat.com>
405
406         PR c++/41896
407         * semantics.c (outer_lambda_capture_p): Use current_function_decl
408         instead of current_class_type.
409
410 2010-02-10  Jason Merrill  <jason@redhat.com>
411
412         PR c++/42983, core issue 906
413         * method.c (defaultable_fn_check): Check virtualness.
414
415 2010-02-10  Jason Merrill  <jason@redhat.com>
416
417         PR c++/43016
418         * semantics.c (maybe_add_lambda_conv_op): Set DECL_INTERFACE_KNOWN.
419
420 2010-02-10  Shujing Zhao  <pearly.zhao@oracle.com>
421
422         * Make-lang.in (cp/cvt.o, cp/parser.o, cp/search.o): Depend on intl.h.
423         * cvt.c (warn_ref_binding): Wrap the messages into G_() for easy
424         translation.
425         * parser.c (cp_parser_postfix_expression, cp_parser_new_type_id)
426         (cp_parser_cast_expression, cp_parser_condition, cp_parser_decltype)
427         (cp_parser_parameter_declaration)
428         (cp_parser_exception_specification_opt)
429         (cp_parser_exception_declaration): Likewise.
430         * pt.c (check_default_tmpl_args): Likewise.
431         * search.c (lookup_field_r): Likewise.
432
433 2010-02-09  Jason Merrill  <jason@redhat.com>
434
435         PR c++/42399
436         * pt.c (tsubst_copy_and_build): Propagate LAMBDA_EXPR_LOCATION.
437
438 2010-02-09  Jason Merrill  <jason@redhat.com>
439
440         PR c++/42370
441         * decl2.c (change_return_type): New fn.
442         * semantics.c (apply_lambda_return_type): Use it.
443         * cp-tree.h: Declare it.
444
445 2010-02-05  Richard Guenther  <rguenther@suse.de>
446
447         * Make-lang.in (cp/cp-lang.o): Depend on gt-cp-cp-lang.h.
448         * cp-lang.c: Include gt-cp-cp-lang.h.
449         * config-lang.in (gtfiles): Add cp/cp-lang.c.
450
451 2010-02-05  Dodji Seketeli  <dodji@redhat.com>
452
453         PR c++/42915
454         * typeck.c (get_template_parms_of_dependent_type): Try getting
455         the template parameters fromt the type itself first.
456
457 2010-02-03  Jason Merrill  <jason@redhat.com>
458
459         PR c++/4926
460         PR c++/38600
461         * mangle.c (write_unqualified_id): Split out from write_expression.
462         (write_unqualified_name): Call it.
463         (write_member_name): Likewise.
464         (write_expression): Support TEMPLATE_ID_EXPR.
465         Disambiguate operator names.
466
467         PR c++/12909
468         * mangle.c (write_type) [VECTOR_TYPE]: Change mangling with
469         -fabi-version=4.
470
471 2010-02-02  Jason Merrill  <jason@redhat.com>
472
473         PR c++/41090
474         * decl.c (cp_finish_decl): Add local statics to cfun->local_decls.
475         * optimize.c (clone_body): Remap their initializers when making base
476         variants.
477         (maybe_clone_body): Complain if multiple clones aren't safe.
478
479 2010-01-29  Dodji Seketeli  <dodji@redhat.com>
480
481         PR c++/42758
482         PR c++/42634
483         PR c++/42336
484         PR c++/42797
485         PR c++/42880
486         * cp-tree.h (NON_DEFAULT_TEMPLATE_ARGS_COUNT,
487         SET_NON_DEFAULT_TEMPLATE_ARGS_COUNT,
488         GET_NON_DEFAULT_TEMPLATE_ARGS_COUNT): New accessor macros.
489         * pt.c (coerce_template_parms, type_unification_real,
490         expand_template_argument_pack, coerce_template_parameter_pack):
491         Set the non default template args count.
492         (current_template_args): Always set non defaulted
493         template args count when compiled with --enable-checking
494         (tsubst_template_args, type_unification_real): Propagate the non
495         defaulted template args count.
496         * error.c (get_non_default_template_args_count): Renamed
497         count_non_default_template_args into this. Don't calculate the
498         non default template argument count anymore. Use the new
499         accessor macros above to get it.
500         (dump_template_argument_list, dump_type, dump_decl,
501         dump_template_parms): Adjust.
502         * parser.c (cp_parser_template_argument_list): Always set defaulted
503         template args count when compiled with --enable-checking.
504
505 2010-01-29  Shujing Zhao  <pearly.zhao@oracle.com>
506
507         * decl.c (redeclaration_error_message): Wrap the return messages into
508         G_() for easy translation.
509
510 2010-01-28  Jason Merrill  <jason@redhat.com>
511
512         PR c++/42880
513         * semantics.c (begin_class_definition): Don't use type_as_string.
514
515 2010-01-28  Dodji Seketeli  <dodji@redhat.com>
516
517         PR c++/42713
518         PR c++/42820
519         * typeck.c (get_template_parms_of_dependent_type): Factorized
520         this out of incompatible_template_type_parms_p
521         (incompatible_dependent_types_p): Renamed
522         incompatible_template_type_parms_p into this. Make it detect
523         two incompatible dependent typedefs too.
524         (structural_comptypes): Use incompatible_dependent_types_p.
525         * pt.c (get_template_info):
526         Handle BOUND_TEMPLATE_TEMPLATE_PARAM.
527
528 2010-01-20  Janis Johnson  <janis187@us.ibm.com>
529             Jason Merrill  <jason@redhat.com>
530
531         * mangle.c (write_type): Mangle transparent record as member type.
532         * semantics.c (begin_class_definition): Recognize decimal classes
533         and set TYPE_TRANSPARENT_AGGR.
534
535 2010-01-20  Jason Merrill  <jason@redhat.com>
536
537         PR c++/42338
538         * mangle.c (write_expression): Handle tree codes that have extra
539         arguments in the middle-end.
540
541 2010-01-20  Paolo Carlini  <paolo.carlini@oracle.com>
542
543         PR c++/42038
544         * except.c (expand_start_catch_block): Deal correctly with
545         do_begin_catch returning error_mark_node.
546
547 2010-01-20  Jason Merrill  <jason@redhat.com>
548
549         PR c++/41788
550         * class.c (layout_class_type): Set packed_maybe_necessary for packed
551         non-PODs.
552
553         PR c++/41920
554         * semantics.c (build_lambda_object): Call mark_used on captured
555         variables.
556
557         PR c++/40750
558         * decl.c (grokdeclarator): Clear type_quals for a member function
559         declared using a typedef.  Don't complain about adding cv-quals
560         to a function typedef in C++0x mode.
561
562 2010-01-20  Jakub Jelinek  <jakub@redhat.com>
563
564         * decl.c (create_array_type_for_decl): Remove set but not used
565         variable error_msg.  Remove break stmts after return stmts.
566
567 2010-01-19  Dodji Seketeli  <dodji@redhat.com>
568
569         * error.c (dump_template_parms, count_non_default_template_args):
570         Revert fix of PR c++/42634.
571
572 2010-01-18  Dodji Seketeli  <dodji@redhat.com>
573
574         PR c++/42634
575         * error.c (dump_template_parms): Use innermost template
576         arguments before calling count_non_default_template_args.
577         (count_non_default_template_args): We are being called with
578         template innermost arguments now. There is no need to ensure
579         that again.
580
581 2010-01-18  Dodji Seketeli  <dodji@redhat.com>
582
583         PR c++/42766
584         * cvt.c (build_expr_type_conversion): Look through OVERLOAD.
585
586 2010-01-17  Dodji Seketeli  <dodji@redhat.com>
587
588         PR c++/42697
589         *pt.c (tsubst_decl):  Revert commit for PR c++/42697.
590
591 2010-01-17  Dodji Seketeli  <dodji@redhat.com>
592
593         PR c++/42697
594         *pt.c (tsubst_decl): Get the arguments of a specialization from
595         the specialization template, not from the most general template.
596
597 2010-01-16  Jason Merrill  <jason@redhat.com>
598
599         PR c++/42761
600         * semantics.c (finish_decltype_type): Within a template, treat
601         unresolved CALL_EXPR as dependent.
602
603 2010-01-15  Dodji Seketeli  <dodji@redhat.com>
604
605         * error.c (dump_template_parms,count_non_default_template_args):
606         Revert changes of PR c++/42634.
607
608 2010-01-14  Jakub Jelinek  <jakub@redhat.com>
609
610         PR middle-end/42674
611         * decl.c (finish_function): Don't emit -Wreturn-type warnings in
612         functions with noreturn attribute.
613
614 2010-01-14  Jason Merrill  <jason@redhat.com>
615
616         PR c++/42701
617         * call.c (build_new_method_call): Don't free the vec here.
618
619         PR c++/42655
620         * call.c (convert_like_real): Do full decay_conversion for ck_rvalue.
621
622 2010-01-13  Dodji Seketeli  <dodji@redhat.com>
623
624         PR c++/42634
625         * error.c (dump_template_parms): Use innermost template
626         arguments before calling count_non_default_template_args.
627         (count_non_default_template_args): We are being called with
628         template innermost arguments now. There is no need to ensure
629         that again.
630
631 2010-01-07  Dodji Seketeli  <dodji@redhat.com>
632
633         c++/40155
634         * pt.c (unify_pack_expansion): In non-deduced contexts, re-use template
635         arguments that were previously deduced.
636
637 2010-01-05  Jason Merrill  <jason@redhat.com>
638
639         * pt.c (unify_pack_expansion): Handle deduction from init-list.
640         * call.c (build_over_call): Don't complain about it.
641
642 2010-01-04  Jason Merrill  <jason@redhat.com>
643
644         PR c++/42555
645         * pt.c (tsubst_decl): Don't apply type attributes in place.
646
647         PR c++/42567
648         * semantics.c (describable_type): Remove decltype comment and
649         semantics.
650
651
652 \f
653 Copyright (C) 2010 Free Software Foundation, Inc.
654
655 Copying and distribution of this file, with or without modification,
656 are permitted in any medium without royalty provided the copyright
657 notice and this notice are preserved.