OSDN Git Service

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