OSDN Git Service

PR c++/53995
[pf3gnuchains/gcc-fork.git] / gcc / cp / ChangeLog
1 2012-07-17  Jason Merrill  <jason@redhat.com>
2
3         PR c++/53995
4         * decl.c (finish_enum_value_list): Only call
5         insert_late_enum_def_into_classtype_sorted_fields in class scope.
6
7 2012-07-17  Jason Merrill  <jason@redhat.com>
8
9         PR c++/53989
10         * tree.c (build_cplus_array_type): Also add TYPE_CANONICAL
11         to the list of variants.
12
13 2012-07-17  Jason Merrill  <jason@redhat.com>
14
15         PR c++/53549
16         * parser.c (cp_parser_class_head): Call xref_basetypes here.
17         (cp_parser_class_specifier_1): Not here.
18         * pt.c (tsubst_decl) [USING_DECL]: Check uses_template_parms
19         as well as DECL_DEPENDENT_P.
20
21 2012-07-13  Jason Merrill  <jason@redhat.com>
22
23         PR c++/53953
24         * method.c (synthesized_method_walk): Initialize no_implicit_p sooner.
25
26 2012-07-10  Jason Merrill  <jason@redhat.com>
27
28         DR 1402
29         PR c++/53733
30         * cp-tree.h (FNDECL_SUPPRESS_IMPLICIT_DECL): New.
31         (struct lang_decl_fn): Add suppress_implicit_decl field.
32         * method.c (implicitly_declare_fn): Check it.
33         (process_subob_fn): Add no_implicit_p parm.
34         (walk_field_subobs, synthesized_method_walk): Likewise.
35         (maybe_explain_implicit_delete): Adjust.
36         (explain_implicit_non_constexpr): Adjust.
37
38         * method.c (synthesized_method_walk): Cleanups don't affect the EH
39         spec either.
40
41 2012-07-02  Jason Merrill  <jason@redhat.com>
42
43         PR c++/53816
44         * class.c (resolves_to_fixed_type_p): Check uses_template_parms
45         (current_function_decl) instead of processing_template_decl.
46
47         PR c++/53821
48         * semantics.c (maybe_add_lambda_conv_op): Don't set
49         DECL_INTERFACE_KNOWN.
50
51 2012-06-27  Fabien Chêne  <fabien@gcc.gnu.org>
52
53         PR c++/51214
54         * cp-tree.h (insert_late_enum_def_into_classtype_sorted_fields):
55         Declare.
56         * class.c (insert_into_classtype_sorted_fields): New.
57         (add_enum_fields_to_record_type): New.
58         (count_fields): Adjust the comment.
59         (add_fields_to_record_type): Likewise.
60         (finish_struct_1): Move the code that inserts the fields for the
61         sorted case, into insert_into_classtype_sorted_fields, and call
62         it.
63         (insert_late_enum_def_into_classtype_sorted_fields): Define.
64         * decl.c (finish_enum_value_list): Call
65         insert_late_enum_def_into_classtype_sorted_fields if a late enum
66         definition is encountered.
67
68 2012-06-25  Jason Merrill  <jason@redhat.com>
69
70         PR c++/53498
71         PR c++/53305
72         * pt.c (tsubst_pack_expansion): Copy before dummy tsubst.
73
74         PR c++/52988
75         * typeck.c (decay_conversion): Don't discard side-effects from
76         expressions of nullptr_t.
77
78         PR c++/53202
79         * semantics.c (build_data_member_initialization): Always keep
80         initializer for empty base.
81         (cxx_eval_bare_aggregate): Discard it here.
82
83 2012-06-25  Jakub Jelinek  <jakub@redhat.com>
84
85         PR c++/53594
86         * class.c (check_bases_and_members): Avoid -Wuninitialized
87         diagnostics for non-static const members or references if they
88         use NSDMI.
89
90 2012-06-19  Jason Merrill  <jason@redhat.com>
91
92         PR c++/53651
93         * name-lookup.c (constructor_name_p): Don't try to look at the
94         name of a DECLTYPE_TYPE.
95
96         Reapply:
97         PR c++/53137
98         * pt.c (instantiate_class_template_1): Set LAMBDA_EXPR_THIS_CAPTURE.
99         (instantiate_decl): Don't push_to_top_level for local class methods.
100         (instantiate_class_template_1): Or for local classes.
101
102         PR c++/53599
103         * pt.c (lookup_template_class_1): Use ts_global.
104
105 2012-06-14  Richard Guenther  <rguenther@suse.de>
106
107         Backport from mainline
108         2012-06-11  Richard Guenther  <rguenther@suse.de>
109
110         PR c++/53616
111         * mangle.c (write_array_type): Use double-ints for array domain
112         arithmetic.
113
114 2012-06-14  Richard Guenther  <rguenther@suse.de>
115
116         Backport from mainline
117         2012-06-06  Fabien Chêne  <fabien@gcc.gnu.org>
118
119         PR c++/52841
120         * parser.c (cp_parser_alias_declaration): Return earlier
121         if an error occured.
122
123 2012-06-14  Release Manager
124
125         * GCC 4.7.1 released.
126
127 2012-06-12  Jason Merrill  <jason@redhat.com>
128
129         PR c++/53599
130         Revert:
131         PR c++/53137
132         * pt.c (instantiate_class_template_1): Set LAMBDA_EXPR_THIS_CAPTURE.
133         (instantiate_decl): Don't push_to_top_level for local class methods.
134         (instantiate_class_template_1): Or for local classes.
135
136 2012-06-04  Paolo Carlini  <paolo.carlini@oracle.com>
137
138         PR c++/53524
139         * call.c (build_conditional_expr_1): Use OPT_Wenum_compare
140         to control enumeral mismatch in conditional expression too.
141
142 2012-06-01  Jason Merrill  <jason@redhat.com>
143
144         PR c++/52973
145         * parser.c (cp_parser_class_head): Apply attributes here.
146         * semantics.c (begin_class_definition): Not here.
147         * cp-tree.h: Adjust.
148
149         PR c++/52725
150         * parser.c (cp_parser_binary_expression): Bail early if we're parsing
151         tentatively and the LHS has a parse error.
152
153 2012-06-01  Jason Merrill  <jason@redhat.com>
154
155         PR c++/53137
156         * pt.c (instantiate_class_template_1): Set LAMBDA_EXPR_THIS_CAPTURE.
157         (instantiate_decl): Don't push_to_top_level for local class methods.
158         (instantiate_class_template_1): Or for local classes.
159
160         PR c++/53484
161         * pt.c (do_auto_deduction): Don't try to deduce from a
162         type-dependent initializer.
163
164 2012-05-31  Jason Merrill  <jason@redhat.com>
165
166         PR c++/53500
167         PR c++/52905
168         * call.c (joust): Handle comparing list and non-list ctors.
169
170 2012-05-30  Jason Merrill  <jason@redhat.com>
171
172         PR c++/53356
173         * tree.c (stabilize_init): Side effects make the init unstable.
174
175 2012-05-30  Jason Merrill  <jason@redhat.com>
176
177         PR c++/53220
178         * call.c (convert_like_real) [ck_list]: Take array address directly.
179         * typeck.c (decay_conversion): Reject decay of an array compound
180         literal.
181
182 2012-05-29  Paolo Carlini  <paolo.carlini@oracle.com>
183
184         PR c++/53491
185         * tree.c (stabilize_expr): Handle exp of void type.
186
187 2012-05-28  Paolo Carlini  <paolo.carlini@oracle.com>
188
189         PR c++/53503
190         * semantics.c (potential_constant_expression_1): Handle LTGT_EXPR.
191
192 2012-05-15  Alexandre Oliva  <aoliva@redhat.com>
193
194         PR c++/53209
195         * pt.c (tsubst_decl): Bail out if argvec is error_mark_node.
196
197 2012-05-10  Paolo Carlini  <paolo.carlini@oracle.com>
198
199         PR c++/53301
200         * decl.c (check_default_argument): Fix typo (POINTER_TYPE_P
201         instead of TYPE_PTR_P) in zero-as-null-pointer-constant warning.
202
203 2012-05-03  Paolo Carlini  <paolo.carlini@oracle.com>
204
205         PR c++/53186
206         * call.c (build_over_call): Handle final member functions
207         and class types.
208         (build_new_method_call_1): Do not handle here.
209
210 2012-04-17  Paolo Carlini  <paolo.carlini@oracle.com>
211
212         PR c++/53003
213         * parser.c (cp_parser_member_declaration): Check that
214         initializer_token_start is non null before dereferencing it.
215
216 2012-04-16  Jason Merrill  <jason@redhat.com>
217
218         PR c++/38543
219         * pt.c (determine_specialization): Instead of comparing the number
220         of parms, check that tsubst gives the right answer.
221
222         PR c++/50830
223         * pt.c (convert_template_argument): Handle template template
224         argument packs.
225
226         PR c++/50303
227         * pt.c (tsubst_pack_expansion): Use tsubst_expr for template
228         template parameters.
229
230 2012-04-15  Jason Merrill  <jason@redhat.com>
231
232         PR c++/52292
233         PR c++/52380
234         * pt.c (coerce_template_parms): Even if we aren't converting we
235         want to expand argument packs.
236
237 2012-04-15  Fabien Chêne  <fabien@gcc.gnu.org>
238
239         PR c++/52465
240         * parser.c (cp_parser_class_name): Call strip_using_decl and
241         return the target decl.
242         * name-lookup.c (strip_using_decl): Returns NULL_TREE if the decl
243         to be stripped is NULL_TREE.
244         (qualify_lookup): Call strip_using_decl and perform some checks on
245         the target decl.
246
247 2012-04-13  Jason Merrill  <jason@redhat.com>
248
249         PR c++/52824
250         * pt.c (any_pack_expanson_args_p): New.
251         (coerce_template_parms): Use it.
252
253 2012-04-11  Jason Merrill  <jason@redhat.com>
254
255         PR c++/52906
256         * decl.c (check_tag_decl): Don't complain about attributes if we
257         don't even have a type.
258
259 2012-04-05  Jason Merrill  <jason@redhat.com>
260
261         PR c++/52596
262         * tree.c (lvalue_kind): Treat a deferred access control SCOPE_REF
263         as an lvalue.
264
265 2012-04-03  Jason Merrill  <jason@redhat.com>
266
267         PR c++/52796
268         * pt.c (tsubst_initializer_list): A pack expansion with no elements
269         means value-initialization.
270
271 2012-03-29  Meador Inge  <meadori@codesourcery.com>
272
273         PR c++/52672
274         * semantics.c (cxx_fold_indirect_ref): Don't attempt to fold
275         stripped child trees that are not pointer types.
276
277 2012-03-29  Paolo Carlini  <paolo.carlini@oracle.com>
278
279         PR c++/52718
280         * decl.c (check_default_argument): With -Wzero-as-null-pointer-constant
281         warn for a zero as null pointer constant default argument.
282
283 2012-03-29  Jason Merrill  <jason@redhat.com>
284
285         PR c++/52685
286         * tree.c (copy_binfo): Handle BINFO_DEPENDENT_BASE_P.
287
288 2012-03-29  Jakub Jelinek  <jakub@redhat.com>
289
290         PR c++/52759
291         * decl.c (start_decl): Don't call maybe_apply_pragma_weak
292         if processing_template_decl.
293
294 2012-03-29  Jason Merrill  <jason@redhat.com>
295
296         PR c++/52743
297         * call.c (compare_ics): Handle ck_aggr like ck_list.
298
299 2012-03-28  Jason Merrill  <jason@redhat.com>
300
301         PR c++/52746
302         * typeck.c (lookup_destructor): Clear BASELINK_QUALIFIED_P if
303         we didn't get an explicit scope.
304         * pt.c (tsubst_baselink): Likewise.
305
306 2012-03-22  Paolo Carlini  <paolo.carlini@oracle.com>
307
308         PR c++/52487
309         * class.c (check_field_decls): Call literal_type_p only
310         on complete types.
311
312 2012-03-22  Jakub Jelinek  <jakub@redhat.com>
313
314         PR c++/52671
315         * decl.c (check_tag_decl): Only use CLASSTYPE_TEMPLATE_INSTANTIATION
316         on CLASS_TYPE_P types.
317
318 2012-03-22  Jason Merrill  <jason@redhat.com>
319
320         PR c++/52582
321         * method.c (implicitly_declare_fn): Set DECL_EXTERNAL.
322
323 2012-03-22  Jakub Jelinek  <jakub@redhat.com>
324
325         Backported from mainline
326         2012-03-14  Jakub Jelinek  <jakub@redhat.com>
327
328         PR c++/52521
329         * parser.c (lookup_literal_operator): Return fn only if
330         processed all arguments from args vector and argtypes is
331         void_list_node.
332
333 2012-03-22  Release Manager
334
335         * GCC 4.7.0 released.
336
337 2012-03-20  Jason Merrill  <jason@redhat.com>
338
339         * mangle.c (write_type): Handle 'auto'.
340         * init.c (build_new): Don't do auto deduction where it might
341         affect template mangling.
342
343 2012-03-07  Jason Merrill  <jason@redhat.com>
344
345         PR c++/52521
346         * mangle.c (write_literal_operator_name): The length comes after the
347         operator prefix.
348
349 2012-02-29  Jason Merrill  <jason@redhat.com>
350
351         PR c++/51930
352         * decl.c (check_tag_decl): Move warning for misplaced attributes here.
353         (shadow_tag): From here.
354         * parser.c (cp_parser_explicit_instantiation): Don't warn here.
355
356 2012-02-21  Jakub Jelinek  <jakub@redhat.com>
357
358         PR c++/52312
359         * typeck.c (check_literal_operator_args): Initialize *long_double_p
360         and *long_long_unsigned_p even if processing_template_decl.
361
362 2012-02-16  Jason Merrill  <jason@redhat.com>
363
364         PR c++/52248
365         * decl.c (define_label): Use timevar_cond_start/stop.
366
367 2012-02-16  Fabien Chêne  <fabien@gcc.gnu.org>
368
369         PR c++/52126
370         * decl.c (xref_basetypes): call dependent_scope_p instead of
371         dependent_type_p.
372
373 2012-02-16  Jason Merrill  <jason@redhat.com>
374
375         PR c++/51415
376         * error.c (dump_expr): Handle lambda closures specifically.
377
378 2012-02-14  Jason Merrill  <jason@redhat.com>
379
380         * parser.c (cp_parser_explicit_instantiation): Give a warning
381         for ignored attributes on explicit class instantiation.
382
383 2012-02-14  Jakub Jelinek  <jakub@redhat.com>
384
385         PR c++/52247
386         * pt.c (tsubst_copy_asm_operands): For LABEL_DECL values call
387         lookup_label on label's name and set TREE_USED.
388
389 2012-02-14  Jason Merrill  <jason@redhat.com>
390
391         PR c++/39055
392         * decl.c (local_variable_p_walkfn): Don't check DECL_ARTIFICIAL.
393
394 2012-02-14  Jakub Jelinek  <jakub@redhat.com>
395
396         PR c/52181
397         * decl.c (duplicate_decls): If olddecl has bigger DECL_ALIGN than
398         newdecl, copy DECL_ALIGN to newdecl and or DECL_USER_ALIGN bits.
399
400 2012-02-07  Jason Merrill  <jason@redhat.com>
401
402         PR c++/51675
403         * semantics.c (cx_check_missing_mem_inits): Handle unions.
404         Fix constexpr default constructor logic.
405
406         PR c++/52035
407         * pt.c (tsubst): Strip uninstantiated typedef.
408
409 2012-02-06  Jason Merrill  <jason@redhat.com>
410
411         PR c++/52088
412         * cvt.c (build_expr_type_conversion): Check for template conversion.
413
414 2012-01-31  Jason Merrill  <jason@redhat.com>
415
416         PR c++/52043
417         * cp-tree.h (PACK_EXPANSION_LOCAL_P): New.
418         * pt.c (make_pack_expansion, tsubst_initializer_list): Set it.
419         (tsubst_pack_expansion): Check it.
420
421 2012-01-29  Paolo Carlini  <paolo.carlini@oracle.com>
422
423         PR c++/51327
424         * class.c (explain_non_literal_class): Correctly handle implicitly
425         deleted constructors.
426
427 2012-01-27  Jakub Jelinek  <jakub@redhat.com>
428
429         PR c++/51852
430         * pt.c (tsubst_pack_expansion): Delete and restore
431         local_specialization whenever need_local_specialization, not just
432         when saved_local_specializations is non-NULL.
433
434 2012-01-26  Paolo Carlini  <paolo.carlini@oracle.com>
435
436         PR c++/51370
437         * error.c (dump_decl, [TEMPLATE_ID_EXPR]): Handle error_mark_node
438         as TREE_OPERAND (t, 1).
439
440 2012-01-24  Jason Merrill  <jason@redhat.com>
441
442         PR c++/51917
443         * decl.c (xref_basetypes): Check VEC_length instead of VEC_space.
444
445         PR c++/51973
446         * tree.c (called_fns_equal): Check template args.
447         (cp_tree_equal): Call it.
448
449 2012-01-24  Aldy Hernandez  <aldyh@redhat.com>
450             Patrick Marlier  <patrick.marlier@gmail.com>
451
452         PR c++/51928
453         * class.c (set_method_tm_attributes): Use TARGET_THUNK instead of
454         thunk for set_one_vmethod_tm_attributes.
455
456 2012-01-24  Paolo Carlini  <paolo.carlini@oracle.com>
457
458         PR c++/51223
459         * call.c (build_over_call): Check for error_mark_node as
460         TREE_VALUE when default arguments are processed.
461
462 2012-01-23  Jason Merrill  <jason@redhat.com>
463
464         PR c++/51930
465         * decl2.c (determine_visibility): Check for visibility attribute
466         on template specialization.
467
468 2012-01-23  Paolo Carlini  <paolo.carlini@oracle.com>
469
470         PR c++/51398
471         * pt.c (parameter_of_template_p): Skip error_mark_node parameters.
472
473 2012-01-23  Jason Merrill  <jason@redhat.com>
474
475         PR c++/51925
476         * class.c (add_method): Set OVL_USED for using-decls.
477         * tree.c (ovl_scope): New.
478         * cp-tree.h: Declare it.
479         * parser.c (cp_parser_template_name): Use it.
480         * semantics.c (baselink_for_fns): Likewise.
481         * name-lookup.c (set_inherited_value_binding_p): Likewise.
482
483 2012-01-20  Paolo Carlini  <paolo.carlini@oracle.com>
484
485         PR c++/51402
486         * pt.c (lookup_template_class_1): Check context returned by
487         tsubst for error_mark_node.
488
489 2012-01-19  Kai Tietz  <ktietz@redhat.com>
490
491         PR c++/51344
492         * decl2.c (save_template_attributes): Use merge_attributes
493         instead of chaining up via TREE_CHAIN.
494
495 2012-01-19  Jason Merrill  <jason@redhat.com>
496
497         PR c++/51889
498         * class.c (finish_struct): Call add_method here for function usings.
499         * semantics.c (finish_member_declaration): Not here.
500
501 2012-01-18  Paolo Carlini  <paolo.carlini@oracle.com>
502
503         PR c++/51225
504         * typeck2.c (store_init_value): Within a template guard
505         cxx_constant_value with require_potential_constant_expression.
506         * pt.c (convert_nontype_argument): Likewise.
507
508 2012-01-16  Jakub Jelinek  <jakub@redhat.com>
509
510         PR c++/51854
511         * mangle.c (write_template_arg_literal): Handle complex.
512
513 2012-01-16  Jason Merrill  <jason@redhat.com>
514
515         PR c++/51827
516         * mangle.c (mangle_decl): Don't mangle uninstantiated templates.
517
518         PR c++/51868
519         * typeck.c (build_static_cast_1): Handle bit-fields properly.
520
521 2012-01-13  Ian Lance Taylor  <iant@google.com>
522
523         PR c++/50012
524         * typeck.c (enum_cast_to_int): New static function.
525         (cp_build_binary_op): When handling warn_sign_compare, don't test
526         for TREE_NO_WARNING.  Do call enum_cast_to_int.
527         * call.c (avoid_sign_compare_warnings): Remove static function.
528         (build_new_op_1): Don't call avoid_sign_compare_warnings.
529
530 2012-01-13  Steven Bosscher  <steven@gcc.gnu.org>
531
532         * decl2.c: Do not include tree-mudflap.h
533         * semantics.c: Likewise.
534
535 2012-01-13  Jason Merrill  <jason@redhat.com>
536
537         PR c++/20681
538         * semantics.c (finish_break_stmt): Avoid adding an unreachable
539         BREAK_STMT.
540
541         PR c++/51813
542         * decl2.c (constrain_visibility): Clear DECL_VISIBILITY_SPECIFIED
543         when reducing the visibility.
544
545         PR c++/51620
546         * class.c (build_vtbl_initializer): Use __cxa_deleted_virtual.
547
548 2012-01-12  Jason Merrill  <jason@redhat.com>
549
550         PR c++/51714
551         * pt.c (value_dependent_expression_p): Treat STMT_EXPR as
552         value-dependent.
553
554 2012-01-13  Dodji Seketeli  <dodji@redhat.com>
555
556         PR c++/51633
557         * semantics.c (cp_parser_ctor_initializer_opt_and_function_body):
558         Set the pointer to the last block of the constructor to the
559         current statement.
560         (build_constexpr_constructor_member_initializers): Get
561         build_data_member_initialization a chance to deal with more
562         statements before we choke.
563
564 2012-01-12  Jason Merrill  <jason@redhat.com>
565
566         PR c++/48051
567         * mangle.c (write_expression): Mangle BASELINK scope if
568         BASELINK_QUALIFIED_P.
569         * search.c (adjust_result_of_qualified_name_lookup): Set
570         BASELINK_QUALIFIED_P.
571         * tree.c (cp_tree_equal) [BASELINK]: Compare BASELINK_QUALIFIED_P.
572         * parser.c (cp_parser_postfix_dot_deref_expression): Don't call
573         adjust_result_of_qualified_name_lookup for non-qualified names.
574
575         PR c++/51403
576         * pt.c (unify): Handle error_mark_node.
577
578 2012-01-11  Jason Merrill  <jason@redhat.com>
579
580         PR c++/51565
581         * call.c (standard_conversion): For ptrmemfuncs, compare the
582         static_fn_types.
583
584         PR c++/51818
585         * mangle.c (find_substitution): A type is only a substitution
586         match if we're looking for a type.
587         (write_nested_name): Use decl_mangling_context.
588
589         * decl.c (decls_match): Assert that the arguments are decls.
590
591         PR c++/51613
592         * pt.c (resolve_overloaded_unification): Compare types with
593         same_type_p, not decls_match.
594
595 2012-01-10  Jason Merrill  <jason@redhat.com>
596
597         PR c++/51614
598         * class.c (build_base_path): Diagnose ambiguous base.
599
600         PR c++/51433
601         * semantics.c (cxx_eval_call_expression): Always retry previously
602         non-constant expressions.
603
604 2012-01-06  Jason Merrill  <jason@redhat.com>
605
606         DR 686
607         PR c++/47450
608         * parser.c (cp_parser_new_expression): Set
609         type_definition_forbidden_message.
610
611         PR c++/6057
612         PR c++/48051
613         PR c++/50855
614         PR c++/51322
615         * mangle.c (write_expression): Support NEW_EXPR, DELETE_EXPR,
616         THROW_EXPR, CONSTRUCTOR, OVERLOAD.  Fix PREINCREMENT_EXPR and
617         PREDECREMENT_EXPR.
618         (write_template_arg): Fix mangling of class-scope functions and
619         argument packs.
620         (mangle_decl): Update suggested -fabi-version argument.
621         * operators.def: Add DOTSTAR_EXPR, REINTERPRET_CAST_EXPR,
622         DYNAMIC_CAST_EXPR; correct CONST_CAST_EXPR, STATIC_CAST_EXPR.
623         * tree.c (dependent_name): No longer static.
624         * cp-tree.h: Declare it.
625         * pt.c (unify): Defer handling of unconverted functions.
626
627         * mangle.c (mangle_decl): Don't generate mangling aliases
628         for maybe-in-charge [cd]tors.
629
630         * error.c (dump_expr): Print type of CONSTRUCTOR.
631
632 2012-01-05  Dodji Seketeli  <dodji@redhat.com>
633
634         PR c++/51541
635         * parser.c (cp_parser_alias_declaration): Get out early upon
636         errors in the identifier or the attributes.
637
638 2012-01-04  Paolo Carlini  <paolo.carlini@oracle.com>
639
640         PR c++/51064
641         * pt.c (tsubst_copy_and_build): Maybe set TREE_NO_WARNING on
642         the tree returned by build_x_binary_op.
643
644 2012-01-03  Paolo Carlini  <paolo.carlini@oracle.com>
645
646         PR c++/51738
647         * parser.c (cp_parser_postfix_open_square_expression): Handle
648         postfix-expression [ braced-init-list ].
649
650 2012-01-03  Paolo Carlini  <paolo.carlini@oracle.com>
651
652         PR c++/29273
653         * rtti.c (build_dynamic_cast_1): In case of T a pointer type,
654         call decay_conversion on v.
655
656 2012-01-03  Paolo Carlini  <paolo.carlini@oracle.com>
657
658         PR c++/15867
659         * decl.c (duplicate_decls): With -Wredundant-decls don't warn for
660         declaration followed by specialization.
661
662 2012-01-03  Jakub Jelinek  <jakub@redhat.com>
663
664         PR c++/51669
665         * semantics.c (finish_omp_clauses): Call fold_build_cleanup_point_expr
666         on OMP_CLAUSE_{IF,FINAL,NUM_THREADS,SCHEDULE_CHUNK}_EXPR.
667
668 2012-01-02  Jason Merrill  <jason@redhat.com>
669
670         DR 1359
671         PR c++/51675
672         * method.c (walk_field_subobs): Don't check for uninitialized
673         fields in a union.
674         (synthesized_method_walk): Check here.
675
676         DR 325
677         PR c++/51666
678         * parser.c (cp_parser_cache_defarg): Split out...
679         (cp_parser_parameter_declaration): ...from here.
680         (cp_parser_save_nsdmi): Use it.
681         (cp_parser_cache_group): Remove CPP_COMMA support.
682
683 2012-01-02  Dodji Seketeli  <dodji@redhat.com>
684
685         PR c++/51462
686         * semantics.c (cx_check_missing_mem_inits): Don't assert in case
687         of error.
688
689 2012-01-02  Paolo Carlini  <paolo.carlini@oracle.com>
690
691         PR c++/20140
692         * typeck2.c (digest_init_r): Use copy_init when initializing
693         an array of chars.
694
695 2012-01-01  Paolo Carlini  <paolo.carlini@oracle.com>
696
697         PR c++/16603
698         * decl.c (build_enumerator): Don't call perform_integral_promotions
699         on the value.
700
701 2012-01-01  Paolo Carlini  <paolo.carlini@oracle.com>
702
703         PR c++/51379
704         * typeck.c (build_reinterpret_cast_1): Implement resolution of
705         DR 799.
706
707 2012-01-01  Fabien Chêne  <fabien@gcc.gnu.org>
708
709         * parser.c (cp_parser_using_declaration): Add a warning about
710         deprecated access declarations when no errors were encountered
711         while parsing the access declaration. Save the first token in
712         order to emit the warning at the right place.
713 \f
714 Copyright (C) 2012 Free Software Foundation, Inc.
715
716 Copying and distribution of this file, with or without modification,
717 are permitted in any medium without royalty provided the copyright
718 notice and this notice are preserved.