OSDN Git Service

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