OSDN Git Service

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