OSDN Git Service

PR c++/51854
[pf3gnuchains/gcc-fork.git] / gcc / cp / ChangeLog
1 2012-01-16  Jakub Jelinek  <jakub@redhat.com>
2
3         PR c++/51854
4         * mangle.c (write_template_arg_literal): Handle complex.
5
6 2012-01-16  Jason Merrill  <jason@redhat.com>
7
8         PR c++/51827
9         * mangle.c (mangle_decl): Don't mangle uninstantiated templates.
10
11         PR c++/51868
12         * typeck.c (build_static_cast_1): Handle bit-fields properly.
13
14 2012-01-13  Ian Lance Taylor  <iant@google.com>
15
16         PR c++/50012
17         * typeck.c (enum_cast_to_int): New static function.
18         (cp_build_binary_op): When handling warn_sign_compare, don't test
19         for TREE_NO_WARNING.  Do call enum_cast_to_int.
20         * call.c (avoid_sign_compare_warnings): Remove static function.
21         (build_new_op_1): Don't call avoid_sign_compare_warnings.
22
23 2012-01-13  Steven Bosscher  <steven@gcc.gnu.org>
24
25         * decl2.c: Do not include tree-mudflap.h
26         * semantics.c: Likewise.
27
28 2012-01-13  Jason Merrill  <jason@redhat.com>
29
30         PR c++/20681
31         * semantics.c (finish_break_stmt): Avoid adding an unreachable
32         BREAK_STMT.
33
34         PR c++/51813
35         * decl2.c (constrain_visibility): Clear DECL_VISIBILITY_SPECIFIED
36         when reducing the visibility.
37
38         PR c++/51620
39         * class.c (build_vtbl_initializer): Use __cxa_deleted_virtual.
40
41 2012-01-12  Jason Merrill  <jason@redhat.com>
42
43         PR c++/51714
44         * pt.c (value_dependent_expression_p): Treat STMT_EXPR as
45         value-dependent.
46
47 2012-01-13  Dodji Seketeli  <dodji@redhat.com>
48
49         PR c++/51633
50         * semantics.c (cp_parser_ctor_initializer_opt_and_function_body):
51         Set the pointer to the last block of the constructor to the
52         current statement.
53         (build_constexpr_constructor_member_initializers): Get
54         build_data_member_initialization a chance to deal with more
55         statements before we choke.
56
57 2012-01-12  Jason Merrill  <jason@redhat.com>
58
59         PR c++/48051
60         * mangle.c (write_expression): Mangle BASELINK scope if
61         BASELINK_QUALIFIED_P.
62         * search.c (adjust_result_of_qualified_name_lookup): Set
63         BASELINK_QUALIFIED_P.
64         * tree.c (cp_tree_equal) [BASELINK]: Compare BASELINK_QUALIFIED_P.
65         * parser.c (cp_parser_postfix_dot_deref_expression): Don't call
66         adjust_result_of_qualified_name_lookup for non-qualified names.
67
68         PR c++/51403
69         * pt.c (unify): Handle error_mark_node.
70
71 2012-01-11  Jason Merrill  <jason@redhat.com>
72
73         PR c++/51565
74         * call.c (standard_conversion): For ptrmemfuncs, compare the
75         static_fn_types.
76
77         PR c++/51818
78         * mangle.c (find_substitution): A type is only a substitution
79         match if we're looking for a type.
80         (write_nested_name): Use decl_mangling_context.
81
82         * decl.c (decls_match): Assert that the arguments are decls.
83
84         PR c++/51613
85         * pt.c (resolve_overloaded_unification): Compare types with
86         same_type_p, not decls_match.
87
88 2012-01-10  Jason Merrill  <jason@redhat.com>
89
90         PR c++/51614
91         * class.c (build_base_path): Diagnose ambiguous base.
92
93         PR c++/51433
94         * semantics.c (cxx_eval_call_expression): Always retry previously
95         non-constant expressions.
96
97 2012-01-06  Jason Merrill  <jason@redhat.com>
98
99         DR 686
100         PR c++/47450
101         * parser.c (cp_parser_new_expression): Set
102         type_definition_forbidden_message.
103
104         PR c++/6057
105         PR c++/48051
106         PR c++/50855
107         PR c++/51322
108         * mangle.c (write_expression): Support NEW_EXPR, DELETE_EXPR,
109         THROW_EXPR, CONSTRUCTOR, OVERLOAD.  Fix PREINCREMENT_EXPR and
110         PREDECREMENT_EXPR.
111         (write_template_arg): Fix mangling of class-scope functions and
112         argument packs.
113         (mangle_decl): Update suggested -fabi-version argument.
114         * operators.def: Add DOTSTAR_EXPR, REINTERPRET_CAST_EXPR,
115         DYNAMIC_CAST_EXPR; correct CONST_CAST_EXPR, STATIC_CAST_EXPR.
116         * tree.c (dependent_name): No longer static.
117         * cp-tree.h: Declare it.
118         * pt.c (unify): Defer handling of unconverted functions.
119
120         * mangle.c (mangle_decl): Don't generate mangling aliases
121         for maybe-in-charge [cd]tors.
122
123         * error.c (dump_expr): Print type of CONSTRUCTOR.
124
125 2012-01-05  Dodji Seketeli  <dodji@redhat.com>
126
127         PR c++/51541
128         * parser.c (cp_parser_alias_declaration): Get out early upon
129         errors in the identifier or the attributes.
130
131 2012-01-04  Paolo Carlini  <paolo.carlini@oracle.com>
132
133         PR c++/51064
134         * pt.c (tsubst_copy_and_build): Maybe set TREE_NO_WARNING on
135         the tree returned by build_x_binary_op.
136
137 2012-01-03  Paolo Carlini  <paolo.carlini@oracle.com>
138
139         PR c++/51738
140         * parser.c (cp_parser_postfix_open_square_expression): Handle
141         postfix-expression [ braced-init-list ].
142
143 2012-01-03  Paolo Carlini  <paolo.carlini@oracle.com>
144
145         PR c++/29273
146         * rtti.c (build_dynamic_cast_1): In case of T a pointer type,
147         call decay_conversion on v.
148
149 2012-01-03  Paolo Carlini  <paolo.carlini@oracle.com>
150
151         PR c++/15867
152         * decl.c (duplicate_decls): With -Wredundant-decls don't warn for
153         declaration followed by specialization.
154
155 2012-01-03  Jakub Jelinek  <jakub@redhat.com>
156
157         PR c++/51669
158         * semantics.c (finish_omp_clauses): Call fold_build_cleanup_point_expr
159         on OMP_CLAUSE_{IF,FINAL,NUM_THREADS,SCHEDULE_CHUNK}_EXPR.
160
161 2012-01-02  Jason Merrill  <jason@redhat.com>
162
163         DR 1359
164         PR c++/51675
165         * method.c (walk_field_subobs): Don't check for uninitialized
166         fields in a union.
167         (synthesized_method_walk): Check here.
168
169         DR 325
170         PR c++/51666
171         * parser.c (cp_parser_cache_defarg): Split out...
172         (cp_parser_parameter_declaration): ...from here.
173         (cp_parser_save_nsdmi): Use it.
174         (cp_parser_cache_group): Remove CPP_COMMA support.
175
176 2012-01-02  Dodji Seketeli  <dodji@redhat.com>
177
178         PR c++/51462
179         * semantics.c (cx_check_missing_mem_inits): Don't assert in case
180         of error.
181
182 2012-01-02  Paolo Carlini  <paolo.carlini@oracle.com>
183
184         PR c++/20140
185         * typeck2.c (digest_init_r): Use copy_init when initializing
186         an array of chars.
187
188 2012-01-01  Paolo Carlini  <paolo.carlini@oracle.com>
189
190         PR c++/16603
191         * decl.c (build_enumerator): Don't call perform_integral_promotions
192         on the value.
193
194 2012-01-01  Paolo Carlini  <paolo.carlini@oracle.com>
195
196         PR c++/51379
197         * typeck.c (build_reinterpret_cast_1): Implement resolution of
198         DR 799.
199
200 2012-01-01  Fabien ChĂȘne  <fabien@gcc.gnu.org>
201
202         * parser.c (cp_parser_using_declaration): Add a warning about
203         deprecated access declarations when no errors were encountered
204         while parsing the access declaration. Save the first token in
205         order to emit the warning at the right place.
206 \f
207 Copyright (C) 2012 Free Software Foundation, Inc.
208
209 Copying and distribution of this file, with or without modification,
210 are permitted in any medium without royalty provided the copyright
211 notice and this notice are preserved.