OSDN Git Service

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