OSDN Git Service

PR c++/4926
[pf3gnuchains/gcc-fork.git] / gcc / cp / ChangeLog
1 2010-02-03  Jason Merrill  <jason@redhat.com>
2
3         PR c++/4926
4         PR c++/38600
5         * mangle.c (write_unqualified_id): Split out from write_expression.
6         (write_unqualified_name): Call it.
7         (write_member_name): Likewise.
8         (write_expression): Support TEMPLATE_ID_EXPR.
9         Disambiguate operator names.
10
11         PR c++/12909
12         * mangle.c (write_type) [VECTOR_TYPE]: Change mangling with
13         -fabi-version=4.
14
15 2010-02-02  Jason Merrill  <jason@redhat.com>
16
17         PR c++/41090
18         * decl.c (cp_finish_decl): Add local statics to cfun->local_decls.
19         * optimize.c (clone_body): Remap their initializers when making base
20         variants.
21         (maybe_clone_body): Complain if multiple clones aren't safe.
22
23 2010-01-29  Dodji Seketeli  <dodji@redhat.com>
24
25         PR c++/42758
26         PR c++/42634
27         PR c++/42336
28         PR c++/42797
29         PR c++/42880
30         * cp-tree.h (NON_DEFAULT_TEMPLATE_ARGS_COUNT,
31         SET_NON_DEFAULT_TEMPLATE_ARGS_COUNT,
32         GET_NON_DEFAULT_TEMPLATE_ARGS_COUNT): New accessor macros.
33         * pt.c (coerce_template_parms, type_unification_real,
34         expand_template_argument_pack, coerce_template_parameter_pack):
35         Set the non default template args count.
36         (current_template_args): Always set non defaulted
37         template args count when compiled with --enable-checking
38         (tsubst_template_args, type_unification_real): Propagate the non
39         defaulted template args count.
40         * error.c (get_non_default_template_args_count): Renamed
41         count_non_default_template_args into this. Don't calculate the
42         non default template argument count anymore. Use the new
43         accessor macros above to get it.
44         (dump_template_argument_list, dump_type, dump_decl,
45         dump_template_parms): Adjust.
46         * parser.c (cp_parser_template_argument_list): Always set defaulted
47         template args count when compiled with --enable-checking.
48
49 2010-01-29  Shujing Zhao  <pearly.zhao@oracle.com>
50
51         * decl.c (redeclaration_error_message): Wrap the return messages into
52         G_() for easy translation.
53
54 2010-01-28  Jason Merrill  <jason@redhat.com>
55
56         PR c++/42880
57         * semantics.c (begin_class_definition): Don't use type_as_string.
58
59 2010-01-28  Dodji Seketeli  <dodji@redhat.com>
60
61         PR c++/42713
62         PR c++/42820
63         * typeck.c (get_template_parms_of_dependent_type): Factorized
64         this out of incompatible_template_type_parms_p
65         (incompatible_dependent_types_p): Renamed
66         incompatible_template_type_parms_p into this. Make it detect
67         two incompatible dependent typedefs too.
68         (structural_comptypes): Use incompatible_dependent_types_p.
69         * pt.c (get_template_info):
70         Handle BOUND_TEMPLATE_TEMPLATE_PARAM.
71
72 2010-01-20  Janis Johnson  <janis187@us.ibm.com>
73             Jason Merrill  <jason@redhat.com>
74
75         * mangle.c (write_type): Mangle transparent record as member type.
76         * semantics.c (begin_class_definition): Recognize decimal classes
77         and set TYPE_TRANSPARENT_AGGR.
78
79 2010-01-20  Jason Merrill  <jason@redhat.com>
80
81         PR c++/42338
82         * mangle.c (write_expression): Handle tree codes that have extra
83         arguments in the middle-end.
84
85 2010-01-20  Paolo Carlini  <paolo.carlini@oracle.com>
86
87         PR c++/42038
88         * except.c (expand_start_catch_block): Deal correctly with
89         do_begin_catch returning error_mark_node.
90
91 2010-01-20  Jason Merrill  <jason@redhat.com>
92
93         PR c++/41788
94         * class.c (layout_class_type): Set packed_maybe_necessary for packed
95         non-PODs.
96
97         PR c++/41920
98         * semantics.c (build_lambda_object): Call mark_used on captured
99         variables.
100
101         PR c++/40750
102         * decl.c (grokdeclarator): Clear type_quals for a member function
103         declared using a typedef.  Don't complain about adding cv-quals
104         to a function typedef in C++0x mode.
105
106 2010-01-20  Jakub Jelinek  <jakub@redhat.com>
107
108         * decl.c (create_array_type_for_decl): Remove set but not used
109         variable error_msg.  Remove break stmts after return stmts.
110
111 2010-01-19  Dodji Seketeli  <dodji@redhat.com>
112
113         * error.c (dump_template_parms, count_non_default_template_args):
114         Revert fix of PR c++/42634.
115
116 2010-01-18  Dodji Seketeli  <dodji@redhat.com>
117
118         PR c++/42634
119         * error.c (dump_template_parms): Use innermost template
120         arguments before calling count_non_default_template_args.
121         (count_non_default_template_args): We are being called with
122         template innermost arguments now. There is no need to ensure
123         that again.
124
125 2010-01-18  Dodji Seketeli  <dodji@redhat.com>
126
127         PR c++/42766
128         * cvt.c (build_expr_type_conversion): Look through OVERLOAD.
129
130 2010-01-17  Dodji Seketeli  <dodji@redhat.com>
131
132         PR c++/42697
133         *pt.c (tsubst_decl):  Revert commit for PR c++/42697.
134
135 2010-01-17  Dodji Seketeli  <dodji@redhat.com>
136
137         PR c++/42697
138         *pt.c (tsubst_decl): Get the arguments of a specialization from
139         the specialization template, not from the most general template.
140
141 2010-01-16  Jason Merrill  <jason@redhat.com>
142
143         PR c++/42761
144         * semantics.c (finish_decltype_type): Within a template, treat
145         unresolved CALL_EXPR as dependent.
146
147 2010-01-15  Dodji Seketeli  <dodji@redhat.com>
148
149         * error.c (dump_template_parms,count_non_default_template_args):
150         Revert changes of PR c++/42634.
151
152 2010-01-14  Jakub Jelinek  <jakub@redhat.com>
153
154         PR middle-end/42674
155         * decl.c (finish_function): Don't emit -Wreturn-type warnings in
156         functions with noreturn attribute.
157
158 2010-01-14  Jason Merrill  <jason@redhat.com>
159
160         PR c++/42701
161         * call.c (build_new_method_call): Don't free the vec here.
162
163         PR c++/42655
164         * call.c (convert_like_real): Do full decay_conversion for ck_rvalue.
165
166 2010-01-13  Dodji Seketeli  <dodji@redhat.com>
167
168         PR c++/42634
169         * error.c (dump_template_parms): Use innermost template
170         arguments before calling count_non_default_template_args.
171         (count_non_default_template_args): We are being called with
172         template innermost arguments now. There is no need to ensure
173         that again.
174
175 2010-01-07  Dodji Seketeli  <dodji@redhat.com>
176
177         c++/40155
178         * pt.c (unify_pack_expansion): In non-deduced contexts, re-use template
179         arguments that were previously deduced.
180
181 2010-01-05  Jason Merrill  <jason@redhat.com>
182
183         * pt.c (unify_pack_expansion): Handle deduction from init-list.
184         * call.c (build_over_call): Don't complain about it.
185
186 2010-01-04  Jason Merrill  <jason@redhat.com>
187
188         PR c++/42555
189         * pt.c (tsubst_decl): Don't apply type attributes in place.
190
191         PR c++/42567
192         * semantics.c (describable_type): Remove decltype comment and
193         semantics.
194
195
196 \f
197 Copyright (C) 2010 Free Software Foundation, Inc.
198
199 Copying and distribution of this file, with or without modification,
200 are permitted in any medium without royalty provided the copyright
201 notice and this notice are preserved.