OSDN Git Service

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