]> gcc.gnu.org Git - gcc.git/blame - gcc/cp/ChangeLog
re PR c++/12909 (ambiguity in mangling vector types)
[gcc.git] / gcc / cp / ChangeLog
CommitLineData
58a15cf8
JM
12010-03-03 Jason Merrill <jason@redhat.com>
2
3 PR c++/12909
4 * mangle.c: Include cgraph.h.
5 (mangle_decl): If the mangled name will change in a later
6 ABI version, make the later mangled name an alias.
7 * method.c (make_alias_for): Copy DECL_ARGUMENTS.
8 * Make-lang.in (mangle.o): Depend on cgraph.h.
9
894e2652
SZ
102010-03-01 Marco Poletti <poletti.marco@gmail.com>
11
12 * pt.c (redeclare_class_template): Use error_n and inform_n.
13
2a3dbebf
MM
142010-02-27 Mark Mitchell <mark@codesourcery.com>
15
16 PR c++/42748
17 * cp-tree.h (push_tinst_level): Declare.
18 (pop_tinst_level): Likewise.
19 * pt.c (push_tinst_level): Give it external linkage.
20 (pop_tinst_level): Likewise.
21 * mangle.c (mangle_decl_string): Set the source location to that
22 of the decl while mangling.
23
baae602e
SM
242010-02-27 Simon Martin <simartin@users.sourceforge.net>
25
26 PR c++/42054
27 * pt.c (redeclare_class_template): Return false if there are erroneous
28 template parameters.
29
124e0d27
MLI
302010-02-24 Manuel López-Ibáñez <manu@gcc.gnu.org>
31
32 * pt.c (push_tinst_level): Replace -ftemplate-depth- with
33 -ftemplate-depth=.
34
254d1a5a
JM
352010-02-24 Jason Merrill <jason@redhat.com>
36
b66093b0
JM
37 PR c++/12909
38 * mangle.c (write_type): Give -Wabi warning for old vector mangling.
39
254d1a5a
JM
40 * class.c (layout_class_type): Don't give -Wabi warning for a bug
41 in a previous ABI version.
42
c6569cd0
JM
432010-02-23 Jason Merrill <jason@redhat.com>
44
45 PR c++/43143
46 * typeck2.c (digest_init_r): Accept value init of array.
47
a98c2819
MLI
482010-02-22 Manuel López-Ibáñez <manu@gcc.gnu.org>
49
50 PR c++/43126
51 * typeck.c (convert_arguments): Update error message.
a98c2819 52
3a7ba040
MS
532010-02-22 Mike Stump <mikestump@comcast.net>
54
55 PR c++/43125
56 * decl.c (duplicate_decls): Merge DECL_PRESERVE_P.
57
f89b94d9
MLI
582010-02-21 Manuel López-Ibáñez <manu@gcc.gnu.org>
59
60 PR c++/23510
61 * error.c (print_instantiation_partial_context_line): New.
62 (print_instantiation_partial_context): Print at most 12 contexts,
63 skip the rest with a message.
64
04afbf1c
DS
652010-02-21 Dodji Seketeli <dodji@redhat.com>
66
67 PR c++/42824
68 * pt.c (lookup_template_class): Better support of specialization
69 of member of class template implicit instantiation.
70
17251338
MLI
712010-02-20 Manuel López-Ibáñez <manu@gcc.gnu.org>
72
73 PR c++/35669
74 * call.c (conversion_null_warnings): Replace -Wconversion with
75 -Wconversion-null.
76 * cvt.c (build_expr_type_conversion): Likewise.
77
935c0a5d
JM
782010-02-18 Jason Merrill <jason@redhat.com>
79
7c08df6c
JM
80 PR c++/42837
81 * class.c (create_vtable_ptr): Set DECL_PACKED if type is packed.
82
1ff6b2c8
JM
83 PR c++/43108
84 * typeck.c (cp_build_binary_op): Adapt mixed complex/non handling from
85 C build_binary_op.
86 * cp-tree.h (WANT_VECTOR_OR_COMPLEX): Rename from WANT_VECTOR.
87 * cvt.c (build_expr_type_conversion): Allow COMPLEX_TYPE.
88
7890246f
JM
89 PR c++/43070
90 * semantics.c (finish_goto_stmt): Don't call decay_conversion.
91
04daa92b
JM
92 PR c++/26261
93 PR c++/43101
94 * pt.c (tsubst_qualified_id): Do normal lookup in non-dependent scope.
95 (maybe_update_decl_type): New fn.
96 * parser.c (cp_parser_init_declarator): Use it.
97
935c0a5d
JM
98 PR c++/43109
99 * semantics.c (begin_class_definition): Don't crash on unnamed ns.
100
d29760ad
JM
1012010-02-17 Jason Merrill <jason@redhat.com>
102
9ba59715
JM
103 PR c++/43075
104 * call.c (build_over_call): Don't create zero-sized assignments.
105 * cp-gimplify.c (cp_genericize_r): Don't remove them here.
106 * cp-objcp-common.c (cp_expr_size): Remove.
107 * cp-tree.h: Remove prototype.
108
77278f4a
JM
109 PR c++/43069
110 * name-lookup.c (set_decl_namespace): Don't copy DECL_CONTEXT if the
111 decl we looked up doesn't match.
112
85a52ea5
JM
113 PR c++/43093
114 * cp-gimplify.c (cp_gimplify_expr) [INIT_EXPR]: Return if we don't
115 have an INIT_EXPR anymore.
116
d29760ad
JM
117 PR c++/43079
118 * pt.c (convert_nontype_argument): Change assert to test.
119
38e40fcd
JM
1202010-02-16 Jason Merrill <jason@redhat.com>
121
0d08582e
JM
122 * cp-gimplify.c (cp_gimplify_expr): Fix error recovery.
123
1e2ddf80
JM
124 PR c++/43031
125 * cp-gimplify.c (cp_gimplify_expr) [MODIFY_EXPR]: Use
126 VIEW_CONVERT_EXPR for conversions between structural equality types
127 that the back end can't tell are the same.
128
38e40fcd
JM
129 PR c++/43036
130 * tree.c (build_cplus_array_type): Set TYPE_MAIN_VARIANT to strip
131 cv-quals from element here.
132 (cp_build_qualified_type_real): Not here. Preserve typedef name.
133
1acb8caa
JM
1342010-02-14 Jason Merrill <jason@redhat.com>
135
136 PR c++/41997
137 * semantics.c (finish_compound_literal): Use
138 cp_apply_type_quals_to_decl when creating a static variable.
139
da7d88bf
JM
1402010-02-12 Jason Merrill <jason@redhat.com>
141
142 PR c++/43024
143 * name-lookup.h (current_binding_level): Check for null
144 cp_function_chain.
145
96b4a0b5
JM
1462010-02-12 Jason Merrill <jason@redhat.com>
147
148 PR c++/43054
76a25412 149 * tree.c (cp_tree_equal): Correct CALL_EXPR logic.
96b4a0b5 150
2e034e32
JJ
1512010-02-12 Jakub Jelinek <jakub@redhat.com>
152
153 PR c++/43033
154 * name-lookup.c (pushdecl_maybe_friend): Check default args of t
155 instead of x.
156
19030d77
JM
1572010-02-10 Jason Merrill <jason@redhat.com>
158
159 PR c++/41896
160 * semantics.c (outer_lambda_capture_p): Revert.
161 (add_capture): Only finish_member_declaration if
162 we're in the lambda class.
163 (register_capture_members): New.
164 * cp-tree.h: Declare it.
165 * parser.c (cp_parser_lambda_expression): Call it.
166
2cb95a6a
JM
1672010-02-10 Jason Merrill <jason@redhat.com>
168
169 PR c++/41896
170 * semantics.c (outer_lambda_capture_p): Use current_function_decl
171 instead of current_class_type.
172
f1c3cf3c
JM
1732010-02-10 Jason Merrill <jason@redhat.com>
174
175 PR c++/42983, core issue 906
176 * method.c (defaultable_fn_check): Check virtualness.
177
7a79ff3b
JM
1782010-02-10 Jason Merrill <jason@redhat.com>
179
180 PR c++/43016
181 * semantics.c (maybe_add_lambda_conv_op): Set DECL_INTERFACE_KNOWN.
182
f25a2b52
SZ
1832010-02-10 Shujing Zhao <pearly.zhao@oracle.com>
184
185 * Make-lang.in (cp/cvt.o, cp/parser.o, cp/search.o): Depend on intl.h.
186 * cvt.c (warn_ref_binding): Wrap the messages into G_() for easy
187 translation.
188 * parser.c (cp_parser_postfix_expression, cp_parser_new_type_id)
189 (cp_parser_cast_expression, cp_parser_condition, cp_parser_decltype)
190 (cp_parser_parameter_declaration)
191 (cp_parser_exception_specification_opt)
192 (cp_parser_exception_declaration): Likewise.
193 * pt.c (check_default_tmpl_args): Likewise.
194 * search.c (lookup_field_r): Likewise.
195
0bbe864d
JM
1962010-02-09 Jason Merrill <jason@redhat.com>
197
198 PR c++/42399
199 * pt.c (tsubst_copy_and_build): Propagate LAMBDA_EXPR_LOCATION.
200
643d4cd6
JM
2012010-02-09 Jason Merrill <jason@redhat.com>
202
203 PR c++/42370
204 * decl2.c (change_return_type): New fn.
205 * semantics.c (apply_lambda_return_type): Use it.
206 * cp-tree.h: Declare it.
207
6561cdf6
RG
2082010-02-05 Richard Guenther <rguenther@suse.de>
209
210 * Make-lang.in (cp/cp-lang.o): Depend on gt-cp-cp-lang.h.
211 * cp-lang.c: Include gt-cp-cp-lang.h.
212 * config-lang.in (gtfiles): Add cp/cp-lang.c.
213
3cdabe3b
DS
2142010-02-05 Dodji Seketeli <dodji@redhat.com>
215
216 PR c++/42915
217 * typeck.c (get_template_parms_of_dependent_type): Try getting
218 the template parameters fromt the type itself first.
219
abfe01ce
JM
2202010-02-03 Jason Merrill <jason@redhat.com>
221
f000c6a7
JM
222 PR c++/4926
223 PR c++/38600
224 * mangle.c (write_unqualified_id): Split out from write_expression.
225 (write_unqualified_name): Call it.
226 (write_member_name): Likewise.
227 (write_expression): Support TEMPLATE_ID_EXPR.
228 Disambiguate operator names.
229
abfe01ce
JM
230 PR c++/12909
231 * mangle.c (write_type) [VECTOR_TYPE]: Change mangling with
232 -fabi-version=4.
233
e6ca6e2a
JM
2342010-02-02 Jason Merrill <jason@redhat.com>
235
236 PR c++/41090
237 * decl.c (cp_finish_decl): Add local statics to cfun->local_decls.
238 * optimize.c (clone_body): Remap their initializers when making base
239 variants.
240 (maybe_clone_body): Complain if multiple clones aren't safe.
241
1a048f82
DS
2422010-01-29 Dodji Seketeli <dodji@redhat.com>
243
244 PR c++/42758
245 PR c++/42634
246 PR c++/42336
247 PR c++/42797
248 PR c++/42880
249 * cp-tree.h (NON_DEFAULT_TEMPLATE_ARGS_COUNT,
250 SET_NON_DEFAULT_TEMPLATE_ARGS_COUNT,
251 GET_NON_DEFAULT_TEMPLATE_ARGS_COUNT): New accessor macros.
252 * pt.c (coerce_template_parms, type_unification_real,
253 expand_template_argument_pack, coerce_template_parameter_pack):
254 Set the non default template args count.
255 (current_template_args): Always set non defaulted
256 template args count when compiled with --enable-checking
257 (tsubst_template_args, type_unification_real): Propagate the non
258 defaulted template args count.
259 * error.c (get_non_default_template_args_count): Renamed
260 count_non_default_template_args into this. Don't calculate the
261 non default template argument count anymore. Use the new
262 accessor macros above to get it.
263 (dump_template_argument_list, dump_type, dump_decl,
264 dump_template_parms): Adjust.
265 * parser.c (cp_parser_template_argument_list): Always set defaulted
266 template args count when compiled with --enable-checking.
267
9ee5ebeb
SZ
2682010-01-29 Shujing Zhao <pearly.zhao@oracle.com>
269
270 * decl.c (redeclaration_error_message): Wrap the return messages into
271 G_() for easy translation.
272
cd924144
JM
2732010-01-28 Jason Merrill <jason@redhat.com>
274
275 PR c++/42880
276 * semantics.c (begin_class_definition): Don't use type_as_string.
277
20c202f3
DS
2782010-01-28 Dodji Seketeli <dodji@redhat.com>
279
280 PR c++/42713
281 PR c++/42820
282 * typeck.c (get_template_parms_of_dependent_type): Factorized
283 this out of incompatible_template_type_parms_p
284 (incompatible_dependent_types_p): Renamed
285 incompatible_template_type_parms_p into this. Make it detect
286 two incompatible dependent typedefs too.
287 (structural_comptypes): Use incompatible_dependent_types_p.
288 * pt.c (get_template_info):
289 Handle BOUND_TEMPLATE_TEMPLATE_PARAM.
290
ebf0bf7f
JJ
2912010-01-20 Janis Johnson <janis187@us.ibm.com>
292 Jason Merrill <jason@redhat.com>
293
294 * mangle.c (write_type): Mangle transparent record as member type.
295 * semantics.c (begin_class_definition): Recognize decimal classes
296 and set TYPE_TRANSPARENT_AGGR.
297
4d43dcde
JM
2982010-01-20 Jason Merrill <jason@redhat.com>
299
300 PR c++/42338
301 * mangle.c (write_expression): Handle tree codes that have extra
302 arguments in the middle-end.
303
4227d4a1
PC
3042010-01-20 Paolo Carlini <paolo.carlini@oracle.com>
305
306 PR c++/42038
307 * except.c (expand_start_catch_block): Deal correctly with
308 do_begin_catch returning error_mark_node.
309
e4672ccd
JM
3102010-01-20 Jason Merrill <jason@redhat.com>
311
a402c1b1
JM
312 PR c++/41788
313 * class.c (layout_class_type): Set packed_maybe_necessary for packed
314 non-PODs.
315
1f4a7a48
JM
316 PR c++/41920
317 * semantics.c (build_lambda_object): Call mark_used on captured
318 variables.
319
e4672ccd
JM
320 PR c++/40750
321 * decl.c (grokdeclarator): Clear type_quals for a member function
322 declared using a typedef. Don't complain about adding cv-quals
323 to a function typedef in C++0x mode.
324
1124098b
JJ
3252010-01-20 Jakub Jelinek <jakub@redhat.com>
326
327 * decl.c (create_array_type_for_decl): Remove set but not used
328 variable error_msg. Remove break stmts after return stmts.
329
11d7788d
DS
3302010-01-19 Dodji Seketeli <dodji@redhat.com>
331
332 * error.c (dump_template_parms, count_non_default_template_args):
333 Revert fix of PR c++/42634.
334
ebea03e0
DS
3352010-01-18 Dodji Seketeli <dodji@redhat.com>
336
337 PR c++/42634
338 * error.c (dump_template_parms): Use innermost template
339 arguments before calling count_non_default_template_args.
340 (count_non_default_template_args): We are being called with
341 template innermost arguments now. There is no need to ensure
342 that again.
343
a5cf630e
DS
3442010-01-18 Dodji Seketeli <dodji@redhat.com>
345
346 PR c++/42766
347 * cvt.c (build_expr_type_conversion): Look through OVERLOAD.
348
c4471bb2
DS
3492010-01-17 Dodji Seketeli <dodji@redhat.com>
350
351 PR c++/42697
352 *pt.c (tsubst_decl): Revert commit for PR c++/42697.
353
4548cb4b
DS
3542010-01-17 Dodji Seketeli <dodji@redhat.com>
355
356 PR c++/42697
357 *pt.c (tsubst_decl): Get the arguments of a specialization from
358 the specialization template, not from the most general template.
359
d1c05c88
JM
3602010-01-16 Jason Merrill <jason@redhat.com>
361
362 PR c++/42761
363 * semantics.c (finish_decltype_type): Within a template, treat
364 unresolved CALL_EXPR as dependent.
365
58be9ce9
DS
3662010-01-15 Dodji Seketeli <dodji@redhat.com>
367
368 * error.c (dump_template_parms,count_non_default_template_args):
369 Revert changes of PR c++/42634.
370
ef5d1181
JJ
3712010-01-14 Jakub Jelinek <jakub@redhat.com>
372
373 PR middle-end/42674
374 * decl.c (finish_function): Don't emit -Wreturn-type warnings in
375 functions with noreturn attribute.
376
2d1a618e
JM
3772010-01-14 Jason Merrill <jason@redhat.com>
378
6700a285
JM
379 PR c++/42701
380 * call.c (build_new_method_call): Don't free the vec here.
381
2d1a618e
JM
382 PR c++/42655
383 * call.c (convert_like_real): Do full decay_conversion for ck_rvalue.
384
a5859aaf
DS
3852010-01-13 Dodji Seketeli <dodji@redhat.com>
386
387 PR c++/42634
388 * error.c (dump_template_parms): Use innermost template
389 arguments before calling count_non_default_template_args.
390 (count_non_default_template_args): We are being called with
391 template innermost arguments now. There is no need to ensure
392 that again.
393
c8f4e43a
DS
3942010-01-07 Dodji Seketeli <dodji@redhat.com>
395
396 c++/40155
397 * pt.c (unify_pack_expansion): In non-deduced contexts, re-use template
398 arguments that were previously deduced.
399
d097567d
JM
4002010-01-05 Jason Merrill <jason@redhat.com>
401
402 * pt.c (unify_pack_expansion): Handle deduction from init-list.
403 * call.c (build_over_call): Don't complain about it.
404
4b4a42c4
JM
4052010-01-04 Jason Merrill <jason@redhat.com>
406
282c399b
JM
407 PR c++/42555
408 * pt.c (tsubst_decl): Don't apply type attributes in place.
409
4b4a42c4
JM
410 PR c++/42567
411 * semantics.c (describable_type): Remove decltype comment and
412 semantics.
413
ad41bd84
JM
414
415\f
0bdf1263 416Copyright (C) 2010 Free Software Foundation, Inc.
ad41bd84
JM
417
418Copying and distribution of this file, with or without modification,
419are permitted in any medium without royalty provided the copyright
420notice and this notice are preserved.
This page took 0.344797 seconds and 5 git commands to generate.