OSDN Git Service

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