OSDN Git Service

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