]> gcc.gnu.org Git - gcc.git/blame - gcc/cp/ChangeLog
trans.c (loop_info_d): Add low_bound...
[gcc.git] / gcc / cp / ChangeLog
CommitLineData
f0889939
AM
12015-06-25 Andrew MacLeod <amacleod@redhat.com>
2
3 * call.c: Remove ipa-ref.h and plugin-api.h from include list.
4 * class.c: Likewise.
5 * cp-ubsan.c: Likewise.
6 * decl.c: Likewise.
7 * decl2.c: Likewise.
8 * lambda.c: Likewise.
9 * mangle.c: Likewise.
10 * method.c: Likewise.
11 * optimize.c: Likewise.
12 * parser.c: Likewise.
13 * semantics.c: Likewise.
14 * tree.c: Likewise.
15 * vtable-class-hierarchy.c: Likewise.
16
ca752f39
RS
172015-06-25 Richard Sandiford <richard.sandiford@arm.com>
18
19 * constexpr.c (constexpr_fundef_hasher): Inherit from ggc_ptr_hash
20 rather than ggc_hasher.
21 (constexpr_call_hasher): Likewise.
22 * cp-tree.h (cxx_int_tree_map_hasher, named_label_hasher): Likewise.
23 * decl.c (typename_hasher): Likewise.
24 * mangle.c (conv_type_hasher): Likewise.
25 * pt.c (spec_hasher): Likewise.
26 * tree.c (cplus_array_hasher, list_hasher): Likewise.
27 * typeck2.c (abstract_type_hasher): Likewise.
28
8d67ee55
RS
292015-06-25 Richard Sandiford <richard.sandiford@arm.com>
30
31 * class.c (fixed_type_or_null_ref_ht): Inherit from nofree_ptr_hash
32 rather than pointer_hash.
33 (fixed_type_or_null): Use nofree_ptr_hash instead of pointer_hash.
34 * semantics.c (nrv_data): Likewise.
35 * tree.c (verify_stmt_tree_r, verify_stmt_tree): Likewise.
36
024f2d89
JM
372015-06-24 Jason Merrill <jason@redhat.com>
38
e6d61513
JM
39 PR c++/66647
40 * pt.c (dependent_type_p_r): Check for dependent alias template
41 specialization sooner.
42
024f2d89
JM
43 PR c++/66501
44 * class.c (type_has_nontrivial_assignment): Remove.
45 * cp-tree.h: Remove declaration.
46 * init.c (vec_copy_assign_is_trivial): New.
47 (build_vec_init): Use it.
48
e79fc3d4
ESR
492015-06-24 Edward Smith-Rowland <3dw4rd@verizon.net>
50
51 Implement N3928 - Extending static_assert
52 * parser.c (cp_parser_static_assert): Support static_assert with
53 no message string. Supply an empty string in this case.
54 * semantics.c (finish_static_assert): Don't try to print a message if
55 the message strnig is empty.
56
aa97bb6f
AB
572015-06-24 Adam Butcher <adam@jessamine.co.uk>
58
59 PR c++/65750
60 * parser.c (cp_parser_simple_type_specifier): Don't synthesize
61 implicit template parm if 'auto' is a placeholder for trailing
62 return type.
63
7af8ef58
PP
642015-06-24 Patrick Palka <ppalka@gcc.gnu.org>
65
66 Revert:
67 2015-06-23 Patrick Palka <ppalka@gcc.gnu.org>
68
69 PR c++/30044
70 * parser.c (cp_parser_template_parameter_list): Update
71 current_template_parms right after processing a paramater.
72 * pt.c (template_parms_to_args): Remove obsolete hack for
73 giving template template arguments the proper level.
74 (check_default_tmpl_args): Account for tested template
75 parameter_lists.
76 (splite_late_return_type): Remove obsolete hack for giving
77 template template arguments the proper level.
78
72e839ca
PC
792015-06-24 Paolo Carlini <paolo.carlini@oracle.com>
80
81 PR c++/65811
82 * decl.c (duplicate_decls): Adjust DECL_COMDAT of newdecl.
83
1a8f8908
PP
842015-06-23 Patrick Palka <ppalka@gcc.gnu.org>
85
6c4ed521 86 PR c++/30044
1a8f8908
PP
87 * parser.c (cp_parser_template_parameter_list): Update
88 current_template_parms right after processing a paramater.
89 * pt.c (template_parms_to_args): Remove obsolete hack for
90 giving template template arguments the proper level.
91 (check_default_tmpl_args): Account for tested template
92 parameter_lists.
93 (splite_late_return_type): Remove obsolete hack for giving
94 template template arguments the proper level.
95
d4c9e7f9
JM
962015-06-23 Jason Merrill <jason@redhat.com>
97
d88511ae
JM
98 PR c++/65879
99 * decl.c (grokfndecl): Check the linkage of ctype, not just
100 TYPE_ANONYMOUS_P.
101 * tree.c (no_linkage_check): Skip the 'this' pointer.
102
115ef7c5
JM
103 PR c++/66501
104 * class.c (type_has_nontrivial_assignment): New.
105 * init.c (build_vec_init): Use it.
106 * cp-tree.h: Declare it.
107 * method.c (trivial_fn_p): Templates aren't trivial.
108
d4c9e7f9
JM
109 PR c++/66542
110 * decl.c (expand_static_init): Make sure the destructor is callable
111 here even if we have an initializer.
112
6935a923
PMR
1132015-06-04 Pierre-Marie de Rodat <derodat@adacore.com>
114
115 * lang-specs.h: Pass "-o %g.s" to cc1plus for headers even if
116 -fdump-ada-spec is passed.
117
c6a2f2d9
PMR
1182015-06-22 Pierre-Marie de Rodat <derodat@adacore.com>
119
120 * decl2.c (cpp_check): Deal with HAS_DEPENDENT_TEMPLATE_ARGS.
121
ea663be9
PC
1222015-06-22 Paolo Carlini <paolo.carlini@oracle.com>
123
124 * decl.c (grokdeclarator): Use declspecs->locations[ds_virtual].
125
1262015-06-22 Paolo Carlini <paolo.carlini@oracle.com>
127
128 * decl.c (grokdeclarator): Remove pointless code.
129
e8a3c597
JM
1302015-06-22 Jason Merrill <jason@redhat.com>
131
132 PR c++/66515
133 * call.c (implicit_conversion): Only reshape for classes.
134
6b4db501
MM
1352015-06-22 Mikhail Maltsev <maltsevm@gmail.com>
136
137 * pt.c (maybe_adjust_types_for_deduction): Use std::swap instead of
138 manually swapping.
139 * semantics.c (finish_omp_atomic): Likewise.
140 * typeck.c (cp_build_array_ref): Likewise.
141
cd95a0d5
MM
1422015-06-20 Mikhail Maltsev <maltsevm@gmail.com>
143
144 PR c++/65882
145 * call.c (build_new_op_1): Check tf_warning flag in all cases.
146
1539357d 1472015-06-19 Jason Merrill <jason@redhat.com>
2ddf4350
JM
148
149 PR c++/66585
150 * pt.c (instantiate_class_template_1): Clear
151 cp_unevaluated_operand and c_inhibit_evaluation_warnings.
152
62245e6f
JM
153 PR c++/65880
154 * decl.c (build_ptrmemfunc_type): Check TYPE_GET_PTRMEMFUNC_TYPE after
155 cv-qualifiers.
156 * typeck.c (merge_types): build_ptrmemfunc_type before applying
157 quals and attributes.
158
30ac6e80
JM
159 PR c++/65973
160 * constexpr.c (build_constexpr_constructor_member_initializers):
161 Handle an empty STATEMENT_LIST.
162
892562cf
JM
163 PR c++/65843
164 * pt.c (tsubst_copy_and_build): Register a capture proxy in
165 local_specializations.
166
769430b2
JM
1672015-06-17 Jason Merrill <jason@redhat.com>
168
169 PR c++/66001
170 * constexpr.c (cxx_eval_constant_expression): Handle TRY_BLOCK and
171 TRY_FINALLY_EXPR.
172 (potential_constant_expression_1): Likewise.
173
9fa6ffe1
JM
1742015-06-17 Jason Merrill <jason@redhat.com>
175
176 PR c++/66515
177 * call.c (implicit_conversion): Call reshape_init here, early.
178 (build_aggr_conv): Not here.
179
64b5fcfa
JJ
1802015-06-17 Jakub Jelinek <jakub@redhat.com>
181
182 PR c++/66571
cc63a7fa
JJ
183 * pt.c (tsubst_omp_clause_decl): New function.
184 (tsubst_omp_clauses): Use it or tsubst_copy instead of
185 tsubst_expr on OMP_CLAUSE_DECL.
64b5fcfa 186
ee47f74e
AM
1872015-06-17 Andrew MacLeod <amacleod@redhat.com>
188
189 * cp-lang.c (cxx_dwarf_name): Use anon_aggrname_p.
190 * cp-tree.h (TYPE_ANONYMOUS_P): Likewise.
191 * decl.c (grokdeclarator, xref_tag_1): Likewise.
192 * error.c (dump_aggr_type): likewise.
193 * pt.c (push_template_decl_real): Likewise.
194 * name-lookup.c (make_anon_name): Use anon_aggrname_format.
195
abb226c9
AM
1962015-06-17 Andrew MacLeod <amacleod@redhat.com>
197
198 * call.c: Do not include input.h, line-map.h or is-a.h.
199 * class.c: Likewise.
200 * constexpr.c: Likewise.
201 * cp-array-notation.c: Likewise.
202 * cp-gimplify.c: Likewise.
203 * cp-lang.c: Likewise.
204 * cp-objcp-common.c: Likewise.
205 * cp-tree.h: Likewise.
206 * cp-ubsan.c: Likewise.
207 * cvt.c: Likewise.
208 * decl.c: Likewise.
209 * decl2.c: Likewise.
210 * dump.c: Likewise.
211 * error.c: Likewise.
212 * except.c: Likewise.
213 * expr.c: Likewise.
214 * friend.c: Likewise.
215 * init.c: Likewise.
216 * lambda.c: Likewise.
217 * lex.c: Likewise.
218 * mangle.c: Likewise.
219 * method.c: Likewise.
220 * name-lookup.c: Likewise.
221 * optimize.c: Likewise.
222 * parser.c: Likewise.
223 * pt.c: Likewise.
224 * ptree.c: Likewise.
225 * repo.c: Likewise.
226 * rtti.c: Likewise.
227 * search.c: Likewise.
228 * semantics.c: Likewise.
229 * tree.c: Likewise.
230 * typeck.c: Likewise.
231 * typeck2.c: Likewise.
232 * vtable-class-hierarchy.c: Likewise.
233
ba394ca6
PC
2342015-06-16 Paolo Carlini <paolo.carlini@oracle.com>
235
236 PR c++/59682
237 * parser.c (cp_parser_new_placement): Reject an empty expression-list.
238
63d02f05
JM
2392015-06-16 Jason Merrill <jason@redhat.com>
240
7599760d
JM
241 PR c++/66536
242 * tree.c (replace_placeholders_r) [CONSTRUCTOR]: Handle type
243 mismatch.
244
2ed4c029
JM
245 PR c++/58063
246 * tree.c (bot_manip): Remap SAVE_EXPR.
247
63d02f05
JM
248 PR c++/66387
249 * pt.c (tsubst_copy) [VAR_DECL]: Use process_outer_var_ref.
250
04eca83e
NS
2512015-06-15 Nathan Sidwell <nathan@acm.org>
252
253 PR c++/58583
254 * cp-tree.h (DECL_INSTANTIATING_NSDMI_P): New.
255 * init.c (get_nsdmi): Check for DEFAULT_ARG in template case and
256 protect it from recursive instantiation.
257
f92c7426
PC
2582015-06-15 Paolo Carlini <paolo.carlini@oracle.com>
259
260 PR c++/51048
261 * decl2.c (no_linkage_error): Do not issue a permerror if the DECL
262 using a local type is pure virtual.
263
6feffb3a
PP
2642015-06-13 Patrick Palka <ppalka@gcc.gnu.org>
265
266 * call.c: Remove comment documenting the long-deleted
267 function build_method_call.
268
076fecad
PP
2692015-06-13 Patrick Palka <ppalka@gcc.gnu.org>
270
271 PR c++/65168
272 * typeck.c (cp_build_binary_op): Warn when comparing an address
273 of a reference against NULL.
274
350562a7
JM
2752015-06-12 Jason Merrill <jason@redhat.com>
276
277 PR c++/65719
278 * pt.c (tsubst_decl) [VAR_DECL]: Mark namespace-scope
279 variables as DECL_NOT_REALLY_EXTERN.
280
acb2970c
JM
2812015-06-11 Jason Merrill <jason@redhat.com>
282
133bc698
JM
283 PR c++/66445
284 * constexpr.c (potential_constant_expression_1): Handle a
285 DECL_EXPR of TYPE_DECL.
286
acb2970c
JM
287 PR c++/66450
288 * constexpr.c (cxx_eval_store_expression): Avoid messing up outer
289 ctx->ctor.
290
a0349665
PMR
2912015-06-11 Pierre-Marie de Rodat <derodat@adacore.com>
292
293 * decl.c (cxx_init_decl_processing): Register the main
294 translation unit through the new debug hook.
295
1a4cd2cd
JM
2962015-06-10 Jason Merrill <jason@redhat.com>
297
298 PR c++/66289
299 * cp-tree.h (TEMPLATE_DECL_COMPLEX_ALIAS_P): New.
300 * pt.c (push_template_decl_real): Set it.
301 (dependent_alias_template_spec_p): Use it.
302 (dependent_type_p_r): Use dependent_alias_template_spec_p.
303 (uses_all_template_parms_data, uses_all_template_parms_r)
304 (complex_alias_template_p): New.
305 (get_template_parm_index): Handle BOUND_TEMPLATE_TEMPLATE_PARM.
306
5af874fb
JM
3072015-06-09 Jason Merrill <jason@redhat.com>
308
34f42d7b
JM
309 DR 1467
310 PR c++/51747
311 * typeck2.c (digest_init_r): Replace previous change with
312 gcc_unreachable.
313
5af874fb
JM
314 PR c++/66387
315 * semantics.c (process_outer_var_ref): Make sure the value is
316 actually constant before returning it.
317 * typeck.c (cp_build_array_ref): Allow subscripting non-lvalue
318 array.
319
ebcf592c
PC
3202015-06-09 Paolo Carlini <paolo.carlini@oracle.com>
321
322 PR c++/65815
323 * typeck2.c (digest_nsdmi_init): On aggregates use reshape_init.
324 * init.c (expand_default_init): Likewise.
325
6a9263f7
JM
3262015-06-09 Jason Merrill <jason@redhat.com>
327
328 PR c++/66383
329 * tree.c (replace_placeholders_r): Handle placeholders for an
330 outer object.
331 * typeck2.c (store_init_value): Only replace_placeholders for
332 objects of class type.
333
13fdf2e2
AM
3342015-06-08 Andrew MacLeod <amacleod@redhat.com>
335
336 * call.c : Adjust include files.
337 * class.c : Likewise.
338 * constexpr.c : Likewise.
339 * cp-array-notation.c : Likewise.
340 * cp-cilkplus.c : Likewise.
341 * cp-gimplify.c : Likewise.
342 * cp-lang.c : Likewise.
343 * cp-objcp-common.c : Likewise.
344 * cp-tree.h : Likewise.
345 * cp-ubsan.c : Likewise.
346 * cvt.c : Likewise.
347 * decl.c : Likewise.
348 * decl2.c : Likewise.
349 * dump.c : Likewise.
350 * error.c : Likewise.
351 * except.c : Likewise.
352 * expr.c : Likewise.
353 * friend.c : Likewise.
354 * init.c : Likewise.
355 * lambda.c : Likewise.
356 * lex.c : Likewise.
357 * mangle.c : Likewise.
358 * method.c : Likewise.
359 * name-lookup.c : Likewise.
360 * optimize.c : Likewise.
361 * parser.c : Likewise.
362 * pt.c : Likewise.
363 * ptree.c : Likewise.
364 * repo.c : Likewise.
365 * rtti.c : Likewise.
366 * search.c : Likewise.
367 * semantics.c : Likewise.
368 * tree.c : Likewise.
369 * typeck.c : Likewise.
370 * typeck2.c : Likewise.
371 * vtable-class-hierarchy.c : Likewise.
372
85d9a299
JM
3732015-06-05 Jason Merrill <jason@redhat.com>
374
39f383b7
JM
375 PR c++/66405
376 * pt.c (argument_pack_element_is_expansion_p): Return 2 if
377 the expansion has extra args.
378 (use_pack_expansion_extra_args_p): Return true in that case.
379
85d9a299
JM
380 PR c++/66405
381 * pt.c (type_dependent_expression_p): EXPR_PACK_EXPANSION is
382 dependent even if it has a type.
383
d7438551
AH
3842015-06-05 Aldy Hernandez <aldyh@redhat.com>
385
386 * cp-objcp-common.c: Adjust comment for
387 cxx_warn_unused_global_decl.
388 * cp-objcp-common.h (LANG_HOOKS_WRITE_GLOBALS): Remove
389 (LANG_HOOKS_POST_COMPILATION_PARSING_CLEANUPS): New.
390 * cp-tree.h (note_mangling_alias): Protoize.
391 (cp_write_global_declarations): Remove.
392 (cxx_post_compilation_parsing_cleanups): Protoize.
393 * decl.c (wrapup_globals_for_namespace): Remove use of DATA
394 argument.
395 * decl2.c (mangling_aliases): New global.
396 (build_java_method_aliases): New. Adapted from
397 collect_candidates_for_java_method_aliases.
398 (collect_candidates_for_java_method_aliases): Remove.
399 (build_java_method_aliases): Remove.
400 (generate_mangling_aliases): New.
401 (note_mangling_alias): New. Moved from mangle_decl.
402 (locus_at_end_of_parsing): New global.
403 (c_parse_final_cleanups): Rename from
404 cp_write_global_declarations.
405 Use locus_at_end_of_parsing.
406 Call generate_mangling_aliases.
407 Rename call to collect_candidates_for_java_method_aliases into
408 build_java_method_aliases.
409 Remove call to finalize_compilation_unit.
410 Move vtable handling into cxx_post_compilation_parsing_cleanups.
411 Do not call check_global_declarations or
412 emit_debug_global_declarations.
413 (cxx_post_compilation_parsing_cleanups): New.
414 * mangle.c (mangle_decl): Move code to note_mangling_alias.
415 * name-lookup.c (do_namespace_alias): Call early_global_decl.
416
ac59f9be
NS
4172015-06-05 Nathan Sidwell <nathan@acm.org>
418
419 PR c++/52595
420 * parser.c (cp_parser_cache_defarg): Continue looking for
421 declarators when scanning a potential template argument list of an
422 NSDMI.
423
ecb9f223
AM
4242015-06-04 Andrew MacLeod <amacleod@redhat.com>
425
426 * call.c: Adjust includes for restructured coretypes.h.
427 * class.c: Likewise.
428 * constexpr.c: Likewise.
429 * cp-array-notation.c: Likewise.
430 * cp-gimplify.c: Likewise.
431 * cp-lang.c: Likewise.
432 * cp-objcp-common.c: Likewise.
433 * cp-tree.h: Likewise.
434 * cp-ubsan.c: Likewise.
435 * cvt.c: Likewise.
436 * decl.c: Likewise.
437 * decl2.c: Likewise.
438 * dump.c: Likewise.
439 * error.c: Likewise.
440 * except.c: Likewise.
441 * expr.c: Likewise.
442 * friend.c: Likewise.
443 * init.c: Likewise.
444 * lambda.c: Likewise.
445 * lex.c: Likewise.
446 * mangle.c: Likewise.
447 * method.c: Likewise.
448 * name-lookup.c: Likewise.
449 * optimize.c: Likewise.
450 * parser.c: Likewise.
451 * pt.c: Likewise.
452 * ptree.c: Likewise.
453 * repo.c: Likewise.
454 * rtti.c: Likewise.
455 * search.c: Likewise.
456 * semantics.c: Likewise.
457 * tree.c: Likewise.
458 * typeck.c: Likewise.
459 * typeck2.c: Likewise.
460 * vtable-class-hierarchy.c: Likewise.
461
e93ca5ca
RR
4622015-06-04 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
463
464 PR c++/66192
465 PR target/66200
466 * cp-tree.h (get_guard_cond): Adjust declaration
467 * decl.c (expand_static_init): Use atomic load acquire
468 and adjust call to get_guard_cond.
469 * decl2.c (build_atomic_load_byte): New function.
470 (get_guard_cond): Handle thread_safety.
471 (one_static_initialization_or_destruction): Adjust call to
472 get_guard_cond.
473
1cc1ac7f
JM
4742015-06-03 Jason Merrill <jason@redhat.com>
475
476 PR c++/44282
477 * mangle.c (mangle_decl): Always SET_IDENTIFIER_GLOBAL_VALUE.
478 (write_CV_qualifiers_for_type): Set G.need_abi_warning.
479 (decl_implicit_alias_p): Split out from maybe_remove_implicit_alias.
480 * cp-tree.h (DECL_REALLY_EXTERN): Handle null DECL_LANG_SPECIFIC.
481
d3ea4c06
MLI
4822015-06-03 Manuel López-Ibáñez <manu@gcc.gnu.org>
483 Paolo Carlini <paolo.carlini@oracle.com>
484
485 PR c++/66130
486 * typeck.c (invalid_nonstatic_memfn_p): Add location_t parameter and
487 use it in the diagnostic.
488 (decay_conversion): Adjust call.
489 * semantics.c (finish_decltype_type): Likewise.
490 * call.c (resolve_args, build_new_op_1,
491 perform_implicit_conversion_flags): Adjust calls.
492 * cvt.c (ocp_convert, convert_to_void): Likewise.
493 * cp-tree.h (invalid_nonstatic_memfn_p): Update declaration.
494
4753e009
PC
4952015-06-03 Paolo Carlini <paolo.carlini@oracle.com>
496
497 * decl.c (check_tag_decl): Use declspecs->locations as locations in
498 error_at and warning_at calls.
499
7b3a9795
MP
5002015-06-03 Marek Polacek <polacek@redhat.com>
501
502 PR sanitizer/66190
503 * cp-gimplify.c (struct cp_genericize_data): Add no_sanitize_p.
504 (cp_genericize_r): Don't instrument static initializers.
505 (cp_genericize_tree): Initialize wtd.no_sanitize_p.
506
ea5b45b6
AT
5072015-06-02 Andres Tiraboschi <andres.tiraboschi@tallertechnologies.com>
508
509 * decl.c (start_function): Call plugin before parsing.
510 (finish_function): Call plugin after parsing.
511
5d58db82
PP
5122015-06-02 Patrick Palka <patrick@parcs.ath.cx>
513
514 * cp-tree.h (init_error): Remove declaration.
515 * error.c (scratch_pretty_printer): Rename to ...
516 (actual_pretty_printer): ... this.
517 (cxx_pp): Constify and update accordingly.
518 (init_error): Remove definition.
519 * lex.c (cxx_init): Do not call init_error.
520
a983abd2
PC
5212015-06-02 Paolo Carlini <paolo.carlini@oracle.com>
522
523 PR c++/61683
524 * parser.c (cp_parser_mem_initializer): Allow for decltype-specifier.
525
603eaec4
JM
5262015-06-01 Jason Merrill <jason@redhat.com>
527
81371eff
JM
528 PR c++/65942
529 * decl2.c (mark_used): Don't always instantiate constexpr fns.
530 * constexpr.c (cxx_eval_call_expression): Instantiate them here.
531
603eaec4
JM
532 PR c++/44282
533 * mangle.c (attr_strcmp): New.
534 (write_CV_qualifiers_for_type): Also write out attributes that
535 affect type identity.
536 (write_type): Strip all attributes after writing qualifiers.
537
6ad6af49
JM
5382015-05-31 Jason Merrill <jason@redhat.com>
539
255a48d6
JM
540 * constexpr.c (cxx_eval_indirect_ref): Try folding first.
541
6ad6af49
JM
542 PR c++/66320
543 * constexpr.c (cxx_eval_constant_expression): Treat a placeholder
544 with the wrong type as non-constant.
545
f4252989
JM
5462015-05-27 Jason Merrill <jason@redhat.com>
547
cba16cca
JM
548 * decl.c (check_redeclaration_exception_specification): Depend on
549 -Wsystem-headers rather than -pedantic.
550
f4252989
JM
551 * decl.c (warn_extern_redeclared_static): Use the location of
552 newdecl in diagnostics, not input_location.
553 (validate_constexpr_redeclaration): Likewise.
554 (check_redeclaration_no_default_args): Likewise.
555 (duplicate_decls): Likewise.
556 (check_redeclaration_exception_specification): Likewise.
557 Change second diagnostic to inform.
558
6f2d72e0
NS
5592015-05-24 Nathan Sidwell <nathan@acm.org>
560
561 PR c++/66243
562 * decl.c (build_enumerator): Don't silently convert scoped enums.
563
5642015-05-24 Jan Hubicka <hubicka@ucw.cz>
233ce289
JH
565
566 PR lto/66180
567 * mangle.c (mangle_decl): Mangle anonymous namespace types as
568 "<anon>".
569
84a3423b
NS
5702015-05-23 Nathan Sidwell <nathan@acm.org>
571
572 PR c++/65936
573 * pt.c (lookup_template_class_1): Copy may_alias attribute too.
574
a95492ab
JW
5752015-05-22 Jim Wilson <jim.wilson@linaro.org>
576
577 * Make-lang.in (check_g++_parallelize): Update comment.
578
320d13ec
PC
5792015-05-22 Paolo Carlini <paolo.carlini@oracle.com>
580
581 PR c++/65598
582 * decl.c (grokdeclarator): Use the correct location in error
583 messages about 'explicit'.
584
fd5c817a
MP
5852015-05-22 Marek Polacek <polacek@redhat.com>
586 Edward Smith-Rowland <3dw4rd@verizon.net>
587
588 PR c/47043
589 * cp-tree.h (build_enumerator): Update declaration.
590 * decl.c (build_enumerator): Add attributes parameter. Call
591 cplus_decl_attributes.
592 * init.c (constant_value_1): Pass tf_none to mark_used.
593 * parser.c (cp_parser_enumerator_definition): Parse attributes and
594 pass them down to build_enumerator.
595 * pt.c (tsubst_enum): Pass decl attributes to build_enumerator.
596 * semantics.c (finish_id_expression): Don't warn_deprecated_use here.
597
9ab2fcc1
NS
5982015-05-21 Nathan Sidwell <nathan@acm.org>
599
600 PR c++/60943
601 * decl2.c (change_return_type): Propagate FUNCTION_REF_QUALIFIED.
602
6b6dd1aa
MP
6032015-05-21 Marek Polacek <polacek@redhat.com>
604
605 * typeck.c (warn_args_num): Don't print "declare here" for builtins.
606
12101053
JM
6072015-05-20 Jason Merrill <jason@redhat.com>
608
226a93b7
JM
609 * pt.c (tsubst_decl) [VAR_DECL]: SET_DECL_IMPLICIT_INSTANTIATION
610 before register_specialization.
611
12101053
JM
612 * decl.c (grok_op_properties): Don't complain about size_t
613 placement delete here.
614 * call.c (second_parm_is_size_t): Split out from...
615 (non_placement_deallocation_fn_p): ...here.
616 (build_op_delete_call): Warn about size_t placement delete with
617 -Wc++14-compat.
618
9ab2fcc1 6192015-05-19 Nathan Sidwell <nathan@acm.org>
09b59d4d
NS
620
621 PR c++/65954
622 * typeck.c (finish_class_member_access_expr): Diagnose failed
623 lookup of enum class member.
624
41b37d5e
JJ
6252015-05-19 Jakub Jelinek <jakub@redhat.com>
626
627 PR middle-end/66199
628 * parser.c (cp_parser_omp_for_loop): Don't add
629 OMP_CLAUSE_SHARED to OMP_PARALLEL_CLAUSES when moving
630 OMP_CLAUSE_LASTPRIVATE clause to OMP_FOR_CLAUSES.
631 (cp_parser_omp_teams): Set OMP_TEAMS_COMBINED for combined
632 constructs.
633
fab27f52
MM
6342015-05-19 Mikhail Maltsev <maltsevm@gmail.com>
635
636 * typeck.c (composite_pointer_type): Use std::swap instead of explicit
637 swaps.
638
80f1c14d
JM
6392015-05-18 Jason Merrill <jason@redhat.com>
640
f41aecf4
JM
641 * pt.c (retrieve_specialization): Make sure our arguments have
642 gone through strip_typedefs.
643
b237c4cb
JM
644 * pt.c (tsubst_decl) [VAR_DECL]: Call coerce_innermost_template_parms.
645 (determine_specialization): Call coerce_template_parms.
646
c4d6d7bc
JM
647 DR 1391
648 * pt.c (type_unification_real): Check convertibility here.
649 (unify_one_argument): Not here.
650
8f56fadc
JM
651 * tree.c (strip_typedefs_expr) [TRAIT_EXPR]: Fix typo.
652 (strip_typedefs) [DECLTYPE_TYPE]: Fix typedef of decltype.
653 [TREE_LIST]: Fix no-change case.
654
80f1c14d
JM
655 * ptree.c (cxx_print_xnode): Handle TRAIT_EXPR.
656
40de31cf
MLI
6572015-05-16 Manuel López-Ibáñez <manu@gcc.gnu.org>
658
659 PR fortran/44054
660 * error.c (cp_diagnostic_starter): Use diagnostic_location
661 function.
662 (cp_print_error_function): Likewise.
663 (cp_printer): Replace locus pointer with accessor function.
664
c3388e62
DM
6652015-05-12 David Malcolm <dmalcolm@redhat.com>
666
667 * parser.c (cp_parser_selection_statement): Add location and
668 guard_kind arguments to calls to
669 cp_parser_implicitly_scoped_statement.
670 (cp_parser_iteration_statement): Likewise for calls to
671 cp_parser_already_scoped_statement.
672 (cp_parser_implicitly_scoped_statement): Add "guard_loc" and
673 "guard_kind" params; use them to warn for misleading
674 indentation.
675 (cp_parser_already_scoped_statement): Likewise.
676
5ce039df
JH
6772015-05-11 Jan Hubicka <hubicka@ucw.cz>
678
679 * class.c (fixup_type_variants): Do not copy TYPE_METHODS
680 (one_inheriting_sig): Assert tat we always set TYPE_METHODS of main variant.
681 * semantics.c (finish_member_declaration): Likewise.
682 * method.c (lazily_declare_fn): Allways add method to main variant list.
683
a31765ef
AH
6842015-05-09 Aldy Hernandez <aldyh@redhat.com>
685
686 PR bootstrap/66085
687 * decl2.c (note_mangling_alias): Declare arguments as unused.
688
765189ff
JM
6892015-05-08 Jason Merrill <jason@redhat.com>
690
691 * cp-gimplify.c, parser.c: Adjust to -Wc++11-compat replacing
692 -Wc++0x-compat.
693
613aba20
JM
6942015-05-08 Jason Merrill <jason@redhat.com>
695
696 * decl2.c (mangling_aliases): New variable.
697 (note_mangling_alias, generate_mangling_aliases): New.
698 (cp_write_global_declarations): Call generate_mangling_aliases.
699 (generate_mangling_alias): Split out from...
700 * mangle.c (mangle_decl): ...here.
701 * cp-tree.h: Declare note_mangling_alias.
702
09c5f835
AH
7032015-05-08 Aldy Hernandez <aldyh@redhat.com>
704
705 * decl2.c (collect_candidates_for_java_method_aliases): Remove.
706 (build_java_method_aliases): Adapt to use create_same_body_alias
707 instead of assemble_alias. Move variable declarations to
708 definition and tidy up.
709 (cp_write_global_declarations): Call build_java_method_aliases
710 instead of collecting candidates first.
711
90f11cf9
JM
7122015-05-07 Jason Merrill <jason@redhat.com>
713
714 PR c++/59012
715 * parser.c (cp_parser_std_attribute_list): Handle attribute expansion.
716 (cp_parser_std_attribute_spec): Handle alignas pack expansion.
717 * decl2.c (is_late_template_attribute): An attribute exp is dependent.
718 * pt.c (make_pack_expansion): Allow TREE_LIST for attribute expansion.
719 (apply_late_template_attributes): Handle attribute pack expansion.
720
0173bd2a
MP
7212015-05-07 Marek Polacek <polacek@redhat.com>
722
723 PR c/65179
724 * typeck.c (cp_build_binary_op): Warn when left shifting a negative
725 value.
726
d5449acf
JM
7272015-05-07 Jason Merrill <jason@redhat.com>
728
729 DR 1467
730 PR c++/51747
731 * typeck2.c (digest_init_r): Fix single element list.
732
b8dd6913
JM
7332015-05-05 Jason Merrill <jason@redhat.com>
734
8243e2a9
JM
735 * cp-gimplify.c (cp_genericize_r): Track TRY_BLOCK and
736 MUST_NOT_THROW_EXPR, warn about a THROW_EXPR directly within a
737 MUST_NOT_THROW_EXPR.
738 (cp_genericize_data): Add try_block field.
739 (cp_genericize_tree): Initialize it.
740 * except.c (expand_end_catch_block): Set TREE_NO_WARNING on
741 implicit rethrow.
742
81b6a6c5
JM
743 * constexpr.c (potential_constant_expression_1) [AT_ENCODE_EXPR]:
744 Return false.
745
32ad49af
JM
746 * semantics.c (finish_call_expr): Check complain.
747
15ed2619
JM
748 * decl2.c (reset_type_linkage_2): Update the DECL_NAME of a
749 maybe-in-charge constructor.
750
f8aa3dd3
JM
751 * decl.c (start_decl): Don't push the plain VAR_DECL for a
752 variable template.
753
b8dd6913
JM
754 DR 1518
755 DR 1630
756 PR c++/54835
757 PR c++/60417
758 * call.c (convert_like_real): Check value-initialization before
759 explicit.
760 * typeck2.c (process_init_constructor_record): Don't set
761 CONSTRUCTOR_IS_DIRECT_INIT.
762 (process_init_constructor_array): Likewise.
763 * init.c (build_vec_init): Likewise.
764
21c0a521
DM
7652015-05-05 David Malcolm <dmalcolm@redhat.com>
766
767 * parser.c (cp_parser_asm_definition): Only test for
768 error_mark_node if "outputs" was just set. Likewise for "inputs".
769
f5322614
PC
7702015-05-04 Paolo Carlini <paolo.carlini@oracle.com>
771 Jakub Jelinek <jakub@redhat.com>
772
773 PR c++/66007
774 * typeck2.c (check_narrowing): Check by-hand that the pedwarn didn't
775 result in an actual error.
776
38920aec
PC
7772015-05-01 Paolo Carlini <paolo.carlini@oracle.com>
778 Prathamesh Kulharni <prathamesh.kulkarni@linaro.org>
779
780 PR c++/65858
781 * typeck2.c (check_narrowing): Set ok = true when pedwarn returns
782 false.
783
6f3d1a5e
DM
7842015-04-30 David Malcolm <dmalcolm@redhat.com>
785
786 * cp-tree.h (ARGUMENT_PACK_SELECT_ARG): Remove spurious
787 trailing semicolon.
788
9f7fb685
JM
7892015-04-29 Jason Merrill <jason@redhat.com>
790
791 PR c++/50800
792 * tree.c (apply_identity_attributes): Fix handling of classes.
793
b811915d
TS
7942015-04-29 Thomas Schwinge <thomas@codesourcery.com>
795
796 * parser.c (cp_parser_oacc_enter_exit_data): Use
797 OMP_STANDALONE_CLAUSES.
798
0aa359c1
PC
7992015-04-29 Paolo Carlini <paolo.carlini@oracle.com>
800
801 PR c++/64667
802 * init.c (perform_member_init): Handle references for -Winit-self.
803
2c8f0683
TS
8042015-04-29 Thomas Schwinge <thomas@codesourcery.com>
805
806 * pt.c (tsubst_expr) <OMP_TARGET_UPDATE>: Use
807 OMP_TARGET_UPDATE_CLAUSES instead of OMP_CLAUSES.
808
7bfc5ada
JM
8092015-04-28 Jason Merrill <jason@redhat.com>
810
3f8e2835
JM
811 PR c++/65896
812 * constexpr.c (cxx_eval_store_expression): Don't try to actually
813 store an empty class.
814
5756d0f9
JM
815 PR c++/65656
816 * constexpr.c (cxx_eval_builtin_function_call): Fix
817 __builtin_constant_p.
818
b71983a5
JM
819 PR c++/50800
820 * tree.c (strip_typedefs): Add remove_attributes parm.
821 (strip_typedefs_expr): Likewise.
822 (apply_identity_attributes): New subroutine of strip_typedefs.
823 * pt.c (canonicalize_type_argument): Let strip_typedefs handle attrs.
824 (convert_nontype_argument, unify): Likewise.
825 * cp-tree.h: Adjust.
826
7bfc5ada
JM
827 PR c++/65734
828 * class.c (fixup_attribute_variants): Respect TYPE_USER_ALIGN.
829
1d0275e2
TS
8302015-04-27 Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
831
832 * class.c (layout_class_type): Remove check if
833 PCC_BITFIELD_TYPE_MATTERS is defined.
834
46bf0b0a
JW
8352015-04-27 Jim Wilson <jim.wilson@linaro.org>
836
837 * Make-lang.in (c++.mostlyclean): Remove xg++, g++-cross, and cc1plus.
838
f8815f7a
JM
8392015-04-24 Jason Merrill <jason@redhat.com>
840
c6f044f7
JM
841 PR c++/50800
842 * typeck.c (structural_comptypes): Don't check TYPE_REF_CAN_ALIAS_ALL.
843
f8815f7a
JM
844 * constexpr.c (potential_constant_expression_1) [MINUS_EXPR]:
845 Remove obsolete code.
846 [NE_EXPR]: Likewise.
847
6c283621
JM
8482015-04-23 Jason Merrill <jason@redhat.com>
849
850 PR c++/65646
851 * pt.c (check_explicit_specialization): Don't
852 SET_DECL_TEMPLATE_SPECIALIZATION for a variable with no template
853 headers.
854 * decl.c (grokvardecl): Revert earlier fix.
855
2821fc6b
PC
8562015-04-20 Paolo Carlini <paolo.carlini@oracle.com>
857
858 PR c++/65801
859 * typeck2.c (check_narrowing): In C++11 mode too, -Wno-narrowing
860 suppresses the diagnostic.
861
0cfabb37
VV
8622015-04-20 Ville Voutilainen <ville.voutilainen@gmail.com>
863
864 Reject trailing return type for an operator auto().
865 * decl.c (grokdeclarator): Reject trailing return types for
866 all conversion operators, don't handle conversion operators
867 in the previous checks that deal with auto.
868
06aca1d5
IV
8692015-04-20 Ilya Verbin <ilya.verbin@intel.com>
870
871 * parser.c (cp_parser_omp_target_update): Add missed %> to error_at ().
872
988db853
PC
8732015-04-16 Paolo Carlini <paolo.carlini@oracle.com>
874
875 * class.c (resolve_address_of_overloaded_function, instantiate_type):
876 Rename tsubst_flags_t parameter flags -> complain.
877
9f635aba
PC
8782015-04-16 Paolo Carlini <paolo.carlini@oracle.com>
879
880 * call.c (build_op_delete_call, build_over_call): Check mark_used
881 return value.
882 * class.c (resolve_address_of_overloaded_function): Likewise.
883 * decl.c (cxx_maybe_build_cleanup): Likewise.
884 * pt.c (gen_elem_of_pack_expansion_instantiation, tsubst_baselink,
885 tsubst_qualified_id, tsubst_copy, tsubst_copy_and_build): Likewise.
886 * rtti.c (build_dynamic_cast_1): Likewise.
887 * semantics.c (process_outer_var_ref): Likewise.
888 * typeck.c (build_class_member_access_expr,
889 cp_build_function_call_vec, cp_build_addr_expr_1): Likewise.
890
bf5730d7
JM
8912015-04-15 Jason Merrill <jason@redhat.com>
892
58cc255c
JM
893 * constexpr.c (cxx_eval_store_expression): Ignore clobbers.
894 (build_constexpr_constructor_member_initializers): Loop to find
895 the BIND_EXPR.
896 * decl.c (start_preparsed_function): Clobber the object at the
897 beginning of a constructor.
898
efb5e817
JM
899 * decl.c (grokmethod): Only set DECL_COMDAT if TREE_PUBLIC is set.
900 * method.c (implicitly_declare_fn): Likewise.
901 * decl2.c (vague_linkage_p): Check TREE_PUBLIC first.
902
bf5730d7
JM
903 * decl2.c (determine_visibility): Use get_template_info.
904
5ce3039e
JM
9052015-04-15 Jason Merrill <jason@redhat.com>
906 Marek Polacek <polacek@redhat.com>
907
908 PR c++/65727
909 * lambda.c (lambda_expr_this_capture): In unevaluated context go
910 through the normal loop, just don't capture.
911 (maybe_resolve_dummy): Handle null return.
912
3a1351b9
PC
9132015-04-15 Paolo Carlini <paolo.carlini@oracle.com>
914
915 * call.c (enforce_access): Emit error + inform.
916
0567dcd2
MP
9172015-04-15 Marek Polacek <polacek@redhat.com>
918
919 * constexpr.c (use_new_call): Remove #define.
920 (lookup_parameter_binding): Remove function.
921 (cxx_bind_parameters_in_call): Remove unused code.
922 (cxx_eval_call_expression): Likewise.
923 (cxx_eval_constant_expression): Likewise.
924
182d115c
MM
9252015-04-14 Mikhail Maltsev <maltsevm@gmail.com>
926
927 * tree.c (replace_placeholders_t): Remove unused type.
928 (replace_placeholders): Remove unused pset.
929
0f19e7ad
JM
9302015-04-14 Jason Merrill <jason@redhat.com>
931
57c5e96e
JM
932 * pt.c (lookup_template_class_1): Use coerce_innermost_template_parms.
933
fb899e32
JM
934 PR c++/65695
935 * cvt.c (cp_fold_convert): Avoid wrapping PTRMEM_CST in NOP_EXPR.
936
0f19e7ad
JM
937 PR c++/65721
938 * name-lookup.c (do_class_using_decl): Complain about specifying
939 the current class even if there are dependent bases.
940
688e531e
DK
9412015-04-14 David Krauss <david_work@me.com>
942
943 PR c++/59766
944 * decl.c (grokdeclarator): Do not flag friends with deduced return.
945
2fd16d0f
MV
9462015-04-14 Momchil Velikov <momchil.velikov@gmail.com>
947 Jason Merrill <jason@redhat.com>
948
949 PR c++/60994
950 * parser.c (cp_parser_class_name): Add enum_ok parameter.
951 (cp_parser_qualifying_entity): Use it instead of cp_parser_type_name.
952 (cp_parser_diagnose_invalid_type_name): Don't assume a template is
953 a class template.
954
6338536c
JJ
9552015-04-12 Jakub Jelinek <jakub@redhat.com>
956
957 PR c++/65736
958 * constexpr.c (cxx_eval_pointer_plus_expression): Don't fold for VLAs,
959 don't fold if op01 isn't divisible by TYPE_SIZE_UNIT. Convert
960 the expression to the original type at the end.
961
00da5e28
JJ
9622015-04-09 Jakub Jelinek <jakub@redhat.com>
963
0212e31e
JJ
964 PR c++/65690
965 * tree.c (cp_build_qualified_type_real): Copy TYPE_ALIGN and
966 TYPE_USER_ALIGN.
967
00da5e28
JJ
968 PR c++/65690
969 * tree.c (build_cplus_array_type): Layout type before variants are
970 set, but copy over TYPE_SIZE and TYPE_SIZE_UNIT from the main
971 variant.
972
a3d94329
PC
9732015-04-03 Paolo Carlini <paolo.carlini@oracle.com>
974
975 PR c++/64085
976 * lambda.c (add_capture): Use dependent_type_p for capture by
977 reference too.
978
894bec68
MP
9792015-04-02 Marek Polacek <polacek@redhat.com>
980
981 PR c++/65642
982 * constexpr.c (cxx_eval_pointer_plus_expression): Call
983 cxx_eval_constant_expression on the first operand.
984
37978db4
JM
9852015-04-01 Jason Merrill <jason@redhat.com>
986
987 PR c++/65625
988 * decl.c (make_typename_type): Handle seeing a variable template.
989
c23a9ec5
PC
9902015-04-01 Paolo Carlini <paolo.carlini@oracle.com>
991
992 PR c++/56100
993 * pt.c (instantiating_current_function_p): New.
994 * name-lookup.c (pushdecl_maybe_friend_1): Use it.
995 * cp-tree.h (instantiating_current_function_p): Declare.
996
f87cb0b7
JM
9972015-04-01 Jason Merrill <jason@redhat.com>
998
999 PR c++/65646
1000 * decl.c (grokvardecl): Don't call check_explicit_specialization
1001 for non-template members of a class template.
1002
14e51ef2
MP
10032015-04-01 Marek Polacek <polacek@redhat.com>
1004
1005 PR c++/65554
1006 * class.c (finish_struct): Require that the second field of a
1007 user-defined initializer_list be of size type.
1008
397ad54d
MP
10092015-03-31 Marek Polacek <polacek@redhat.com>
1010
1011 PR c++/65390
1012 * tree.c (build_cplus_array_type): Use dependent_type_p rather than
1013 checking for constness.
1014
ef4bac78
MP
10152015-03-30 Marek Polacek <polacek@redhat.com>
1016
1017 PR c++/65398
1018 * constexpr.c (cxx_fold_indirect_ref): Don't perform the
1019 *(&A[i] p+ j) => A[i + j] transformation here.
1020 (cxx_eval_pointer_plus_expression): New function.
1021 (cxx_eval_constant_expression): Use it here.
1022
62021f64
TB
10232015-03-27 Tobias Burnus <burnus@net-b.de>
1024
1025 PR c/65586
1026 * parser.c (cp_parser_omp_for, cp_parser_omp_parallel,
1027 cp_parser_omp_distribute, cp_parser_omp_teams, cp_parser_omp_target,
1028 cp_parser_omp_declare): Don't show error for skipped omp pragmas with
1029 -fopenmp-simd.
1030
5964a3a6
MP
10312015-03-27 Marek Polacek <polacek@redhat.com>
1032
1033 PR c++/65556
1034 * semantics.c (finish_switch_cond): If the unlowered type is not an
1035 enum, use the type of the condition.
1036
0b7dccc6
JM
10372015-03-27 Jason Merrill <jason@redhat.com>
1038
1039 PR c++/65509
1040 * decl.c (make_rtl_for_nonlocal_decl): Don't defer static
1041 constants.
1042
08227658
MM
10432015-03-26 Mikhail Maltsev <maltsevm@gmail.com>
1044
1045 PR c++/65154
1046 * init.c (build_vec_init): Fix initializing aggregates
1047 with empty init list.
1048
41b38772
JM
10492015-03-26 Jason Merrill <jason@redhat.com>
1050
1051 PR c++/65525
1052 * constexpr.c (potential_constant_expression_1): Handle MEM_REF.
1053
1cc57b59
MP
10542015-03-25 Marek Polacek <polacek@redhat.com>
1055
1056 PR c++/65558
1057 * name-lookup.c (handle_namespace_attrs): Ignore abi_tag attribute
1058 on an anonymous namespace.
1059
2a924bb4
MP
10602015-03-25 Marek Polacek <polacek@redhat.com>
1061
1062 PR c++/61670
1063 * class.c (remove_zero_width_bit_fields): Check for null DECL_SIZE.
1064
4b7c558d
JM
10652015-03-24 Jason Merrill <jason@redhat.com>
1066
a9f0423f
JM
1067 PR c++/65046
1068 * cp-tree.h (NAMESPACE_IS_INLINE): Remove.
1069 * parser.c (cp_parser_namespace_definition): Don't set it.
1070 * name-lookup.c (handle_namespace_attrs): Check
1071 DECL_NAMESPACE_ASSOCIATIONS instead.
1072
4b7c558d
JM
1073 PR c++/65498
1074 * pt.c (get_mostly_instantiated_function_type): Just return the
1075 type of the partially instantiated template in DECL_TI_TEMPLATE.
1076
f594abf4
MP
10772015-03-20 Marek Polacek <polacek@redhat.com>
1078
1079 PR c++/65398
1080 * constexpr.c (cxx_fold_indirect_ref): Transform *(&A[i] p+ j) into
1081 A[i + j].
1082
b75cebc4
MP
10832015-03-20 Marek Polacek <polacek@redhat.com>
1084
1085 PR c++/65072
1086 * typeck.c (lookup_anon_field): Make sure we're dealing with the main
1087 variant.
1088
7cb73573
JM
10892015-03-19 Jason Merrill <jason@redhat.com>
1090
1091 PR c++/65046
1092 Automatically propagate ABI tags to variables and functions
1093 from their (return) type.
1094 * class.c (check_tag): Handle variables and functions.
1095 (mark_or_check_attr_tags): Split out from find_abi_tags_r.
1096 (mark_or_check_tags): Likewise.
1097 (mark_abi_tags): Use it. Rename from mark_type_abi_tags.
1098 (check_abi_tags): Add single argument overload for decls.
1099 Handle inheriting tags for decls.
1100 * mangle.c (write_mangled_name): Call it.
1101 (mangle_return_type_p): Split out from write_encoding.
1102 (unmangled_name_p): Split out from write_mangled_name.
1103 (write_mangled_name): Ignore abi_tag on namespace.
1104 * cp-tree.h (NAMESPACE_IS_INLINE): Replace NAMESPACE_ABI_TAG.
1105 * parser.c (cp_parser_namespace_definition): Set it.
1106 * name-lookup.c (handle_namespace_attrs): Use arguments. Warn
1107 about abi_tag attribute on non-inline namespace.
1108 * tree.c (check_abi_tag_args): Split out from handle_abi_tag_attribute.
1109 (handle_abi_tag_attribute): Allow tags on variables.
1110
9b65e171
JJ
11112015-03-19 Jakub Jelinek <jakub@redhat.com>
1112
1113 * decl2.c (cplus_decl_attributes): Also add "omp declare target"
1114 attribute for DECL_EXTERNAL VAR_DECLs.
1115
41cee85a
PC
11162015-03-18 Paolo Carlini <paolo.carlini@oracle.com>
1117
1118 PR c++/65340
1119 * call.c (build_over_call): Pass the tsubst_flags_t argument to
1120 mark_used.
1121 * decl2.c (mark_used): Inline the require_deduced_type call and
1122 guard the error call.
1123
3d17be83
JM
11242015-03-16 Jason Merrill <jason@redhat.com>
1125
1126 PR c++/65061
1127 * parser.c (cp_parser_template_name): Call strip_using_decl.
1128
ec638c55
MP
11292015-03-16 Marek Polacek <polacek@redhat.com>
1130
1131 DR 1688
1132 PR c++/65327
1133 * decl.c (grokdeclarator): Allow volatile and constexpr together.
1134
b7e7f412
PC
11352015-03-12 Paolo Carlini <paolo.carlini@oracle.com>
1136
1137 PR c++/65323
1138 * decl.c (check_default_argument): Don't call
1139 maybe_warn_zero_as_null_pointer_constant.
1140
25de0a29
AH
11412015-03-11 Aldy Hernandez <aldyh@redhat.com>
1142
1143 * cp-gimplify.c (simple_empty_class_p): New.
1144 * cp-gimplify.c (cp_gimplify_expr): Handle RETURN_EXPR. Abstract
1145 the code for empty class copies into simple_empty_class_p, and
1146 adapt it to handle COMPOUND_EXPRs.
1147
58cbf8d4
PC
11482015-03-10 Paolo Carlini <paolo.carlini@oracle.com>
1149
1150 PR c++/65370
1151 * decl.c (duplicate_decls): Call check_redeclaration_no_default_args
1152 only if the location of newdecl doesn't match the location of olddecl.
1153
704c7904
JJ
11542015-03-10 Jakub Jelinek <jakub@redhat.com>
1155
1156 PR c++/65127
1157 * parser.c (parsing_nsdmi): Don't return true if current_class_ptr
1158 is not a PARM_DECL.
1159
a4d66d7d
JM
11602015-03-10 Jason Merrill <jason@redhat.com>
1161
1162 PR c++/65333
1163 DR 1558
1164 * pt.c (dependent_type_p_r): Check both class and alias template args.
1165
7ccb1a11
JJ
11662015-03-10 Jakub Jelinek <jakub@redhat.com>
1167
1168 PR c/65120
1169 * parser.c (cp_parser_binary_expression): Check for tcc_comparison
1170 before preparing arguments to warn_logical_not_parentheses.
1171 Use maybe_constant_value on rhs.
1172
a2f259ef
JM
11732015-03-09 Jason Merrill <jason@redhat.com>
1174
1175 PR c++/65339
1176 * call.c: Don't call maybe_resolve_dummy when calling a constructor.
1177
01177669
JJ
11782015-03-09 Jakub Jelinek <jakub@redhat.com>
1179
1180 PR c/65120
1181 * parser.c (cp_parser_binary_expression): Don't warn for
1182 !!x == y or !b == y where b is bool.
1183
a78cbe29
AH
11842015-03-06 Aldy Hernandez <aldyh@redhat.com>
1185
1186 * ptree.c (cxx_print_lambda_node): New.
1187 (cxx_print_xnode): Handle LAMBDA_EXPR.
1188
bf66b9b4
AH
11892015-03-03 Aldy Hernandez <aldyh@redhat.com>
1190
1191 PR c++/65295
1192 * constexpr.c (cxx_eval_constant_expression): Remove assert in
1193 RESULT_DECL handling.
1194
75e0295b
MP
11952015-02-26 Marek Polacek <polacek@redhat.com>
1196
1197 PR c++/65202
1198 * constexpr.c (cxx_eval_constant_expression): Don't evaluate
1199 a RETURN_EXPR if its operand is null.
1200
9b276dad
JM
12012015-02-25 Jason Merrill <jason@redhat.com>
1202
2b8f9c8f
JM
1203 PR c++/65209
1204 * decl2.c (constrain_visibility) [VISIBILITY_ANON]: Clear
1205 DECL_COMDAT.
1206 (constrain_visibility_for_template): Handle reference arguments.
1207
9b276dad
JM
1208 PR debug/58315
1209 * decl.c (start_preparsed_function): Use create_artificial_label
1210 for cdtor_label.
1211
4414e22e
PC
12122015-02-17 Paolo Carlini <paolo.carlini@oracle.com>
1213 Jakub Jelinek <jakub@redhat.com>
1214
1215 PR c++/65075
1216 * constexpr.c (check_constexpr_bind_expr_vars): Allow
1217 implicit typedefs for lambda types.
1218
6e4f01ff
PC
12192015-02-13 Paolo Carlini <paolo.carlini@oracle.com>
1220
1221 PR c++/60894
1222 * decl.c (lookup_and_check_tag): Use strip_using_decl.
1223
ef796bef
JM
12242015-02-13 Jason Merrill <jason@redhat.com>
1225
1226 PR c++/65054
1227 * pt.c (template_args_equal): Look through conversions here.
1228 * tree.c (cp_tree_equal): Not here.
1229
e84abfa4
PC
12302015-02-13 Paolo Carlini <paolo.carlini@oracle.com>
1231
1232 PR c++/60211
1233 * parser.c (cp_parser_pragma): Diagnose PRAGMA_IVDEP at
1234 pragma_external context.
1235
f9b600ba
JM
12362015-02-13 Jason Merrill <jason@redhat.com>
1237
1238 PR c++/65051
1239 * call.c (reference_binding): Don't look for bad conversion
1240 if TO is incomplete.
1241
81adbcea
PC
12422015-02-13 Paolo Carlini <paolo.carlini@oracle.com>
1243
1244 PR c++/64970
1245 * decl.c (make_typename_type): Pass tsubst_flags_t argument
1246 to lookup_template_class.
1247
730f474b
JJ
12482015-02-13 Jakub Jelinek <jakub@redhat.com>
1249
1250 PR ipa/65034
1251 * decl.c (start_preparsed_function): Use void_type_node instead
1252 of NULL_TREE as LABEL_DECL type.
1253
f522930c
JM
12542015-02-12 Jason Merrill <jason@redhat.com>
1255
3b95b65c
JM
1256 PR c++/64898
1257 * mangle.c (write_mangled_name): Fix test for variable template
1258 instantiation.
1259
f522930c
JM
1260 * decl.c (begin_destructor_body): Condition clobber on
1261 -flifetime-dse.
1262
bc81eb3f
AA
12632015-02-12 Andrea Azzarone <azzaronea@gmail.com>
1264
1265 PR c++/64959
1266 * parser.c (lookup_literal_operator): Return all candidates.
1267 (cp_parser_userdef_char_literal): Simplify error handling.
1268 (cp_parser_userdef_numeric_literal): Pass tf_warning_or_error.
1269 (cp_parser_userdef_string_literal): Pass tf_warning_or_error.
1270 Also give higher priority to standard string UDL operator.
1271
40595b8e
JJ
12722015-02-12 Jakub Jelinek <jakub@redhat.com>
1273
12d0d358
JJ
1274 PR debug/55541
1275 * cp-tree.h (BLOCK_OUTER_CURLY_BRACE_P): Define.
1276 * decl.c (poplevel): If functionbody, try not to create an extra
1277 BLOCK for function body and use subblocks as that, if it is non-NULL
1278 and doesn't have siblings. Set BLOCK_OUTER_CURLY_BRACE_P flag.
1279 (outer_curly_brace_block): Use BLOCK_OUTER_CURLY_BRACE_P flag.
1280
40595b8e
JJ
1281 PR sanitizer/64984
1282 * except.c (check_noexcept_r): Return NULL for internal
1283 calls.
1284
0ec052fe
JM
12852015-02-10 Jason Merrill <jason@redhat.com>
1286
1287 PR c++/64994
1288 * constexpr.c (cxx_eval_call_expression): Walk the clone list.
1289
d90cae08
JH
12902015-02-10 Jan Hubicka <hubicka@ucw.cz>
1291
1292 PR ipa/64982
1293 * method.c (use_thunk): Do not check for stdarg thunks.
1294
a02f26f6
JM
12952015-02-06 Jason Merrill <jason@redhat.com>
1296
1297 PR c++/64899
1298 * init.c (build_vec_init): Handle default-initialized array with
1299 constexpr default constructor.
1300
4886ec8e
JJ
13012015-02-04 Jakub Jelinek <jakub@redhat.com>
1302
1303 PR c/64824
1304 PR c/64868
1305 * parser.c (cp_parser_omp_atomic): Handle RDIV_EXPR.
1306
457d0ace
PC
13072015-02-03 Paolo Carlini <paolo.carlini@oracle.com>
1308
1309 PR c++/64877
1310 * typeck.c (cp_build_binary_op): Avoid spurious -Waddress warnings
1311 for generated expressions.
1312
879887f1
VV
13132015-02-02 Ville Voutilainen <ville.voutilainen@gmail.com>
1314
1315 PR c++/64901
1316 * decl.c (duplicate_decls): Also duplicate DECL_FINAL_P and
1317 DECL_OVERRIDE_P.
1318
4c5cf0b2
JM
13192015-02-02 Jason Merrill <jason@redhat.com>
1320
1321 * tree.c (handle_abi_tag_attribute): Diagnose invalid arguments.
1322
40fecdd6
JM
13232015-01-30 Joseph Myers <joseph@codesourcery.com>
1324
1325 * class.c, except.c, parser.c, pt.c: All callers of fatal_error
1326 changed to pass input_location as first argument.
1327
a7c3e87e
JJ
13282015-01-29 Jakub Jelinek <jakub@redhat.com>
1329
1330 PR c++/64717
1331 * cp-ubsan.c (cp_ubsan_instrument_vptr): Don't wrap vptr
1332 into SAVE_EXPR.
1333
e1ef8aa9
JM
13342015-01-29 Jason Merrill <jason@redhat.com>
1335
3dbb8427
JM
1336 PR c++/49508
1337 * semantics.c (finish_return_stmt): Suppress -Wreturn-type on
1338 erroneous return statement.
1339
e1ef8aa9
JM
1340 PR c++/64521
1341 * repo.c (repo_emit_p): It's OK for a clone to be extern at this
1342 point.
1343
f7f049fa
CT
13442015-01-27 Caroline Tice <cmtice@google.com>
1345
1346 Committing VTV Cywin/Ming patch for Patrick Wollgast
1347 * vtable-class-hierarchy.cc (vtv_generate_init_routine): Add
1348 check for not TARGET_PECOFF at the VTV_PREINIT_PRIORITY checks.
1349
94e54b8d
JM
13502015-01-27 Jason Merrill <jason@redhat.com>
1351
2cc7f90b
JM
1352 PR c++/58597
1353 * lambda.c (maybe_add_lambda_conv_op): Check cfun rather than
1354 current_function_decl.
1355
94e54b8d
JM
1356 PR c++/63889
1357 * pt.c (finish_template_variable): Move from semantics.c.
1358 Handle multiple template arg levels. Handle coercion here.
1359 (lookup_template_variable): Not here.
1360
7c83622c
JM
13612015-01-23 Jason Merrill <jason@redhat.com>
1362
fa4e8db2
JM
1363 PR c++/64314
1364 PR c++/57510
1365 * typeck2.c (split_nonconstant_init_1): Remove a sub-CONSTRUCTOR
1366 that has been completely split out.
1367
c6e7c499 1368 PR c++/64701
8a7261b2
JM
1369 * constexpr.c (cxx_eval_constant_expression): Don't crash on C++
1370 statement codes.
c6e7c499 1371
7c83622c
JM
1372 PR c++/64727
1373 * constexpr.c (cxx_eval_constant_expression): Allow for lvalue use
1374 of CONST_DECL.
1375
f1eac182
JM
13762015-01-21 Jason Merrill <jason@redhat.com>
1377
b85a3242
JM
1378 PR c++/64603
1379 * constexpr.c (cxx_eval_constant_expression): Only shortcut
1380 constant CONSTRUCTORs.
1381
f1eac182
JM
1382 PR c++/64647
1383 * constexpr.c (ensure_literal_type_for_constexpr_object): Don't
1384 give a hard error in a template instantiation.
1385
cbf5d0e7
RB
13862015-01-21 Richard Biener <rguenther@suse.de>
1387
1388 PR middle-end/64313
1389 * decl.c (duplicate_decls): Call set_builtin_decl_declared_p
1390 for builtins the user declared correctly.
1391
de37b21e
PC
13922015-01-16 Paolo Carlini <paolo.carlini@oracle.com>
1393
1394 PR c++/58614
1395 * pt.c (unify): When BRACE_ENCLOSED_INITIALIZER_P (arg), handle
1396 TREE_TYPE (elt) == error_mark_node.
1397
67933728
JH
13982015-01-15 Jan Hubicka <hubicka@ucw.cz>
1399
1400 PR tree-optimization/62053
1401 * tree.c (build_cplus_array_type): Layout type after variants are set.
1402
35228ac7
JJ
14032015-01-15 Jakub Jelinek <jakub@redhat.com>
1404
1405 * cp-gimplify.c (cp_genericize_r): Call
1406 cp_ubsan_maybe_instrument_member_call for member calls.
1407 (cp_ubsan_check_member_access_r): New function.
1408 (cp_genericize_tree): Call cp_ubsan_instrument_member_accesses.
1409 * cp-tree.h (cp_ubsan_maybe_instrument_member_call,
1410 cp_ubsan_instrument_member_accesses,
1411 cp_ubsan_maybe_instrument_downcast,
1412 cp_ubsan_maybe_instrument_cast_to_vbase): New prototypes.
1413 * cp-ubsan.c: New file.
1414 * Make-lang.in (CXX_AND_OBJCXX_OBJS): Add cp/cp-ubsan.o.
1415 * constexpr.c (cxx_eval_call_expression): Return void_node
1416 for IFN_UBSAN_VPTR.
1417 (potential_constant_expression_1): Return true for
1418 UBSAN_NULL, UBSAN_BOUNDS and UBSAN_VPTR internal calls.
1419 * typeck.c (build_class_member_access_expr): Provide locus
1420 for COMPONENT_REFs.
1421 (build_static_cast_1): Instrument downcasts.
1422 * class.c (build_base_path): For -fsanitize=vptr and !fixed_type_p
1423 add ubsan instrumentation for virtual_access.
1424 * call.c: Include internal-fn.h.
1425 (set_flags_from_callee): Handle internal calls.
1426
199b7a35
MV
14272015-01-15 Momchil Velikov <momchil.velikov@gmail.com>
1428
1429 PR c++/59366
1430 * name-lookup.c (pushdecl_maybe_friend_1): Hide friend functions
1431 and function templates, declared only in the class.
1432 * decl.c (duplicate_decls): Reveal hidden friend functions or
1433 function templates, if they are redeclared outside the class.
1434
c3c29ba5
JM
14352015-01-15 Jason Merrill <jason@redhat.com>
1436
134efa82
JM
1437 PR c++/64356
1438 * constexpr.c (cxx_eval_binary_expression): Fix pasto.
1439
c3c29ba5
JM
1440 PR c++/63283
1441 * constexpr.c (potential_constant_expression_1): Handle reference
1442 args in templates.
1443
41dbbb37
TS
14442015-01-15 Thomas Schwinge <thomas@codesourcery.com>
1445 James Norris <jnorris@codesourcery.com>
1446 Cesar Philippidis <cesar@codesourcery.com>
1447 Ilmir Usmanov <i.usmanov@samsung.com>
1448 Jakub Jelinek <jakub@redhat.com>
1449
1450 * parser.c: Include "gomp-constants.h".
1451 (cp_parser_omp_clause_map): Use enum gomp_map_kind instead of enum
1452 omp_clause_map_kind. Use GOMP_MAP_* instead of OMP_CLAUSE_MAP_*.
1453 Use OMP_CLAUSE_SET_MAP_KIND.
1454 (cp_parser_omp_construct, cp_parser_pragma): Handle
1455 PRAGMA_OACC_CACHE, PRAGMA_OACC_DATA, PRAGMA_OACC_ENTER_DATA,
1456 PRAGMA_OACC_EXIT_DATA, PRAGMA_OACC_KERNELS, PRAGMA_OACC_PARALLEL,
1457 PRAGMA_OACC_LOOP, PRAGMA_OACC_UPDATE, PRAGMA_OACC_WAIT.
1458 (cp_parser_omp_clause_name): Handle "async", "copy", "copyout",
1459 "create", "delete", "deviceptr", "host", "num_gangs",
1460 "num_workers", "present", "present_or_copy", "pcopy",
1461 "present_or_copyin", "pcopyin", "present_or_copyout", "pcopyout",
1462 "present_or_create", "pcreate", "vector_length", "wait".
1463 (OACC_DATA_CLAUSE_MASK, OACC_ENTER_DATA_CLAUSE_MASK)
1464 (OACC_EXIT_DATA_CLAUSE_MASK, OACC_KERNELS_CLAUSE_MASK)
1465 (OACC_LOOP_CLAUSE_MASK, OACC_PARALLEL_CLAUSE_MASK)
1466 (OACC_UPDATE_CLAUSE_MASK, OACC_WAIT_CLAUSE_MASK): New macros.
1467 (cp_parser_omp_var_list_no_open): Handle OMP_CLAUSE__CACHE_.
1468 (cp_parser_oacc_data_clause, cp_parser_oacc_data_clause_deviceptr)
1469 (cp_parser_oacc_clause_vector_length, cp_parser_oacc_wait_list)
1470 (cp_parser_oacc_clause_wait, cp_parser_omp_clause_num_gangs)
1471 (cp_parser_omp_clause_num_workers, cp_parser_oacc_clause_async)
1472 (cp_parser_oacc_all_clauses, cp_parser_oacc_cache)
1473 (cp_parser_oacc_data, cp_parser_oacc_enter_exit_data)
1474 (cp_parser_oacc_kernels, cp_parser_oacc_loop)
1475 (cp_parser_oacc_parallel, cp_parser_oacc_update)
1476 (cp_parser_oacc_wait): New functions.
1477 * cp-tree.h (finish_oacc_data, finish_oacc_kernels)
1478 (finish_oacc_parallel): New prototypes.
1479 * semantics.c: Include "gomp-constants.h".
1480 (handle_omp_array_sections): Handle GOMP_MAP_FORCE_DEVICEPTR. Use
1481 GOMP_MAP_* instead of OMP_CLAUSE_MAP_*. Use
1482 OMP_CLAUSE_SET_MAP_KIND.
1483 (finish_omp_clauses): Handle OMP_CLAUSE_ASYNC,
1484 OMP_CLAUSE_VECTOR_LENGTH, OMP_CLAUSE_WAIT, OMP_CLAUSE__CACHE_.
1485 Use GOMP_MAP_* instead of OMP_CLAUSE_MAP_*.
1486 (finish_oacc_data, finish_oacc_kernels, finish_oacc_parallel): New
1487 functions.
1488
36b218ee
PC
14892015-01-14 Paolo Carlini <paolo.carlini@oracle.com>
1490
1491 PR c++/58671
1492 * decl2.c (var_defined_without_dynamic_init): Handle gracefully
1493 self-initialization.
1494
8f413ae2
JM
14952015-01-13 Jason Merrill <jason@redhat.com>
1496
caee690e
JM
1497 PR c++/64356
1498 PR libstdc++/58777
1499 * constexpr.c (cxx_eval_binary_expression): Don't VERIFY_CONSTANT
1500 pointer expressions.
1501 (cxx_eval_increment_expression): Likewise.
1502
7c368fb2
JM
1503 PR c++/64514
1504 * pt.c (coerce_template_parameter_pack): Return NULL for a
1505 zero-length fixed parameter pack with a pack expansion arg.
1506
8f413ae2
JM
1507 PR c++/64520
1508 * pt.c (unify): Don't try to deduce to std::initializer_list<T...>.
1509
49c8bc0c
JM
15102015-01-12 Jason Merrill <jason@redhat.com>
1511
1512 PR c++/64547
1513 * constexpr.c (cxx_eval_call_expression): A call to a void
1514 function doesn't need to return a value.
1515
adfac8df
JJ
15162015-01-09 Michael Collison <michael.collison@linaro.org>
1517
1518 * call.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
1519 input.h, alias.h, symtab.h, options.h, fold-const.h,
1520 wide-int.h, and inchash.h due to flattening of tree.h.
1521 * class.c: Ditto.
1522 * constexpr.c: Ditto.
1523 * cp-array-notation.c: Ditto.
1524 * cp-gimplify.c: Ditto.
1525 * cp-lang.c: Ditto.
1526 * cp-objcp-common.c: Ditto.
1527 * cvt.c: Ditto.
1528 * decl2.c: Ditto.
1529 * decl.c: Ditto.
1530 * dump.c: Ditto.
1531 * error.c: Ditto.
1532 * except.c: Ditto.
1533 * expr.c: Ditto.
1534 * friend.c: Ditto.
1535 * init.c: Ditto.
1536 * lambda.c: Ditto.
1537 * lex.c: Ditto.
1538 * mangle.c: Ditto.
1539 * name-lookup.c: Ditto.
1540 * optimize.c: Ditto.
1541 * parser.c: Ditto.
1542 * pt.c: Ditto.
1543 * ptree.c: Ditto.
1544 * repo.c: Ditto.
1545 * rtti.c: Ditto.
1546 * search.c: Ditto.
1547 * semantics.c: Ditto.
1548 * tree.c: Ditto.
1549 * typeck2.c: Ditto.
1550 * typeck.c: Ditto.
1551
f5481fc4
JM
15522015-01-08 Jason Merrill <jason@redhat.com>
1553
1554 * cp-gimplify.c (cp_genericize): Use do_ubsan_in_current_function.
1555 * decl.c (compute_array_index_type): Likewise.
1556 * init.c (build_vec_init): Likewise.
1557 * typeck.c (cp_build_binary_op): Likewise.
1558
46621807
JM
15592015-01-08 Jason Merrill <jason@redhat.com>
1560
1561 * init.c (build_vec_init): Call ubsan_instrument_bounds to check
1562 whether an initializer-list is too big for a VLA.
1563 (throw_bad_array_length): Remove.
1564 * cp-tree.h: Remove prototype.
1565
247ecdf3
PC
15662015-01-08 Paolo Carlini <paolo.carlini@oracle.com>
1567
1568 PR c++/60753
1569 * decl.c (grokfndecl): Add bool parameter.
1570 (grokdeclarator): Adjust calls.
1571 (start_decl): Don't set DECL_DELETED_FN here.
1572
47867b4f
JM
15732015-01-06 Jason Merrill <jason@redhat.com>
1574
efcdb22f
JM
1575 * parser.c (cp_parser_nested_name_specifier_opt): Diagnose invalid
1576 template-ids.
1577
c6a38536
JM
1578 PR c++/64455
1579 * pt.c (type_dependent_expression_p): Handle variable templates.
1580 * constexpr.c (potential_constant_expression_1): Use it.
1581
b433d944
JM
1582 PR c++/64487
1583 * semantics.c (finish_offsetof): Handle templates here.
1584 * parser.c (cp_parser_builtin_offsetof): Not here.
1585
47867b4f
JM
1586 PR c++/64496
1587 * semantics.c (process_outer_var_ref): Diagnose lambda in local
1588 class NSDMI.
1589
864822bd
VV
15902015-01-06 Ville Voutilainen <ville.voutilainen@gmail.com>
1591
1592 PR c++/64489
1593 * class.c (check_field_decls): Make copy assignment operators
1594 complex only in c++98 mode.
1595
2f42e5de
TS
15962015-01-05 Trevor Saunders <tsaunders@mozilla.com>
1597
1598 PR c++/31397
1599 * class.c (check_for_override): Warn when a virtual function is an
1600 override not marked override.
1601
86cfdb4e
TS
16022015-01-05 Trevor Saunders <tsaunders@mozilla.com>
1603
1604 * class.c (warn_hidden): Use auto_vec<tree> instead of tree_list to
1605 hold base_fndecls.
1606 (get_basefndecls): Adjust.
1607
5624e564
JJ
16082015-01-05 Jakub Jelinek <jakub@redhat.com>
1609
1610 Update copyright years.
1611
5bd012f8
MP
16122015-01-05 Marek Polacek <polacek@redhat.com>
1613
1614 PR c/64423
1615 * typeck.c (cp_build_array_ref): Pass loc down to
1616 warn_array_subscript_with_type_char.
1617
ad41bd84 1618\f
5624e564 1619Copyright (C) 2015 Free Software Foundation, Inc.
ad41bd84
JM
1620
1621Copying and distribution of this file, with or without modification,
1622are permitted in any medium without royalty provided the copyright
1623notice and this notice are preserved.
This page took 2.109727 seconds and 5 git commands to generate.