re PR c++/59269 (ICE with reference in union)
[official-gcc.git] / gcc / cp / ChangeLog
blob45a6c9778e82fb3947205738b765bc0d9686a9fe
1 2014-01-17  Paolo Carlini  <paolo.carlini@oracle.com>
3         PR c++/59269
4         * init.c (build_value_init_noctor): Assert !TYPE_HAS_COMPLEX_DFLT
5         only when errorcount == 0.
7 2014-01-17  Marek Polacek  <polacek@redhat.com>
9         PR c++/59838
10         * cvt.c (ocp_convert): Don't segfault on non-existing
11         ENUM_UNDERLYING_TYPE.
13 2014-01-16  Jason Merrill  <jason@redhat.com>
15         PR c++/59821
16         * tree.c (bot_manip): Update the location of builtin_LINE and
17         builtin_FILE calls.
19 2014-01-14  Jason Merrill  <jason@redhat.com>
21         PR c++/59659
22         * typeck2.c (massage_init_elt): New.
23         (process_init_constructor_record)
24         (process_init_constructor_union): Use it.
25         (process_init_constructor_array): Use it.  Use RANGE_EXPR.
26         (split_nonconstant_init_1): Handle it.
27         * semantics.c (cxx_eval_vec_init_1): Use force_rvalue.
29 2014-01-09  Balaji V. Iyer  <balaji.v.iyer@intel.com>
31         PR c++/59631
32         * parser.c (cp_parser_postfix_expression): Added a new if-statement
33         and replaced an existing if-statement with else-if statement.
34         Changed an existing error message wording to match the one from the C
35         parser.
37 2014-01-08  Jason Merrill  <jason@redhat.com>
39         PR c++/59614
40         * class.c (abi_tag_data): Add tags field.
41         (check_abi_tags): Initialize it.
42         (find_abi_tags_r): Support collecting missing tags.
43         (mark_type_abi_tags): Don't look at template args.
44         (inherit_targ_abi_tags): New.
45         (check_bases_and_members): Use it.
46         * cp-tree.h (ABI_TAG_IMPLICIT): New.
47         * mangle.c (write_abi_tags): Check it.
49 2014-01-07  Jason Merrill  <jason@redhat.com>
51         PR c++/58856
52         * pt.c (num_innermost_template_parms): New.
53         (get_underlying_template): Use it.
55         PR c++/58965
56         * mangle.c (write_guarded_var_name): Handle null DECL_NAME.
58 2014-01-07  Paolo Carlini  <paolo.carlini@oracle.com>
60         * semantics.c (trait_expr_value, [CPTK_IS_BASE_OF]): Implement
61         the letter of 20.11.6 about Base and Derived naming the same
62         class type modulo cv-qualifiers.
64 2014-01-06  Adam Butcher  <adam@jessamine.co.uk>
66         PR c++/59635
67         * lambda.c (maybe_add_lambda_conv_op): Handle marking conversion
68         function as unimplemented for generic lambdas with varargs.
70         PR c++/59636
71         * parser.c (cp_parser_template_parameter): Early out with
72         error_mark_node if parameter declaration was not parsed.
74         PR c++/59629
75         * parser.c (cp_parser_lambda_expression): Save/reset/restore
76         auto_is_implicit_function_template_parm_p around lambda body.
78         PR c++/59638
79         * parser.c (cp_parser_init_declarator): Undo fully implicit
80         template parameter list when declarator is not a function.
82 2014-01-03  Marc Glisse  <marc.glisse@inria.fr>
84         PR c++/58950
85         * cvt.c (convert_to_void): Handle VEC_PERM_EXPR and VEC_COND_EXPR.
87 2014-01-03  Tobias Burnus  <burnus@net-b.de>
89         PR c++/58567
90         * pt.c (tsubst_omp_for_iterator): Early return for error_mark_node.
92 2014-01-03  Paolo Carlini  <paolo.carlini@oracle.com>
94         Core DR 1442
95         PR c++/59165
96         * parser.c (cp_parser_perform_range_for_lookup): Don't pass true
97         as include_std to perform_koenig_lookup.
98         (cp_parser_postfix_expression): Adjust.
99         * pt.c (tsubst_copy_and_build): Likewise.
100         * semantics.c (perform_koenig_lookup): Remove bool parameter.
101         (omp_reduction_lookup): Adjust.
102         * name-lookup.c (lookup_arg_dependent_1): Remove bool parameter.
103         (lookup_arg_dependent): Likewise.
104         (lookup_function_nonclass): Adjust.
105         * name-lookup.h: Adjust declaration.
106         * cp-tree.h: Likewise.
108 2014-01-02  Marc Glisse  <marc.glisse@inria.fr>
110         PR c++/59087
111         * parser.c (cp_parser_userdef_numeric_literal): Mention
112         -fext-numeric-literals in the message.
114 2014-01-02  Marc Glisse  <marc.glisse@inria.fr>
116         PR c++/59641
117         * call.c (build_conditional_expr_1): Check the return value of
118         force_rvalue.
120 2014-01-02  Marc Glisse  <marc.glisse@inria.fr>
122         * call.c (convert_like_real): Check complain.
124 2014-01-02  Marc Glisse  <marc.glisse@inria.fr>
126         PR c++/59378
127         * typeck.c (build_x_vec_perm_expr): Handle non-dependent arguments
128         in templates.
130 2014-01-02  Richard Sandiford  <rdsandiford@googlemail.com>
132         Update copyright years
134 2014-01-02  Richard Sandiford  <rdsandiford@googlemail.com>
136         * cp-array-notation.c, cp-cilkplus.c, vtable-class-hierarchy.c: Use
137         the standard form for the copyright notice.
139 Copyright (C) 2014 Free Software Foundation, Inc.
141 Copying and distribution of this file, with or without modification,
142 are permitted in any medium without royalty provided the copyright
143 notice and this notice are preserved.