OSDN Git Service

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