OSDN Git Service

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