Eric Botcazou [Mon, 17 Oct 2016 22:15:02 +0000 (22:15 +0000)]
expmed.c (expand_shift_1): Add MAY_FAIL parameter and do not assert that the result is non-zero if it is true.
* expmed.c (expand_shift_1): Add MAY_FAIL parameter and do not assert
that the result is non-zero if it is true.
(maybe_expand_shift): New wrapper around expand_shift_1.
(emit_store_flag): Call maybe_expand_shift in lieu of expand_shift.
From-SVN: r241282
Bill Schmidt [Mon, 17 Oct 2016 22:08:56 +0000 (22:08 +0000)]
re PR tree-optimization/77916 (ICE in verify_gimple_in_cfg: invalid (pointer) operands to plus/minus)
[gcc]
2016-10-17 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
PR tree-optimization/77916
* gimple-ssa-strength-reduction.c (create_add_on_incoming_edge):
Don't allow a MINUS_EXPR for pointer arithmetic for either known
or unknown strides.
(record_increment): Increments of -1 for unknown strides just use
a multiply initializer like other negative values.
(analyze_increments): Remove stopgap solution for -1 increment
applied to pointer arithmetic.
[gcc/testsuite]
2016-10-17 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
PR tree-optimization/77916
* gcc.dg/torture/pr77916.c: New.
From-SVN: r241281
Steven G. Kargl [Mon, 17 Oct 2016 19:57:12 +0000 (19:57 +0000)]
re PR fortran/77978 (stop codes misinterpreted in both f2003 and f2008)
2016-10-17 Steven G. Kargl <kargl@gcc.gnu.org>
PR fortran/77978
* match.c (gfc_match_stopcode): Fix error reporting for several
deficiencies in matching stop-codes.
2016-10-17 Steven G. Kargl <kargl@gcc.gnu.org>
PR fortran/77978
* gfortran.dg/pr77978_1.f90: New test.
* gfortran.dg/pr77978_2.f90: Ditto.
* gfortran.dg/pr77978_3.f90: Ditto.
From-SVN: r241279
Marek Polacek [Mon, 17 Oct 2016 19:29:00 +0000 (19:29 +0000)]
c-warn.c (find_array_ref_with_const_idx_r): Remove parameter names.
* c-warn.c (find_array_ref_with_const_idx_r): Remove parameter names.
Return immediately when finding a match.
(warn_tautological_cmp): Remove a boolean variable that is no longer
needed.
From-SVN: r241278
Yuri Rumyantsev [Mon, 17 Oct 2016 18:05:12 +0000 (18:05 +0000)]
Update dom_info
2016-10-17 Yuri Rumyantsev <ysrumyan@gmail.com>
* dominance.c (dom_info::dom_info): Add new constructor for region
which is vector of basic blocks.
(dom_init): New method to initialize members common for both
constructors.
(dom_info::dom_info): Invoke dom_init for partial initialization.
(dom_info::get_idom): Add check to corner cases on basic blocks which
are not in region.
(dom_info::calc_dfs_tree): Check M_FAKE_EXIT_EDGE instead of M_REVERSE
to detect unreachable bbs.
(dom_info::calc_idoms): Likewise.
(compute_dom_fast_query_in_region): New function.
(calculate_dominance_info_for_region): Likewise.
(free_dominance_info_for_region): Likewise.
* dominance.h: Add prototypes for introduced region-based functions
tree-if-conv.c: (build_region): New function.
(if_convertible_loop_p_1): Invoke local version of post-dominators
calculation before basic block predication with subsequent freeing
post-dominator info.
(tree_if_conversion): Remove free of post-dominator info
(pass_if_conversion::execute): Delete detection of infinite loops
and fake edges to exit block since post-dominator calculation is
performed per if-converted loop only.
From-SVN: r241275
Paul Thomas [Mon, 17 Oct 2016 17:52:05 +0000 (17:52 +0000)]
re PR fortran/61420 ([OOP] type-bound procedure returning a procedure pointer fails to compile)
2016-10-17 Paul Thomas <pault@gcc.gnu.org>
PR fortran/61420
PR fortran/78013
* resolve.c (resolve_variable): Obtain the typespec for a
variable expression, when the variable is a function result
that is a procedure pointer.
2016-10-17 Paul Thomas <pault@gcc.gnu.org>
PR fortran/61420
PR fortran/78013
* gfortran.dg/proc_ptr_49.f90: New test.
From-SVN: r241274
Bernd Edlinger [Mon, 17 Oct 2016 17:46:59 +0000 (17:46 +0000)]
re PR target/77308 (surprisingly large stack usage for sha512 on arm)
2016-10-17 Bernd Edlinger <bernd.edlinger@hotmail.de>
PR target/77308
* config/arm/arm.c (arm_emit_coreregs_64bit_shift): Clear the result
register explicitly.
* config/arm/arm.md (ashldi3, ashrdi3, lshrdi3): Don't FAIL if
optimizing for size.
testsuite:
2016-10-17 Bernd Edlinger <bernd.edlinger@hotmail.de>
PR target/77308
* gcc.target/arm/pr77308.c: New test.
From-SVN: r241273
Jakub Jelinek [Mon, 17 Oct 2016 17:35:33 +0000 (19:35 +0200)]
dwarf2.h (enum dwarf_calling_convention): Add new DWARF5 calling convention codes.
* dwarf2.h (enum dwarf_calling_convention): Add new DWARF5
calling convention codes.
(enum dwarf_line_number_content_type): New.
(enum dwarf_location_list_entry_type): Add DWARF5 DW_LLE_*
codes.
(enum dwarf_source_language): Add new DWARF5 DW_LANG_* codes.
(enum dwarf_macro_record_type): Add DWARF5 DW_MACRO_* codes.
(enum dwarf_name_index_attribute): New.
(enum dwarf_range_list_entry): New.
(enum dwarf_unit_type): New.
* dwarf2.def: Add new DWARF5 DW_TAG_*, DW_FORM_*, DW_AT_*,
DW_OP_* and DW_ATE_* entries.
From-SVN: r241272
David Edelsohn [Mon, 17 Oct 2016 17:15:33 +0000 (17:15 +0000)]
* lib/target-supports.exp
(check_effective_target_floatn_nx_runtime): Return 0 for
powerpc*-ibm-aix*.
From-SVN: r241271
Ian Lance Taylor [Mon, 17 Oct 2016 16:54:25 +0000 (16:54 +0000)]
runtime: copy rdebug code from Go 1.7 runtime
While we're at it, update the runtime/debug package, and start running
its testsuite by default. I'm not sure why runtime/debug was not
previously updated to 1.7. Doing that led me to fix some minor aspects
of runtime.Stack and the C function runtime/debug.readGCStats.
Reviewed-on: https://go-review.googlesource.com/31251
From-SVN: r241261
Andrew Pinski [Mon, 17 Oct 2016 16:53:13 +0000 (09:53 -0700)]
Fix formating.
From-SVN: r241260
Andrew Pinski [Mon, 17 Oct 2016 16:52:44 +0000 (16:52 +0000)]
test_align-7.c: Use long long instead of long.
2016-10-17 Andrew Pinski <apinski@cavium.com>
* gcc.target/aarch64/aapcs64/test_align-7.c: Use long
long instead of long.
* gcc.target/aarch64/cinc_common_1.c: Likewise.
* gcc.target/aarch64/combine_bfi_1.c: Likewise.
* gcc.target/aarch64/fmul_fcvt_1.c: Likewise.
* gcc.target/aarch64/mult-synth_4.c: Likewise.
* gcc.target/aarch64/pr68102_1.c: Likewise.
* gcc.target/aarch64/target_attr_3.c: Likewise.
From-SVN: r241259
Kyrylo Tkachov [Mon, 17 Oct 2016 16:37:38 +0000 (16:37 +0000)]
[AArch64] Use new target pass registration framework for FMA steering pass
* config/aarch64/aarch64.c: Delete inclusion of
cortex-a57-fma-steering.h.
(aarch64_override_options): Delete call
to aarch64_register_fma_steering.
* config/aarch64/aarch64-protos.h (make_pass_fma_steering): Declare.
* config/aarch64/cortex-a57-fma-steering.h: Delete.
* config/aarch64/aarch64-passes.def: New file.
* config/aarch64/cortex-a57-fma-steering.c
(aarch64_register_fma_steering): Delete definition.
(make_pass_fma_steering): Remove static qualifier.
* config/aarch64/t-aarch64 (PASSES_EXTRA): New directive.
(cortex-a57-fma-steering.o): Remove dependency on
cortex-a57-fma-steering.h.
From-SVN: r241248
Eric Botcazou [Mon, 17 Oct 2016 16:10:42 +0000 (16:10 +0000)]
* explow.c (validize_mem): Do not modify the argument in-place.
From-SVN: r241247
Thomas Schwinge [Mon, 17 Oct 2016 15:56:22 +0000 (17:56 +0200)]
Explicitly list all tree codes in gcc/tree-streamer.c:record_common_node
gcc/
* tree-streamer.c (record_common_node): Explicitly list expected
tree codes.
From-SVN: r241246
Jonathan Wakely [Mon, 17 Oct 2016 14:39:23 +0000 (15:39 +0100)]
PR77994 Convert std::sample size argument to suitable type
PR libstdc++/77994
* include/bits/stl_algo.h (sample): Convert size argument to iterator
difference type.
* include/experimental/algorithm (experimental::sample): Likewise.
* testsuite/25_algorithms/sample/2.cc: New test.
From-SVN: r241245
Richard Biener [Mon, 17 Oct 2016 13:46:34 +0000 (13:46 +0000)]
re PR tree-optimization/77988 (ICE on valid code at -Os and above on x86_64-linux-gnu: verify_gimple failed)
2016-10-17 Richard Biener <rguenther@suse.de>
PR tree-optimization/77988
* tree-vrp.c (remove_range_assertions): Use replace_uses_by.
* gcc.dg/torture/pr77988.c: New testcase.
From-SVN: r241242
Paolo Carlini [Mon, 17 Oct 2016 13:32:32 +0000 (13:32 +0000)]
57619.C: Rename to 57619.cc.
2016-10-17 Paolo Carlini <paolo.carlini@oracle.com>
* testsuite/unordered_map/insert/57619.C: Rename to 57619.cc.
* testsuite/23_containers/unordered_multimap/insert/57619.C: Likewise.
2016-10-17 Paolo Carlini <paolo.carlini@oracle.com>
* testsuite/array/capacity/empty.cc: Remove 'test' variables.
* testsuite/array/capacity/max_size.cc: Likewise.
* testsuite/array/capacity/size.cc: Likewise.
* testsuite/array/comparison_operators/equal.cc: Likewise.
* testsuite/array/comparison_operators/greater.cc: Likewise.
* testsuite/array/comparison_operators/greater_or_equal.cc: Likewise.
* testsuite/array/comparison_operators/less.cc: Likewise.
* testsuite/array/comparison_operators/less_or_equal.cc: Likewise.
* testsuite/array/comparison_operators/not_equal.cc: Likewise.
* testsuite/array/element_access/54388.cc: Likewise.
* testsuite/array/element_access/at_out_of_range.cc: Likewise.
* testsuite/array/element_access/back.cc: Likewise.
* testsuite/array/element_access/data.cc: Likewise.
* testsuite/array/element_access/front.cc: Likewise.
* testsuite/array/iterators/end_is_one_past.cc: Likewise.
* testsuite/array/requirements/contiguous.cc: Likewise.
* testsuite/array/requirements/fill.cc: Likewise.
* testsuite/array/requirements/member_swap.cc: Likewise.
* testsuite/array/requirements/zero_sized_arrays.cc: Likewise.
* testsuite/array/specialized_algorithms/swap.cc: Likewise.
* testsuite/array/tuple_interface/tuple_element.cc: Likewise.
* testsuite/array/tuple_interface/tuple_element_cpp14.cc: Likewise.
* testsuite/array/tuple_interface/tuple_size.cc: Likewise.
* testsuite/bitset/all/1.cc: Likewise.
* testsuite/bitset/cons/1.cc: Likewise.
* testsuite/bitset/cons/16020.cc: Likewise.
* testsuite/bitset/cons/2.cc: Likewise.
* testsuite/bitset/cons/3.cc: Likewise.
* testsuite/bitset/cons/50268.cc: Likewise.
* testsuite/bitset/cons/6282.cc: Likewise.
* testsuite/bitset/cons/dr1325-2.cc: Likewise.
* testsuite/bitset/cons/dr396.cc: Likewise.
* testsuite/bitset/ext/15361.cc: Likewise.
* testsuite/bitset/input/1.cc: Likewise.
* testsuite/bitset/operations/1.cc: Likewise.
* testsuite/bitset/operations/13838.cc: Likewise.
* testsuite/bitset/operations/2.cc: Likewise.
* testsuite/bitset/test/1.cc: Likewise.
* testsuite/bitset/to_string/1.cc: Likewise.
* testsuite/bitset/to_string/dr396.cc: Likewise.
* testsuite/bitset/to_ullong/1.cc: Likewise.
* testsuite/bitset/to_ulong/1.cc: Likewise.
* testsuite/deque/allocator/copy.cc: Likewise.
* testsuite/deque/allocator/copy_assign.cc: Likewise.
* testsuite/deque/allocator/ext_ptr.cc: Likewise.
* testsuite/deque/allocator/minimal.cc: Likewise.
* testsuite/deque/allocator/move.cc: Likewise.
* testsuite/deque/allocator/move_assign.cc: Likewise.
* testsuite/deque/allocator/swap.cc: Likewise.
* testsuite/deque/capacity/29134-2.cc: Likewise.
* testsuite/deque/capacity/29134.cc: Likewise.
* testsuite/deque/capacity/moveable.cc: Likewise.
* testsuite/deque/capacity/resize_size.cc: Likewise.
* testsuite/deque/capacity/shrink_to_fit.cc: Likewise.
* testsuite/deque/cons/1.cc: Likewise.
* testsuite/deque/cons/2.cc: Likewise.
* testsuite/deque/cons/assign/1.cc: Likewise.
* testsuite/deque/cons/cons_size.cc: Likewise.
* testsuite/deque/cons/moveable.cc: Likewise.
* testsuite/deque/modifiers/erase/1.cc: Likewise.
* testsuite/deque/modifiers/erase/2.cc: Likewise.
* testsuite/deque/modifiers/erase/3.cc: Likewise.
* testsuite/deque/modifiers/erase/moveable.cc: Likewise.
* testsuite/deque/modifiers/moveable.cc: Likewise.
* testsuite/deque/modifiers/push_back/49836.cc: Likewise.
* testsuite/deque/modifiers/push_front/49836.cc: Likewise.
* testsuite/deque/modifiers/swap/1.cc: Likewise.
* testsuite/deque/modifiers/swap/2.cc: Likewise.
* testsuite/deque/modifiers/swap/3.cc: Likewise.
* testsuite/deque/operators/1.cc: Likewise.
* testsuite/deque/operators/2.cc: Likewise.
* testsuite/forward_list/allocator/copy.cc: Likewise.
* testsuite/forward_list/allocator/copy_assign.cc: Likewise.
* testsuite/forward_list/allocator/ext_ptr.cc: Likewise.
* testsuite/forward_list/allocator/minimal.cc: Likewise.
* testsuite/forward_list/allocator/move.cc: Likewise.
* testsuite/forward_list/allocator/move_assign.cc: Likewise.
* testsuite/forward_list/allocator/swap.cc: Likewise.
* testsuite/forward_list/capacity/1.cc: Likewise.
* testsuite/forward_list/capacity/resize_size.cc: Likewise.
* testsuite/forward_list/comparable.cc: Likewise.
* testsuite/forward_list/cons/1.cc: Likewise.
* testsuite/forward_list/cons/2.cc: Likewise.
* testsuite/forward_list/cons/3.cc: Likewise.
* testsuite/forward_list/cons/4.cc: Likewise.
* testsuite/forward_list/cons/5.cc: Likewise.
* testsuite/forward_list/cons/6.cc: Likewise.
* testsuite/forward_list/cons/7.cc: Likewise.
* testsuite/forward_list/cons/8.cc: Likewise.
* testsuite/forward_list/cons/9.cc: Likewise.
* testsuite/forward_list/cons/cons_size.cc: Likewise.
* testsuite/forward_list/cons/moveable.cc: Likewise.
* testsuite/forward_list/debug/clear.cc: Likewise.
* testsuite/forward_list/debug/construct4_neg.cc: Likewise.
* testsuite/forward_list/debug/erase_after1_neg.cc: Likewise.
* testsuite/forward_list/debug/move_assign_neg.cc: Likewise.
* testsuite/forward_list/debug/move_constructor.cc: Likewise.
* testsuite/forward_list/debug/move_neg.cc: Likewise.
* testsuite/forward_list/debug/splice_after.cc: Likewise.
* testsuite/forward_list/debug/swap.cc: Likewise.
* testsuite/forward_list/modifiers/1.cc: Likewise.
* testsuite/forward_list/modifiers/2.cc: Likewise.
* testsuite/forward_list/modifiers/3.cc: Likewise.
* testsuite/forward_list/modifiers/4.cc: Likewise.
* testsuite/forward_list/modifiers/5.cc: Likewise.
* testsuite/forward_list/modifiers/6.cc: Likewise.
* testsuite/forward_list/operations/1.cc: Likewise.
* testsuite/forward_list/operations/2.cc: Likewise.
* testsuite/forward_list/operations/3.cc: Likewise.
* testsuite/forward_list/operations/4.cc: Likewise.
* testsuite/forward_list/operations/5.cc: Likewise.
* testsuite/forward_list/operations/6.cc: Likewise.
* testsuite/forward_list/operations/7.cc: Likewise.
* testsuite/forward_list/operations/remove_freed.cc: Likewise.
* testsuite/list/61347.cc: Likewise.
* testsuite/list/allocator/copy.cc: Likewise.
* testsuite/list/allocator/copy_assign.cc: Likewise.
* testsuite/list/allocator/minimal.cc: Likewise.
* testsuite/list/allocator/move.cc: Likewise.
* testsuite/list/allocator/move_assign.cc: Likewise.
* testsuite/list/allocator/swap.cc: Likewise.
* testsuite/list/capacity/1.h: Likewise.
* testsuite/list/capacity/29134.cc: Likewise.
* testsuite/list/capacity/resize_size.cc: Likewise.
* testsuite/list/cons/1.h: Likewise.
* testsuite/list/cons/2.h: Likewise.
* testsuite/list/cons/3.h: Likewise.
* testsuite/list/cons/4.h: Likewise.
* testsuite/list/cons/5.h: Likewise.
* testsuite/list/cons/6.h: Likewise.
* testsuite/list/cons/7.h: Likewise.
* testsuite/list/cons/8.h: Likewise.
* testsuite/list/cons/9.h: Likewise.
* testsuite/list/cons/cons_size.cc: Likewise.
* testsuite/list/cons/moveable.h: Likewise.
* testsuite/list/debug/invalidation/1.cc: Likewise.
* testsuite/list/debug/invalidation/2.cc: Likewise.
* testsuite/list/debug/invalidation/3.cc: Likewise.
* testsuite/list/debug/invalidation/4.cc: Likewise.
* testsuite/list/modifiers/1.h: Likewise.
* testsuite/list/modifiers/2.h: Likewise.
* testsuite/list/modifiers/3.h: Likewise.
* testsuite/list/modifiers/insert/25288.h: Likewise.
* testsuite/list/modifiers/swap/1.h: Likewise.
* testsuite/list/modifiers/swap/2.h: Likewise.
* testsuite/list/modifiers/swap/3.h: Likewise.
* testsuite/list/operations/1.h: Likewise.
* testsuite/list/operations/2.h: Likewise.
* testsuite/list/operations/3.h: Likewise.
* testsuite/list/operations/4.h: Likewise.
* testsuite/list/operations/42352.cc: Likewise.
* testsuite/map/allocator/copy.cc: Likewise.
* testsuite/map/allocator/copy_assign.cc: Likewise.
* testsuite/map/allocator/init-list.cc: Likewise.
* testsuite/map/allocator/minimal.cc: Likewise.
* testsuite/map/allocator/move.cc: Likewise.
* testsuite/map/allocator/move_assign.cc: Likewise.
* testsuite/map/allocator/swap.cc: Likewise.
* testsuite/map/capacity/29134.cc: Likewise.
* testsuite/map/cons/moveable.cc: Likewise.
* testsuite/map/debug/construct5_neg.cc: Likewise.
* testsuite/map/debug/move_assign_neg.cc: Likewise.
* testsuite/map/debug/move_neg.cc: Likewise.
* testsuite/map/element_access/1.cc: Likewise.
* testsuite/map/element_access/2.cc: Likewise.
* testsuite/map/element_access/39901.cc: Likewise.
* testsuite/map/init-list.cc: Likewise.
* testsuite/map/modifiers/dr130.cc: Likewise.
* testsuite/map/modifiers/emplace/1.cc: Likewise.
* testsuite/map/modifiers/extract.cc: Likewise.
* testsuite/map/modifiers/insert/1.cc: Likewise.
* testsuite/map/modifiers/insert/16813.cc: Likewise.
* testsuite/map/modifiers/insert/2.cc: Likewise.
* testsuite/map/modifiers/insert/3.cc: Likewise.
* testsuite/map/modifiers/insert/4.cc: Likewise.
* testsuite/map/modifiers/insert/5.cc: Likewise.
* testsuite/map/modifiers/insert_or_assign/1.cc: Likewise.
* testsuite/map/modifiers/merge.cc: Likewise.
* testsuite/map/modifiers/swap/1.cc: Likewise.
* testsuite/map/modifiers/swap/2.cc: Likewise.
* testsuite/map/modifiers/swap/3.cc: Likewise.
* testsuite/map/modifiers/try_emplace/1.cc: Likewise.
* testsuite/map/operations/1.cc: Likewise.
* testsuite/map/operations/count.cc: Likewise.
* testsuite/map/operators/1_neg.cc: Likewise.
* testsuite/map/operators/2.cc: Likewise.
* testsuite/multimap/allocator/copy.cc: Likewise.
* testsuite/multimap/allocator/copy_assign.cc: Likewise.
* testsuite/multimap/allocator/init-list.cc: Likewise.
* testsuite/multimap/allocator/minimal.cc: Likewise.
* testsuite/multimap/allocator/move.cc: Likewise.
* testsuite/multimap/allocator/move_assign.cc: Likewise.
* testsuite/multimap/allocator/swap.cc: Likewise.
* testsuite/multimap/capacity/29134.cc: Likewise.
* testsuite/multimap/cons/moveable.cc: Likewise.
* testsuite/multimap/debug/construct5_neg.cc: Likewise.
* testsuite/multimap/debug/move_assign_neg.cc: Likewise.
* testsuite/multimap/debug/move_neg.cc: Likewise.
* testsuite/multimap/init-list.cc: Likewise.
* testsuite/multimap/modifiers/dr130.cc: Likewise.
* testsuite/multimap/modifiers/emplace/1.cc: Likewise.
* testsuite/multimap/modifiers/extract.cc: Likewise.
* testsuite/multimap/modifiers/insert/1.cc: Likewise.
* testsuite/multimap/modifiers/insert/2.cc: Likewise.
* testsuite/multimap/modifiers/insert/22102.cc: Likewise.
* testsuite/multimap/modifiers/insert/3.cc: Likewise.
* testsuite/multimap/modifiers/insert/4.cc: Likewise.
* testsuite/multimap/modifiers/merge.cc: Likewise.
* testsuite/multimap/modifiers/swap/1.cc: Likewise.
* testsuite/multimap/modifiers/swap/2.cc: Likewise.
* testsuite/multimap/modifiers/swap/3.cc: Likewise.
* testsuite/multimap/operations/1.cc: Likewise.
* testsuite/multimap/operations/count.cc: Likewise.
* testsuite/multiset/allocator/copy.cc: Likewise.
* testsuite/multiset/allocator/copy_assign.cc: Likewise.
* testsuite/multiset/allocator/init-list.cc: Likewise.
* testsuite/multiset/allocator/minimal.cc: Likewise.
* testsuite/multiset/allocator/move.cc: Likewise.
* testsuite/multiset/allocator/move_assign.cc: Likewise.
* testsuite/multiset/allocator/swap.cc: Likewise.
* testsuite/multiset/capacity/29134.cc: Likewise.
* testsuite/multiset/cons/moveable.cc: Likewise.
* testsuite/multiset/debug/construct5_neg.cc: Likewise.
* testsuite/multiset/debug/invalidation/2.cc: Likewise.
* testsuite/multiset/debug/move_assign_neg.cc: Likewise.
* testsuite/multiset/debug/move_neg.cc: Likewise.
* testsuite/multiset/init-list.cc: Likewise.
* testsuite/multiset/modifiers/dr130.cc: Likewise.
* testsuite/multiset/modifiers/emplace/1.cc: Likewise.
* testsuite/multiset/modifiers/extract.cc: Likewise.
* testsuite/multiset/modifiers/insert/1.cc: Likewise.
* testsuite/multiset/modifiers/insert/2.cc: Likewise.
* testsuite/multiset/modifiers/insert/22102.cc: Likewise.
* testsuite/multiset/modifiers/insert/3.cc: Likewise.
* testsuite/multiset/modifiers/insert/4.cc: Likewise.
* testsuite/multiset/modifiers/merge.cc: Likewise.
* testsuite/multiset/modifiers/swap/1.cc: Likewise.
* testsuite/multiset/modifiers/swap/2.cc: Likewise.
* testsuite/multiset/modifiers/swap/3.cc: Likewise.
* testsuite/multiset/operations/1.cc: Likewise.
* testsuite/multiset/operations/count.cc: Likewise.
* testsuite/priority_queue/moveable.cc: Likewise.
* testsuite/queue/moveable.cc: Likewise.
* testsuite/set/allocator/copy.cc: Likewise.
* testsuite/set/allocator/copy_assign.cc: Likewise.
* testsuite/set/allocator/init-list.cc: Likewise.
* testsuite/set/allocator/minimal.cc: Likewise.
* testsuite/set/allocator/move.cc: Likewise.
* testsuite/set/allocator/move_assign.cc: Likewise.
* testsuite/set/allocator/swap.cc: Likewise.
* testsuite/set/capacity/29134.cc: Likewise.
* testsuite/set/cons/moveable.cc: Likewise.
* testsuite/set/debug/construct5_neg.cc: Likewise.
* testsuite/set/debug/invalidation/2.cc: Likewise.
* testsuite/set/debug/move_assign_neg.cc: Likewise.
* testsuite/set/debug/move_neg.cc: Likewise.
* testsuite/set/init-list.cc: Likewise.
* testsuite/set/modifiers/17948.cc: Likewise.
* testsuite/set/modifiers/dr130.cc: Likewise.
* testsuite/set/modifiers/emplace/1.cc: Likewise.
* testsuite/set/modifiers/extract.cc: Likewise.
* testsuite/set/modifiers/insert/1.cc: Likewise.
* testsuite/set/modifiers/insert/2.cc: Likewise.
* testsuite/set/modifiers/insert/3.cc: Likewise.
* testsuite/set/modifiers/merge.cc: Likewise.
* testsuite/set/modifiers/swap/1.cc: Likewise.
* testsuite/set/modifiers/swap/2.cc: Likewise.
* testsuite/set/modifiers/swap/3.cc: Likewise.
* testsuite/set/operations/1.cc: Likewise.
* testsuite/set/operations/count.cc: Likewise.
* testsuite/set/operators/1_neg.cc: Likewise.
* testsuite/unordered_map/allocator/copy.cc: Likewise.
* testsuite/unordered_map/allocator/copy_assign.cc: Likewise.
* testsuite/unordered_map/allocator/minimal.cc: Likewise.
* testsuite/unordered_map/allocator/move.cc: Likewise.
* testsuite/unordered_map/allocator/move_assign.cc: Likewise.
* testsuite/unordered_map/allocator/swap.cc: Likewise.
* testsuite/unordered_map/cons/moveable.cc: Likewise.
* testsuite/unordered_map/debug/construct5_neg.cc: Likewise.
* testsuite/unordered_map/debug/move_assign_neg.cc: Likewise.
* testsuite/unordered_map/debug/move_neg.cc: Likewise.
* testsuite/unordered_map/dr761.cc: Likewise.
* testsuite/unordered_map/erase/1.cc: Likewise.
* testsuite/unordered_map/erase/24061-map.cc: Likewise.
* testsuite/unordered_map/erase/54276.cc: Likewise.
* testsuite/unordered_map/hash_policy/dr1189.cc: Likewise.
* testsuite/unordered_map/init-list.cc: Likewise.
* testsuite/unordered_map/insert/24061-map.cc: Likewise.
* testsuite/unordered_map/insert/57619.C: Likewise.
* testsuite/unordered_map/insert/array_syntax.cc: Likewise.
* testsuite/unordered_map/insert/array_syntax_move.cc: Likewise.
* testsuite/unordered_map/insert/map_range.cc: Likewise.
* testsuite/unordered_map/insert/map_single.cc: Likewise.
* testsuite/unordered_map/insert/map_single_move-1.cc: Likewise.
* testsuite/unordered_map/insert/map_single_move-2.cc: Likewise.
* testsuite/unordered_map/modifiers/61667.cc: Likewise.
* testsuite/unordered_map/modifiers/emplace.cc: Likewise.
* testsuite/unordered_map/modifiers/extract.cc: Likewise.
* testsuite/unordered_map/modifiers/insert_or_assign.cc: Likewise.
* testsuite/unordered_map/modifiers/merge.cc: Likewise.
* testsuite/unordered_map/modifiers/reserve.cc: Likewise.
* testsuite/unordered_map/modifiers/try_emplace.cc: Likewise.
* testsuite/unordered_map/operations/count.cc: Likewise.
* testsuite/unordered_map/operators/1.cc: Likewise.
* testsuite/unordered_map/operators/2.cc: Likewise.
* testsuite/unordered_multimap/allocator/copy.cc: Likewise.
* testsuite/unordered_multimap/allocator/copy_assign.cc: Likewise.
* testsuite/unordered_multimap/allocator/minimal.cc: Likewise.
* testsuite/unordered_multimap/allocator/move.cc: Likewise.
* testsuite/unordered_multimap/allocator/move_assign.cc: Likewise.
* testsuite/unordered_multimap/allocator/swap.cc: Likewise.
* testsuite/unordered_multimap/cons/moveable.cc: Likewise.
* testsuite/unordered_multimap/debug/construct5_neg.cc: Likewise.
* testsuite/unordered_multimap/debug/move_assign_neg.cc: Likewise.
* testsuite/unordered_multimap/debug/move_neg.cc: Likewise.
* testsuite/unordered_multimap/erase/1.cc: Likewise.
* testsuite/unordered_multimap/erase/2.cc: Likewise.
* testsuite/unordered_multimap/erase/24061-multimap.cc: Likewise.
* testsuite/unordered_multimap/erase/51845-multimap.cc: Likewise.
* testsuite/unordered_multimap/erase/54276.cc: Likewise.
* testsuite/unordered_multimap/hash_policy/dr1189.cc: Likewise.
* testsuite/unordered_multimap/init-list.cc: Likewise.
* testsuite/unordered_multimap/insert/24061-multimap.cc: Likewise.
* testsuite/unordered_multimap/insert/51866.cc: Likewise.
* testsuite/unordered_multimap/insert/52476.cc: Likewise.
* testsuite/unordered_multimap/insert/53115.cc: Likewise.
* testsuite/unordered_multimap/insert/57619.C: Likewise.
* testsuite/unordered_multimap/insert/hint.cc: Likewise.
* testsuite/unordered_multimap/insert/multimap_range.cc: Likewise.
* testsuite/unordered_multimap/insert/multimap_single.cc: Likewise.
* testsuite/unordered_multimap/insert/multimap_single_move-1.cc:
Likewise.
* testsuite/unordered_multimap/insert/multimap_single_move-2.cc:
Likewise.
* testsuite/unordered_multimap/modifiers/emplace.cc: Likewise.
* testsuite/unordered_multimap/modifiers/extract.cc: Likewise.
* testsuite/unordered_multimap/modifiers/merge.cc: Likewise.
* testsuite/unordered_multimap/modifiers/reserve.cc: Likewise.
* testsuite/unordered_multimap/operations/count.cc: Likewise.
* testsuite/unordered_multimap/operators/1.cc: Likewise.
* testsuite/unordered_multimap/operators/2.cc: Likewise.
* testsuite/unordered_multiset/allocator/copy.cc: Likewise.
* testsuite/unordered_multiset/allocator/copy_assign.cc: Likewise.
* testsuite/unordered_multiset/allocator/minimal.cc: Likewise.
* testsuite/unordered_multiset/allocator/move.cc: Likewise.
* testsuite/unordered_multiset/allocator/move_assign.cc: Likewise.
* testsuite/unordered_multiset/allocator/swap.cc: Likewise.
* testsuite/unordered_multiset/cons/copy.cc: Likewise.
* testsuite/unordered_multiset/cons/moveable.cc: Likewise.
* testsuite/unordered_multiset/debug/construct5_neg.cc: Likewise.
* testsuite/unordered_multiset/debug/move_assign_neg.cc: Likewise.
* testsuite/unordered_multiset/debug/move_neg.cc: Likewise.
* testsuite/unordered_multiset/erase/1.cc: Likewise.
* testsuite/unordered_multiset/erase/2.cc: Likewise.
* testsuite/unordered_multiset/erase/24061-multiset.cc: Likewise.
* testsuite/unordered_multiset/hash_policy/dr1189.cc: Likewise.
* testsuite/unordered_multiset/init-list.cc: Likewise.
* testsuite/unordered_multiset/insert/24061-multiset.cc: Likewise.
* testsuite/unordered_multiset/insert/51866.cc: Likewise.
* testsuite/unordered_multiset/insert/52476.cc: Likewise.
* testsuite/unordered_multiset/insert/53115.cc: Likewise.
* testsuite/unordered_multiset/insert/hash_policy.cc: Likewise.
* testsuite/unordered_multiset/insert/multiset_range.cc: Likewise.
* testsuite/unordered_multiset/insert/multiset_single.cc: Likewise.
* testsuite/unordered_multiset/insert/multiset_single_move.cc: Likewise.
* testsuite/unordered_multiset/modifiers/emplace.cc: Likewise.
* testsuite/unordered_multiset/modifiers/extract.cc: Likewise.
* testsuite/unordered_multiset/modifiers/merge.cc: Likewise.
* testsuite/unordered_multiset/modifiers/reserve.cc: Likewise.
* testsuite/unordered_multiset/operations/count.cc: Likewise.
* testsuite/unordered_multiset/operators/1.cc: Likewise.
* testsuite/unordered_set/allocator/copy.cc: Likewise.
* testsuite/unordered_set/allocator/copy_assign.cc: Likewise.
* testsuite/unordered_set/allocator/ext_ptr.cc: Likewise.
* testsuite/unordered_set/allocator/minimal.cc: Likewise.
* testsuite/unordered_set/allocator/move.cc: Likewise.
* testsuite/unordered_set/allocator/move_assign.cc: Likewise.
* testsuite/unordered_set/allocator/swap.cc: Likewise.
* testsuite/unordered_set/buckets/swap.cc: Likewise.
* testsuite/unordered_set/cons/moveable.cc: Likewise.
* testsuite/unordered_set/debug/construct5_neg.cc: Likewise.
* testsuite/unordered_set/debug/debug_functions.cc: Likewise.
* testsuite/unordered_set/debug/move_assign_neg.cc: Likewise.
* testsuite/unordered_set/debug/move_neg.cc: Likewise.
* testsuite/unordered_set/erase/1.cc: Likewise.
* testsuite/unordered_set/erase/24061-set.cc: Likewise.
* testsuite/unordered_set/hash_policy/26132.cc: Likewise.
* testsuite/unordered_set/hash_policy/71181.cc: Likewise.
* testsuite/unordered_set/hash_policy/dr1189.cc: Likewise.
* testsuite/unordered_set/hash_policy/load_factor.cc: Likewise.
* testsuite/unordered_set/hash_policy/power2_rehash.cc: Likewise.
* testsuite/unordered_set/hash_policy/prime_rehash.cc: Likewise.
* testsuite/unordered_set/hash_policy/rehash.cc: Likewise.
* testsuite/unordered_set/init-list.cc: Likewise.
* testsuite/unordered_set/insert/24061-set.cc: Likewise.
* testsuite/unordered_set/insert/hash_policy.cc: Likewise.
* testsuite/unordered_set/insert/move_range.cc: Likewise.
* testsuite/unordered_set/insert/set_range.cc: Likewise.
* testsuite/unordered_set/insert/set_single.cc: Likewise.
* testsuite/unordered_set/insert/set_single_move.cc: Likewise.
* testsuite/unordered_set/max_load_factor/robustness.cc: Likewise.
* testsuite/unordered_set/modifiers/emplace.cc: Likewise.
* testsuite/unordered_set/modifiers/extract.cc: Likewise.
* testsuite/unordered_set/modifiers/merge.cc: Likewise.
* testsuite/unordered_set/modifiers/reserve.cc: Likewise.
* testsuite/unordered_set/modifiers/swap.cc: Likewise.
* testsuite/unordered_set/operations/count.cc: Likewise.
* testsuite/unordered_set/operators/1.cc: Likewise.
* testsuite/vector/allocator/copy.cc: Likewise.
* testsuite/vector/allocator/copy_assign.cc: Likewise.
* testsuite/vector/allocator/ext_ptr.cc: Likewise.
* testsuite/vector/allocator/minimal.cc: Likewise.
* testsuite/vector/allocator/move.cc: Likewise.
* testsuite/vector/allocator/move_assign.cc: Likewise.
* testsuite/vector/allocator/swap.cc: Likewise.
* testsuite/vector/bool/6886.cc: Likewise.
* testsuite/vector/bool/72847.cc: Likewise.
* testsuite/vector/bool/allocator/copy.cc: Likewise.
* testsuite/vector/bool/allocator/copy_assign.cc: Likewise.
* testsuite/vector/bool/allocator/ext_ptr.cc: Likewise.
* testsuite/vector/bool/allocator/move.cc: Likewise.
* testsuite/vector/bool/allocator/move_assign.cc: Likewise.
* testsuite/vector/bool/allocator/swap.cc: Likewise.
* testsuite/vector/bool/capacity/1.cc: Likewise.
* testsuite/vector/bool/capacity/29134.cc: Likewise.
* testsuite/vector/bool/capacity/shrink_to_fit.cc: Likewise.
* testsuite/vector/bool/cons/1.cc: Likewise.
* testsuite/vector/bool/cons/2.cc: Likewise.
* testsuite/vector/bool/modifiers/erase/1.cc: Likewise.
* testsuite/vector/bool/modifiers/insert/1.cc: Likewise.
* testsuite/vector/bool/modifiers/insert/31370.cc: Likewise.
* testsuite/vector/bool/modifiers/swap/1.cc: Likewise.
* testsuite/vector/bool/modifiers/swap/2.cc: Likewise.
* testsuite/vector/bool/swap.cc: Likewise.
* testsuite/vector/capacity/1.cc: Likewise.
* testsuite/vector/capacity/2.cc: Likewise.
* testsuite/vector/capacity/29134-2.cc: Likewise.
* testsuite/vector/capacity/29134.cc: Likewise.
* testsuite/vector/capacity/44190.cc: Likewise.
* testsuite/vector/capacity/8230.cc: Likewise.
* testsuite/vector/capacity/reserve/moveable.cc: Likewise.
* testsuite/vector/capacity/reserve/moveable2.cc: Likewise.
* testsuite/vector/capacity/resize/1.cc: Likewise.
* testsuite/vector/capacity/resize/moveable.cc: Likewise.
* testsuite/vector/capacity/resize/moveable2.cc: Likewise.
* testsuite/vector/capacity/resize/resize_size.cc: Likewise.
* testsuite/vector/capacity/shrink_to_fit.cc: Likewise.
* testsuite/vector/capacity/shrink_to_fit2.cc: Likewise.
* testsuite/vector/cons/3.cc: Likewise.
* testsuite/vector/cons/4.cc: Likewise.
* testsuite/vector/cons/cons_size.cc: Likewise.
* testsuite/vector/cons/moveable.cc: Likewise.
* testsuite/vector/data_access/1.cc: Likewise.
* testsuite/vector/debug/debug_functions.cc: Likewise.
* testsuite/vector/debug/move_assign_neg.cc: Likewise.
* testsuite/vector/debug/move_neg.cc: Likewise.
* testsuite/vector/debug/multithreaded_swap.cc: Likewise.
* testsuite/vector/element_access/1.cc: Likewise.
* testsuite/vector/ext_pointer/citerators.cc: Likewise.
* testsuite/vector/ext_pointer/data_access.cc: Likewise.
* testsuite/vector/ext_pointer/modifiers/element.cc: Likewise.
* testsuite/vector/ext_pointer/modifiers/erase.cc: Likewise.
* testsuite/vector/ext_pointer/modifiers/insert.cc: Likewise.
* testsuite/vector/ext_pointer/resize.cc: Likewise.
* testsuite/vector/modifiers/1.cc: Likewise.
* testsuite/vector/modifiers/2.cc: Likewise.
* testsuite/vector/modifiers/emplace/self_emplace.cc: Likewise.
* testsuite/vector/modifiers/erase/1.cc: Likewise.
* testsuite/vector/modifiers/erase/moveable.cc: Likewise.
* testsuite/vector/modifiers/insert/1.cc: Likewise.
* testsuite/vector/modifiers/insert/self_insert.cc: Likewise.
* testsuite/vector/modifiers/moveable.cc: Likewise.
* testsuite/vector/modifiers/moveable2.cc: Likewise.
* testsuite/vector/modifiers/push_back/49836.cc: Likewise.
* testsuite/vector/modifiers/swap/1.cc: Likewise.
* testsuite/vector/modifiers/swap/2.cc: Likewise.
* testsuite/vector/modifiers/swap/3.cc: Likewise.
* testsuite/vector/zero_sized_allocations.cc: Likewise.
From-SVN: r241241
Marek Polacek [Mon, 17 Oct 2016 13:04:38 +0000 (13:04 +0000)]
Makefile.in (C_COMMON_OBJS): Add c-family/c-attribs.o.
* Makefile.in (C_COMMON_OBJS): Add c-family/c-attribs.o.
* c-attribs.c: New file.
* c-common.c: Move attributes handling to c-attribs.c.
(get_nonnull_operand): No longer static.
* c-common.h: Move the declarations from c-attribs.c to its own section.
From-SVN: r241238
Richard Biener [Mon, 17 Oct 2016 12:27:48 +0000 (12:27 +0000)]
bb-reorder.c (reorder_basic_blocks_simple): Clear BB_VISITED before using it.
2016-10-17 Richard Biener <rguenther@suse.de>
* bb-reorder.c (reorder_basic_blocks_simple): Clear BB_VISITED
before using it.
From-SVN: r241237
Jonathan Wakely [Mon, 17 Oct 2016 12:23:09 +0000 (13:23 +0100)]
PR77998 Remove std::thread::_Invoker::result_type
PR libstdc++/77998
* include/std/future (__future_base::_Deferred_state)
(__future_base::_Async_state_impl): Use decltype to deduce return
type, instead of _Invoker::result_type.
* include/std/thread (thread::_Invoker::operator()): Likewise.
(thread::_Invoker::result_type): Remove.
From-SVN: r241236
Jonathan Wakely [Mon, 17 Oct 2016 12:00:44 +0000 (13:00 +0100)]
PR77987 Fix unique_ptr<T[], D>::reset(U) for T != U
PR libstdc++/77987
* include/bits/unique_ptr.h (unique_ptr<T[], D>::reset<U>(U)): Copy
value to pointer of the correct type to swap, to support conversions
allowed by LWG 2118 / N4089.
* testsuite/20_util/unique_ptr/assign/assign_neg.cc: Move test for
incompatible deleters from ...
* testsuite/20_util/unique_ptr/assign/cv_qual.cc: ... here.
* testsuite/20_util/unique_ptr/modifiers/cv_qual.cc: Move tests for
incompatible pointers to ...
* testsuite/20_util/unique_ptr/modifiers/reset_neg.cc: ... here. Move
destructor definition to base class. Test for invalid derived-to-base
conversion.
From-SVN: r241235
Jonathan Wakely [Mon, 17 Oct 2016 12:00:38 +0000 (13:00 +0100)]
Implement P0084R2, Emplace return type, for C++17
* doc/xml/manual/status_cxx2017.xml: Update status.
* doc/html/*: Regenerate.
* include/bits/deque.tcc (deque::emplace_front, deque::emplace_back):
Return a reference in C++17 mode.
* include/bits/forward_list.h (forward_list::emplace_front): Likewise.
* include/bits/stl_bvector.h (vector<bool>::emplace_back): Likewise.
* include/bits/stl_deque.h (deque::emplace_front, deque::emplace_back):
Likewise.
* include/bits/stl_list.h (list::emplace_front, list::emplace_back):
Likewise.
* include/bits/stl_queue.h (queue::emplace): Likewise.
* include/bits/stl_stack.h (stack::emplace): Likewise.
* include/bits/stl_vector.h (vector::emplace_back): Likewise.
* include/bits/vector.tcc (vector::emplace_back): Likewise.
* include/debug/deque (__gnu_debug::deque::emplace_front)
(__gnu_debug::deque::emplace_back): Likewise.
* include/debug/vector (__gnu_debug::vector::emplace_back): Likewise.
* testsuite/23_containers/deque/modifiers/emplace/cxx17_return.cc:
New.
* testsuite/23_containers/forward_list/modifiers/
emplace_cxx17_return.cc: New.
* testsuite/23_containers/list/modifiers/emplace/cxx17_return.cc: New.
* testsuite/23_containers/queue/members/emplace_cxx17_return.cc: New.
* testsuite/23_containers/stack/members/emplace_cxx17_return.cc: New.
* testsuite/23_containers/vector/bool/emplace_cxx17_return.cc: New.
* testsuite/23_containers/vector/modifiers/emplace/cxx17_return.cc:
New.
From-SVN: r241234
Eric Botcazou [Mon, 17 Oct 2016 08:52:32 +0000 (08:52 +0000)]
system-darwin-ppc64.ads (Support_64_Bit_Divides): Delete.
* system-darwin-ppc64.ads (Support_64_Bit_Divides): Delete.
* system-linux-armeb.ads (Support_64_Bit_Divides): Likewise.
* system-linux-mips.ads (Support_64_Bit_Divides): Likewise.
* system-linux-mips64el.ads (Support_64_Bit_Divides): Likewise.
* system-linux-mipsel.ads (Support_64_Bit_Divides): Likewise.
* system-linux-sparcv9.ads (Support_64_Bit_Divides): Likewise.
* system-rtems.ads (Support_64_Bit_Divides): Likewise.
From-SVN: r241230
Prathamesh Kulkarni [Mon, 17 Oct 2016 08:48:43 +0000 (08:48 +0000)]
re PR tree-optimization/71636 (Missed optimization in variable alignment test)
2016-10-17 Prathamesh Kulkarni <prathamesh.kulkarni@linaro.org>
PR tree-optimization/71636
* match.pd (x & ((1 << b) - 1) -> x & ~(~0 << b)): New pattern.
testsuite/
* gcc.dg/pr71636-1.c: New test-case.
* gcc.dg/pr71636-2.c: Likewise.
From-SVN: r241229
Richard Biener [Mon, 17 Oct 2016 07:28:57 +0000 (07:28 +0000)]
gimplify.c (gimplify_function_tree): Do not move the outer binds block.
2016-10-17 Richard Biener <rguenther@suse.de>
* gimplify.c (gimplify_function_tree): Do not move the outer
binds block.
From-SVN: r241228
Jakub Jelinek [Mon, 17 Oct 2016 06:53:00 +0000 (08:53 +0200)]
langhooks.h (struct lang_hooks_for_decls): Remove function_decl_explicit_p...
* langhooks.h (struct lang_hooks_for_decls): Remove
function_decl_explicit_p, function_decl_deleted_p and
function_decl_defaulted hooks. Add decl_dwarf_attribute hook.
* langhooks-def.h (lhd_decl_dwarf_attribute): Declare.
(LANG_HOOKS_FUNCTION_DECL_EXPLICIT_P,
LANG_HOOKS_FUNCTION_DECL_DELETED_P,
LANG_HOOKS_FUNCTION_DECL_DEFAULTED): Remove.
(LANG_HOOKS_DECL_DWARF_ATTRIBUTE): Define.
(LANG_HOOKS_DECLS): Remove LANG_HOOKS_FUNCTION_DECL_EXPLICIT_P,
LANG_HOOKS_FUNCTION_DECL_DELETED_P and
LANG_HOOKS_FUNCTION_DECL_DEFAULTED. Add
LANG_HOOKS_DECL_DWARF_ATTRIBUTE.
* langhooks.c (lhd_decl_dwarf_attribute): New function.
* dwarf2out.c (gen_subprogram_die): Use
lang_hooks.decls.decl_dwarf_attribute instead of
lang_hooks.decls.function_decl_*.
cp/
* cp-objcp-common.h (cp_function_decl_explicit_p,
cp_function_decl_deleted_p, cp_function_decl_defaulted): Remove.
(cp_decl_dwarf_attribute): Declare.
(LANG_HOOKS_FUNCTION_DECL_EXPLICIT_P,
LANG_HOOKS_FUNCTION_DECL_DELETED_P,
LANG_HOOKS_FUNCTION_DECL_DEFAULTED): Remove.
(LANG_HOOKS_DECL_DWARF_ATTRIBUTE): Redefine.
* cp-objcp-common.c (cp_function_decl_explicit_p,
cp_function_decl_deleted_p, cp_function_decl_defaulted): Remove.
(cp_decl_dwarf_attribute): New function.
From-SVN: r241227
GCC Administrator [Mon, 17 Oct 2016 00:16:14 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r241226
Paolo Carlini [Mon, 17 Oct 2016 00:02:57 +0000 (00:02 +0000)]
isblank.cc: Remove 'test' variables.
2016-10-16 Paolo Carlini <paolo.carlini@oracle.com>
* testsuite/22_locale/classification/isblank.cc: Remove 'test'
variables.
* testsuite/22_locale/codecvt/always_noconv/char/1.cc: Likewise.
* testsuite/22_locale/codecvt/always_noconv/wchar_t/1.cc: Likewise.
* testsuite/22_locale/codecvt/always_noconv/wchar_t/2.cc: Likewise.
* testsuite/22_locale/codecvt/always_noconv/wchar_t/3.cc: Likewise.
* testsuite/22_locale/codecvt/always_noconv/wchar_t/4.cc: Likewise.
* testsuite/22_locale/codecvt/codecvt_utf8/69703.cc: Likewise.
* testsuite/22_locale/codecvt/encoding/char/1.cc: Likewise.
* testsuite/22_locale/codecvt/encoding/wchar_t/1.cc: Likewise.
* testsuite/22_locale/codecvt/encoding/wchar_t/2.cc: Likewise.
* testsuite/22_locale/codecvt/encoding/wchar_t/3.cc: Likewise.
* testsuite/22_locale/codecvt/encoding/wchar_t/4.cc: Likewise.
* testsuite/22_locale/codecvt/in/char/1.cc: Likewise.
* testsuite/22_locale/codecvt/in/wchar_t/1.cc: Likewise.
* testsuite/22_locale/codecvt/in/wchar_t/2.cc: Likewise.
* testsuite/22_locale/codecvt/in/wchar_t/3.cc: Likewise.
* testsuite/22_locale/codecvt/in/wchar_t/4.cc: Likewise.
* testsuite/22_locale/codecvt/in/wchar_t/5.cc: Likewise.
* testsuite/22_locale/codecvt/in/wchar_t/6.cc: Likewise.
* testsuite/22_locale/codecvt/in/wchar_t/7.cc: Likewise.
* testsuite/22_locale/codecvt/in/wchar_t/8.cc: Likewise.
* testsuite/22_locale/codecvt/in/wchar_t/9.cc: Likewise.
* testsuite/22_locale/codecvt/length/char/1.cc: Likewise.
* testsuite/22_locale/codecvt/length/char/2.cc: Likewise.
* testsuite/22_locale/codecvt/length/wchar_t/1.cc: Likewise.
* testsuite/22_locale/codecvt/length/wchar_t/2.cc: Likewise.
* testsuite/22_locale/codecvt/length/wchar_t/3.cc: Likewise.
* testsuite/22_locale/codecvt/length/wchar_t/4.cc: Likewise.
* testsuite/22_locale/codecvt/length/wchar_t/5.cc: Likewise.
* testsuite/22_locale/codecvt/length/wchar_t/6.cc: Likewise.
* testsuite/22_locale/codecvt/length/wchar_t/7.cc: Likewise.
* testsuite/22_locale/codecvt/max_length/char/1.cc: Likewise.
* testsuite/22_locale/codecvt/max_length/wchar_t/1.cc: Likewise.
* testsuite/22_locale/codecvt/max_length/wchar_t/2.cc: Likewise.
* testsuite/22_locale/codecvt/max_length/wchar_t/3.cc: Likewise.
* testsuite/22_locale/codecvt/max_length/wchar_t/4.cc: Likewise.
* testsuite/22_locale/codecvt/out/char/1.cc: Likewise.
* testsuite/22_locale/codecvt/out/wchar_t/1.cc: Likewise.
* testsuite/22_locale/codecvt/out/wchar_t/2.cc: Likewise.
* testsuite/22_locale/codecvt/out/wchar_t/3.cc: Likewise.
* testsuite/22_locale/codecvt/out/wchar_t/4.cc: Likewise.
* testsuite/22_locale/codecvt/out/wchar_t/5.cc: Likewise.
* testsuite/22_locale/codecvt/out/wchar_t/6.cc: Likewise.
* testsuite/22_locale/codecvt/out/wchar_t/7.cc: Likewise.
* testsuite/22_locale/codecvt/unshift/char/1.cc: Likewise.
* testsuite/22_locale/codecvt/unshift/wchar_t/1.cc: Likewise.
* testsuite/22_locale/codecvt/unshift/wchar_t/2.cc: Likewise.
* testsuite/22_locale/codecvt/unshift/wchar_t/3.cc: Likewise.
* testsuite/22_locale/codecvt/unshift/wchar_t/4.cc: Likewise.
* testsuite/22_locale/collate/compare/char/1.cc: Likewise.
* testsuite/22_locale/collate/compare/char/2.cc: Likewise.
* testsuite/22_locale/collate/compare/char/3.cc: Likewise.
* testsuite/22_locale/collate/compare/wchar_t/1.cc: Likewise.
* testsuite/22_locale/collate/compare/wchar_t/2.cc: Likewise.
* testsuite/22_locale/collate/compare/wchar_t/3.cc: Likewise.
* testsuite/22_locale/collate/hash/char/1.cc: Likewise.
* testsuite/22_locale/collate/hash/char/2.cc: Likewise.
* testsuite/22_locale/collate/hash/wchar_t/1.cc: Likewise.
* testsuite/22_locale/collate/hash/wchar_t/2.cc: Likewise.
* testsuite/22_locale/collate/transform/char/2.cc: Likewise.
* testsuite/22_locale/collate/transform/char/28277.cc: Likewise.
* testsuite/22_locale/collate/transform/char/3.cc: Likewise.
* testsuite/22_locale/collate/transform/wchar_t/2.cc: Likewise.
* testsuite/22_locale/collate/transform/wchar_t/28277.cc: Likewise.
* testsuite/22_locale/collate/transform/wchar_t/3.cc: Likewise.
* testsuite/22_locale/collate_byname/named_equivalence.cc: Likewise.
* testsuite/22_locale/ctype/cons/char/1.cc: Likewise.
* testsuite/22_locale/ctype/is/char/1.cc: Likewise.
* testsuite/22_locale/ctype/is/char/2.cc: Likewise.
* testsuite/22_locale/ctype/is/char/3.cc: Likewise.
* testsuite/22_locale/ctype/is/char/9858.cc: Likewise.
* testsuite/22_locale/ctype/is/wchar_t/1.cc: Likewise.
* testsuite/22_locale/ctype/is/wchar_t/11740.cc: Likewise.
* testsuite/22_locale/ctype/is/wchar_t/2.cc: Likewise.
* testsuite/22_locale/ctype/narrow/char/1.cc: Likewise.
* testsuite/22_locale/ctype/narrow/char/19955.cc: Likewise.
* testsuite/22_locale/ctype/narrow/char/2.cc: Likewise.
* testsuite/22_locale/ctype/narrow/wchar_t/1.cc: Likewise.
* testsuite/22_locale/ctype/narrow/wchar_t/2.cc: Likewise.
* testsuite/22_locale/ctype/narrow/wchar_t/3.cc: Likewise.
* testsuite/22_locale/ctype/scan/char/1.cc: Likewise.
* testsuite/22_locale/ctype/scan/wchar_t/1.cc: Likewise.
* testsuite/22_locale/ctype/to/char/1.cc: Likewise.
* testsuite/22_locale/ctype/to/wchar_t/1.cc: Likewise.
* testsuite/22_locale/ctype/widen/char/1.cc: Likewise.
* testsuite/22_locale/ctype/widen/wchar_t/1.cc: Likewise.
* testsuite/22_locale/ctype/widen/wchar_t/2.cc: Likewise.
* testsuite/22_locale/ctype/widen/wchar_t/3.cc: Likewise.
* testsuite/22_locale/ctype_base/11844.cc: Likewise.
* testsuite/22_locale/facet/1.cc: Likewise.
* testsuite/22_locale/facet/2.cc: Likewise.
* testsuite/22_locale/facet/25421.cc: Likewise.
* testsuite/22_locale/global_templates/1.cc: Likewise.
* testsuite/22_locale/global_templates/standard_facet_hierarchies.cc:
Likewise.
* testsuite/22_locale/global_templates/user_facet_hierarchies.cc:
Likewise.
* testsuite/22_locale/locale/13630.cc: Likewise.
* testsuite/22_locale/locale/cons/12352.cc: Likewise.
* testsuite/22_locale/locale/cons/12438.cc: Likewise.
* testsuite/22_locale/locale/cons/2.cc: Likewise.
* testsuite/22_locale/locale/cons/29217.cc: Likewise.
* testsuite/22_locale/locale/cons/38365.cc: Likewise.
* testsuite/22_locale/locale/cons/38368.cc: Likewise.
* testsuite/22_locale/locale/cons/4.cc: Likewise.
* testsuite/22_locale/locale/cons/40184.cc: Likewise.
* testsuite/22_locale/locale/cons/5.cc: Likewise.
* testsuite/22_locale/locale/cons/6.cc: Likewise.
* testsuite/22_locale/locale/cons/7.cc: Likewise.
* testsuite/22_locale/locale/cons/7222-c.cc: Likewise.
* testsuite/22_locale/locale/cons/7222-env.cc: Likewise.
* testsuite/22_locale/locale/cons/8.cc: Likewise.
* testsuite/22_locale/locale/cons/unicode.cc: Likewise.
* testsuite/22_locale/locale/global_locale_objects/1.cc: Likewise.
* testsuite/22_locale/locale/global_locale_objects/14071.cc: Likewise.
* testsuite/22_locale/locale/global_locale_objects/2.cc: Likewise.
* testsuite/22_locale/locale/global_locale_objects/3.cc: Likewise.
* testsuite/22_locale/locale/operations/1.cc: Likewise.
* testsuite/22_locale/locale/operations/2.cc: Likewise.
* testsuite/22_locale/messages/13631.cc: Likewise.
* testsuite/22_locale/messages/members/char/1.cc: Likewise.
* testsuite/22_locale/messages/members/char/2.cc: Likewise.
* testsuite/22_locale/messages/members/char/3.cc: Likewise.
* testsuite/22_locale/messages_byname/named_equivalence.cc: Likewise.
* testsuite/22_locale/money_get/get/char/1.cc: Likewise.
* testsuite/22_locale/money_get/get/char/10.cc: Likewise.
* testsuite/22_locale/money_get/get/char/11.cc: Likewise.
* testsuite/22_locale/money_get/get/char/11528.cc: Likewise.
* testsuite/22_locale/money_get/get/char/12.cc: Likewise.
* testsuite/22_locale/money_get/get/char/13.cc: Likewise.
* testsuite/22_locale/money_get/get/char/14.cc: Likewise.
* testsuite/22_locale/money_get/get/char/15.cc: Likewise.
* testsuite/22_locale/money_get/get/char/16.cc: Likewise.
* testsuite/22_locale/money_get/get/char/17.cc: Likewise.
* testsuite/22_locale/money_get/get/char/18.cc: Likewise.
* testsuite/22_locale/money_get/get/char/19.cc: Likewise.
* testsuite/22_locale/money_get/get/char/2.cc: Likewise.
* testsuite/22_locale/money_get/get/char/22131.cc: Likewise.
* testsuite/22_locale/money_get/get/char/3.cc: Likewise.
* testsuite/22_locale/money_get/get/char/38399.cc: Likewise.
* testsuite/22_locale/money_get/get/char/39168.cc: Likewise.
* testsuite/22_locale/money_get/get/char/4.cc: Likewise.
* testsuite/22_locale/money_get/get/char/5.cc: Likewise.
* testsuite/22_locale/money_get/get/char/6.cc: Likewise.
* testsuite/22_locale/money_get/get/char/7.cc: Likewise.
* testsuite/22_locale/money_get/get/char/8.cc: Likewise.
* testsuite/22_locale/money_get/get/wchar_t/1.cc: Likewise.
* testsuite/22_locale/money_get/get/wchar_t/10.cc: Likewise.
* testsuite/22_locale/money_get/get/wchar_t/11.cc: Likewise.
* testsuite/22_locale/money_get/get/wchar_t/11528.cc: Likewise.
* testsuite/22_locale/money_get/get/wchar_t/12.cc: Likewise.
* testsuite/22_locale/money_get/get/wchar_t/13.cc: Likewise.
* testsuite/22_locale/money_get/get/wchar_t/14.cc: Likewise.
* testsuite/22_locale/money_get/get/wchar_t/15.cc: Likewise.
* testsuite/22_locale/money_get/get/wchar_t/16.cc: Likewise.
* testsuite/22_locale/money_get/get/wchar_t/17.cc: Likewise.
* testsuite/22_locale/money_get/get/wchar_t/18.cc: Likewise.
* testsuite/22_locale/money_get/get/wchar_t/19.cc: Likewise.
* testsuite/22_locale/money_get/get/wchar_t/2.cc: Likewise.
* testsuite/22_locale/money_get/get/wchar_t/22131.cc: Likewise.
* testsuite/22_locale/money_get/get/wchar_t/3.cc: Likewise.
* testsuite/22_locale/money_get/get/wchar_t/38399.cc: Likewise.
* testsuite/22_locale/money_get/get/wchar_t/39168.cc: Likewise.
* testsuite/22_locale/money_get/get/wchar_t/4.cc: Likewise.
* testsuite/22_locale/money_get/get/wchar_t/5.cc: Likewise.
* testsuite/22_locale/money_get/get/wchar_t/6.cc: Likewise.
* testsuite/22_locale/money_get/get/wchar_t/7.cc: Likewise.
* testsuite/22_locale/money_get/get/wchar_t/8.cc: Likewise.
* testsuite/22_locale/money_put/put/char/1.cc: Likewise.
* testsuite/22_locale/money_put/put/char/12971.cc: Likewise.
* testsuite/22_locale/money_put/put/char/2.cc: Likewise.
* testsuite/22_locale/money_put/put/char/3.cc: Likewise.
* testsuite/22_locale/money_put/put/char/39168.cc: Likewise.
* testsuite/22_locale/money_put/put/char/4.cc: Likewise.
* testsuite/22_locale/money_put/put/char/5.cc: Likewise.
* testsuite/22_locale/money_put/put/char/6.cc: Likewise.
* testsuite/22_locale/money_put/put/char/9780-3.cc: Likewise.
* testsuite/22_locale/money_put/put/wchar_t/1.cc: Likewise.
* testsuite/22_locale/money_put/put/wchar_t/12971.cc: Likewise.
* testsuite/22_locale/money_put/put/wchar_t/2.cc: Likewise.
* testsuite/22_locale/money_put/put/wchar_t/3.cc: Likewise.
* testsuite/22_locale/money_put/put/wchar_t/39168.cc: Likewise.
* testsuite/22_locale/money_put/put/wchar_t/4.cc: Likewise.
* testsuite/22_locale/money_put/put/wchar_t/5.cc: Likewise.
* testsuite/22_locale/money_put/put/wchar_t/6.cc: Likewise.
* testsuite/22_locale/moneypunct/40712.cc: Likewise.
* testsuite/22_locale/moneypunct/members/char/1.cc: Likewise.
* testsuite/22_locale/moneypunct/members/char/2.cc: Likewise.
* testsuite/22_locale/moneypunct/members/wchar_t/1.cc: Likewise.
* testsuite/22_locale/moneypunct/members/wchar_t/2.cc: Likewise.
* testsuite/22_locale/moneypunct/requirements/false/intl.cc: Likewise.
* testsuite/22_locale/moneypunct/requirements/true/intl.cc: Likewise.
* testsuite/22_locale/moneypunct_byname/named_equivalence.cc: Likewise.
* testsuite/22_locale/num_get/get/char/1.cc: Likewise.
* testsuite/22_locale/num_get/get/char/10.cc: Likewise.
* testsuite/22_locale/num_get/get/char/11.cc: Likewise.
* testsuite/22_locale/num_get/get/char/12.cc: Likewise.
* testsuite/22_locale/num_get/get/char/13.cc: Likewise.
* testsuite/22_locale/num_get/get/char/14.cc: Likewise.
* testsuite/22_locale/num_get/get/char/15.cc: Likewise.
* testsuite/22_locale/num_get/get/char/16.cc: Likewise.
* testsuite/22_locale/num_get/get/char/2.cc: Likewise.
* testsuite/22_locale/num_get/get/char/22131.cc: Likewise.
* testsuite/22_locale/num_get/get/char/23953.cc: Likewise.
* testsuite/22_locale/num_get/get/char/3.cc: Likewise.
* testsuite/22_locale/num_get/get/char/37958.cc: Likewise.
* testsuite/22_locale/num_get/get/char/39168.cc: Likewise.
* testsuite/22_locale/num_get/get/char/39802.cc: Likewise.
* testsuite/22_locale/num_get/get/char/4.cc: Likewise.
* testsuite/22_locale/num_get/get/char/5.cc: Likewise.
* testsuite/22_locale/num_get/get/char/6.cc: Likewise.
* testsuite/22_locale/num_get/get/char/7.cc: Likewise.
* testsuite/22_locale/num_get/get/char/8.cc: Likewise.
* testsuite/22_locale/num_get/get/char/9.cc: Likewise.
* testsuite/22_locale/num_get/get/wchar_t/1.cc: Likewise.
* testsuite/22_locale/num_get/get/wchar_t/10.cc: Likewise.
* testsuite/22_locale/num_get/get/wchar_t/11.cc: Likewise.
* testsuite/22_locale/num_get/get/wchar_t/12.cc: Likewise.
* testsuite/22_locale/num_get/get/wchar_t/13.cc: Likewise.
* testsuite/22_locale/num_get/get/wchar_t/14.cc: Likewise.
* testsuite/22_locale/num_get/get/wchar_t/15.cc: Likewise.
* testsuite/22_locale/num_get/get/wchar_t/16.cc: Likewise.
* testsuite/22_locale/num_get/get/wchar_t/2.cc: Likewise.
* testsuite/22_locale/num_get/get/wchar_t/22131.cc: Likewise.
* testsuite/22_locale/num_get/get/wchar_t/23953.cc: Likewise.
* testsuite/22_locale/num_get/get/wchar_t/3.cc: Likewise.
* testsuite/22_locale/num_get/get/wchar_t/37958.cc: Likewise.
* testsuite/22_locale/num_get/get/wchar_t/39168.cc: Likewise.
* testsuite/22_locale/num_get/get/wchar_t/39802.cc: Likewise.
* testsuite/22_locale/num_get/get/wchar_t/4.cc: Likewise.
* testsuite/22_locale/num_get/get/wchar_t/5.cc: Likewise.
* testsuite/22_locale/num_get/get/wchar_t/6.cc: Likewise.
* testsuite/22_locale/num_get/get/wchar_t/7.cc: Likewise.
* testsuite/22_locale/num_get/get/wchar_t/8.cc: Likewise.
* testsuite/22_locale/num_get/get/wchar_t/9.cc: Likewise.
* testsuite/22_locale/num_put/put/char/1.cc: Likewise.
* testsuite/22_locale/num_put/put/char/10.cc: Likewise.
* testsuite/22_locale/num_put/put/char/11.cc: Likewise.
* testsuite/22_locale/num_put/put/char/12.cc: Likewise.
* testsuite/22_locale/num_put/put/char/14220.cc: Likewise.
* testsuite/22_locale/num_put/put/char/15565.cc: Likewise.
* testsuite/22_locale/num_put/put/char/2.cc: Likewise.
* testsuite/22_locale/num_put/put/char/20909.cc: Likewise.
* testsuite/22_locale/num_put/put/char/20914.cc: Likewise.
* testsuite/22_locale/num_put/put/char/23953.cc: Likewise.
* testsuite/22_locale/num_put/put/char/3.cc: Likewise.
* testsuite/22_locale/num_put/put/char/38196.cc: Likewise.
* testsuite/22_locale/num_put/put/char/38210.cc: Likewise.
* testsuite/22_locale/num_put/put/char/4.cc: Likewise.
* testsuite/22_locale/num_put/put/char/5.cc: Likewise.
* testsuite/22_locale/num_put/put/char/6.cc: Likewise.
* testsuite/22_locale/num_put/put/char/7.cc: Likewise.
* testsuite/22_locale/num_put/put/char/8.cc: Likewise.
* testsuite/22_locale/num_put/put/char/9.cc: Likewise.
* testsuite/22_locale/num_put/put/char/9780-2.cc: Likewise.
* testsuite/22_locale/num_put/put/wchar_t/1.cc: Likewise.
* testsuite/22_locale/num_put/put/wchar_t/10.cc: Likewise.
* testsuite/22_locale/num_put/put/wchar_t/11.cc: Likewise.
* testsuite/22_locale/num_put/put/wchar_t/12.cc: Likewise.
* testsuite/22_locale/num_put/put/wchar_t/14220.cc: Likewise.
* testsuite/22_locale/num_put/put/wchar_t/15565.cc: Likewise.
* testsuite/22_locale/num_put/put/wchar_t/2.cc: Likewise.
* testsuite/22_locale/num_put/put/wchar_t/20909.cc: Likewise.
* testsuite/22_locale/num_put/put/wchar_t/20914.cc: Likewise.
* testsuite/22_locale/num_put/put/wchar_t/23953.cc: Likewise.
* testsuite/22_locale/num_put/put/wchar_t/3.cc: Likewise.
* testsuite/22_locale/num_put/put/wchar_t/38196.cc: Likewise.
* testsuite/22_locale/num_put/put/wchar_t/38210.cc: Likewise.
* testsuite/22_locale/num_put/put/wchar_t/4.cc: Likewise.
* testsuite/22_locale/num_put/put/wchar_t/5.cc: Likewise.
* testsuite/22_locale/num_put/put/wchar_t/6.cc: Likewise.
* testsuite/22_locale/num_put/put/wchar_t/7.cc: Likewise.
* testsuite/22_locale/num_put/put/wchar_t/8.cc: Likewise.
* testsuite/22_locale/num_put/put/wchar_t/9.cc: Likewise.
* testsuite/22_locale/numpunct/members/char/1.cc: Likewise.
* testsuite/22_locale/numpunct/members/char/2.cc: Likewise.
* testsuite/22_locale/numpunct/members/char/3.cc: Likewise.
* testsuite/22_locale/numpunct/members/char/cache_1.cc: Likewise.
* testsuite/22_locale/numpunct/members/char/cache_2.cc: Likewise.
* testsuite/22_locale/numpunct/members/pod/1.cc: Likewise.
* testsuite/22_locale/numpunct/members/wchar_t/1.cc: Likewise.
* testsuite/22_locale/numpunct/members/wchar_t/2.cc: Likewise.
* testsuite/22_locale/numpunct/members/wchar_t/cache_1.cc: Likewise.
* testsuite/22_locale/numpunct/members/wchar_t/cache_2.cc: Likewise.
* testsuite/22_locale/numpunct_byname/named_equivalence.cc: Likewise.
* testsuite/22_locale/time_get/date_order/char/1.cc: Likewise.
* testsuite/22_locale/time_get/date_order/wchar_t/1.cc: Likewise.
* testsuite/22_locale/time_get/get/char/1.cc: Likewise.
* testsuite/22_locale/time_get/get/char/2.cc: Likewise.
* testsuite/22_locale/time_get/get/wchar_t/1.cc: Likewise.
* testsuite/22_locale/time_get/get/wchar_t/2.cc: Likewise.
* testsuite/22_locale/time_get/get_date/char/1.cc: Likewise.
* testsuite/22_locale/time_get/get_date/char/12750.cc: Likewise.
* testsuite/22_locale/time_get/get_date/char/12791.cc: Likewise.
* testsuite/22_locale/time_get/get_date/char/2.cc: Likewise.
* testsuite/22_locale/time_get/get_date/char/26701.cc: Likewise.
* testsuite/22_locale/time_get/get_date/char/3.cc: Likewise.
* testsuite/22_locale/time_get/get_date/char/5.cc: Likewise.
* testsuite/22_locale/time_get/get_date/wchar_t/1.cc: Likewise.
* testsuite/22_locale/time_get/get_date/wchar_t/12750.cc: Likewise.
* testsuite/22_locale/time_get/get_date/wchar_t/12791.cc: Likewise.
* testsuite/22_locale/time_get/get_date/wchar_t/2.cc: Likewise.
* testsuite/22_locale/time_get/get_date/wchar_t/26701.cc: Likewise.
* testsuite/22_locale/time_get/get_date/wchar_t/3.cc: Likewise.
* testsuite/22_locale/time_get/get_date/wchar_t/4.cc: Likewise.
* testsuite/22_locale/time_get/get_date/wchar_t/5.cc: Likewise.
* testsuite/22_locale/time_get/get_monthname/char/1.cc: Likewise.
* testsuite/22_locale/time_get/get_monthname/char/2.cc: Likewise.
* testsuite/22_locale/time_get/get_monthname/char/3.cc: Likewise.
* testsuite/22_locale/time_get/get_monthname/char/4.cc: Likewise.
* testsuite/22_locale/time_get/get_monthname/char/5.cc: Likewise.
* testsuite/22_locale/time_get/get_monthname/char/6.cc: Likewise.
* testsuite/22_locale/time_get/get_monthname/wchar_t/1.cc: Likewise.
* testsuite/22_locale/time_get/get_monthname/wchar_t/2.cc: Likewise.
* testsuite/22_locale/time_get/get_monthname/wchar_t/3.cc: Likewise.
* testsuite/22_locale/time_get/get_monthname/wchar_t/4.cc: Likewise.
* testsuite/22_locale/time_get/get_monthname/wchar_t/5.cc: Likewise.
* testsuite/22_locale/time_get/get_monthname/wchar_t/6.cc: Likewise.
* testsuite/22_locale/time_get/get_time/char/1.cc: Likewise.
* testsuite/22_locale/time_get/get_time/char/2.cc: Likewise.
* testsuite/22_locale/time_get/get_time/char/3.cc: Likewise.
* testsuite/22_locale/time_get/get_time/char/4.cc: Likewise.
* testsuite/22_locale/time_get/get_time/char/5.cc: Likewise.
* testsuite/22_locale/time_get/get_time/char/6.cc: Likewise.
* testsuite/22_locale/time_get/get_time/wchar_t/1.cc: Likewise.
* testsuite/22_locale/time_get/get_time/wchar_t/2.cc: Likewise.
* testsuite/22_locale/time_get/get_time/wchar_t/3.cc: Likewise.
* testsuite/22_locale/time_get/get_time/wchar_t/4.cc: Likewise.
* testsuite/22_locale/time_get/get_time/wchar_t/5.cc: Likewise.
* testsuite/22_locale/time_get/get_time/wchar_t/6.cc: Likewise.
* testsuite/22_locale/time_get/get_weekday/char/1.cc: Likewise.
* testsuite/22_locale/time_get/get_weekday/char/2.cc: Likewise.
* testsuite/22_locale/time_get/get_weekday/char/3.cc: Likewise.
* testsuite/22_locale/time_get/get_weekday/char/38081-1.cc: Likewise.
* testsuite/22_locale/time_get/get_weekday/char/38081-2.cc: Likewise.
* testsuite/22_locale/time_get/get_weekday/char/5.cc: Likewise.
* testsuite/22_locale/time_get/get_weekday/char/6.cc: Likewise.
* testsuite/22_locale/time_get/get_weekday/wchar_t/1.cc: Likewise.
* testsuite/22_locale/time_get/get_weekday/wchar_t/2.cc: Likewise.
* testsuite/22_locale/time_get/get_weekday/wchar_t/3.cc: Likewise.
* testsuite/22_locale/time_get/get_weekday/wchar_t/5.cc: Likewise.
* testsuite/22_locale/time_get/get_weekday/wchar_t/6.cc: Likewise.
* testsuite/22_locale/time_get/get_year/char/1.cc: Likewise.
* testsuite/22_locale/time_get/get_year/char/3.cc: Likewise.
* testsuite/22_locale/time_get/get_year/char/5.cc: Likewise.
* testsuite/22_locale/time_get/get_year/wchar_t/1.cc: Likewise.
* testsuite/22_locale/time_get/get_year/wchar_t/3.cc: Likewise.
* testsuite/22_locale/time_get/get_year/wchar_t/5.cc: Likewise.
* testsuite/22_locale/time_put/put/char/1.cc: Likewise.
* testsuite/22_locale/time_put/put/char/10.cc: Likewise.
* testsuite/22_locale/time_put/put/char/12439_1.cc: Likewise.
* testsuite/22_locale/time_put/put/char/12439_3.cc: Likewise.
* testsuite/22_locale/time_put/put/char/17038.cc: Likewise.
* testsuite/22_locale/time_put/put/char/2.cc: Likewise.
* testsuite/22_locale/time_put/put/char/3.cc: Likewise.
* testsuite/22_locale/time_put/put/char/4.cc: Likewise.
* testsuite/22_locale/time_put/put/char/5.cc: Likewise.
* testsuite/22_locale/time_put/put/char/6.cc: Likewise.
* testsuite/22_locale/time_put/put/char/7.cc: Likewise.
* testsuite/22_locale/time_put/put/char/8.cc: Likewise.
* testsuite/22_locale/time_put/put/char/9.cc: Likewise.
* testsuite/22_locale/time_put/put/char/9780-1.cc: Likewise.
* testsuite/22_locale/time_put/put/wchar_t/1.cc: Likewise.
* testsuite/22_locale/time_put/put/wchar_t/10.cc: Likewise.
* testsuite/22_locale/time_put/put/wchar_t/12439_1.cc: Likewise.
* testsuite/22_locale/time_put/put/wchar_t/12439_2.cc: Likewise.
* testsuite/22_locale/time_put/put/wchar_t/12439_3.cc: Likewise.
* testsuite/22_locale/time_put/put/wchar_t/17038.cc: Likewise.
* testsuite/22_locale/time_put/put/wchar_t/2.cc: Likewise.
* testsuite/22_locale/time_put/put/wchar_t/3.cc: Likewise.
* testsuite/22_locale/time_put/put/wchar_t/4.cc: Likewise.
* testsuite/22_locale/time_put/put/wchar_t/5.cc: Likewise.
* testsuite/22_locale/time_put/put/wchar_t/6.cc: Likewise.
* testsuite/22_locale/time_put/put/wchar_t/7.cc: Likewise.
* testsuite/22_locale/time_put/put/wchar_t/8.cc: Likewise.
* testsuite/22_locale/time_put/put/wchar_t/9.cc: Likewise.
* testsuite/30_threads/async/42819.cc: Likewise.
* testsuite/30_threads/async/any.cc: Likewise.
* testsuite/30_threads/async/async.cc: Likewise.
* testsuite/30_threads/async/except.cc: Likewise.
* testsuite/30_threads/async/launch.cc: Likewise.
* testsuite/30_threads/async/sync.cc: Likewise.
* testsuite/30_threads/call_once/call_once1.cc: Likewise.
* testsuite/30_threads/condition_variable/cons/1.cc: Likewise.
* testsuite/30_threads/condition_variable/members/1.cc: Likewise.
* testsuite/30_threads/condition_variable/members/2.cc: Likewise.
* testsuite/30_threads/condition_variable/members/3.cc: Likewise.
* testsuite/30_threads/condition_variable_any/cons/1.cc: Likewise.
* testsuite/30_threads/condition_variable_any/members/1.cc: Likewise.
* testsuite/30_threads/condition_variable_any/members/2.cc: Likewise.
* testsuite/30_threads/future/members/45133.cc: Likewise.
* testsuite/30_threads/future/members/get.cc: Likewise.
* testsuite/30_threads/future/members/get2.cc: Likewise.
* testsuite/30_threads/future/members/share.cc: Likewise.
* testsuite/30_threads/future/members/valid.cc: Likewise.
* testsuite/30_threads/future/members/wait_for.cc: Likewise.
* testsuite/30_threads/future/members/wait_until.cc: Likewise.
* testsuite/30_threads/lock/1.cc: Likewise.
* testsuite/30_threads/lock/2.cc: Likewise.
* testsuite/30_threads/lock/3.cc: Likewise.
* testsuite/30_threads/lock/4.cc: Likewise.
* testsuite/30_threads/lock_guard/cons/1.cc: Likewise.
* testsuite/30_threads/mutex/cons/1.cc: Likewise.
* testsuite/30_threads/mutex/dest/destructor_locked.cc: Likewise.
* testsuite/30_threads/mutex/lock/1.cc: Likewise.
* testsuite/30_threads/mutex/native_handle/1.cc: Likewise.
* testsuite/30_threads/mutex/try_lock/1.cc: Likewise.
* testsuite/30_threads/mutex/try_lock/2.cc: Likewise.
* testsuite/30_threads/mutex/unlock/1.cc: Likewise.
* testsuite/30_threads/packaged_task/cons/1.cc: Likewise.
* testsuite/30_threads/packaged_task/cons/2.cc: Likewise.
* testsuite/30_threads/packaged_task/cons/alloc.cc: Likewise.
* testsuite/30_threads/packaged_task/cons/move.cc: Likewise.
* testsuite/30_threads/packaged_task/cons/move_assign.cc: Likewise.
* testsuite/30_threads/packaged_task/members/at_thread_exit.cc:
Likewise.
* testsuite/30_threads/packaged_task/members/get_future.cc: Likewise.
* testsuite/30_threads/packaged_task/members/invoke.cc: Likewise.
* testsuite/30_threads/packaged_task/members/invoke5.cc: Likewise.
* testsuite/30_threads/packaged_task/members/reset2.cc: Likewise.
* testsuite/30_threads/packaged_task/members/swap.cc: Likewise.
* testsuite/30_threads/packaged_task/members/valid.cc: Likewise.
* testsuite/30_threads/promise/cons/move.cc: Likewise.
* testsuite/30_threads/promise/cons/move_assign.cc: Likewise.
* testsuite/30_threads/promise/members/at_thread_exit.cc: Likewise.
* testsuite/30_threads/promise/members/get_future.cc: Likewise.
* testsuite/30_threads/promise/members/set_value.cc: Likewise.
* testsuite/30_threads/promise/members/set_value3.cc: Likewise.
* testsuite/30_threads/promise/members/swap.cc: Likewise.
* testsuite/30_threads/recursive_mutex/cons/1.cc: Likewise.
* testsuite/30_threads/recursive_mutex/dest/destructor_locked.cc:
Likewise.
* testsuite/30_threads/recursive_mutex/lock/1.cc: Likewise.
* testsuite/30_threads/recursive_mutex/native_handle/1.cc: Likewise.
* testsuite/30_threads/recursive_mutex/try_lock/1.cc: Likewise.
* testsuite/30_threads/recursive_mutex/try_lock/2.cc: Likewise.
* testsuite/30_threads/recursive_mutex/unlock/1.cc: Likewise.
* testsuite/30_threads/recursive_timed_mutex/cons/1.cc: Likewise.
* testsuite/30_threads/recursive_timed_mutex/dest/destructor_locked.cc:
Likewise.
* testsuite/30_threads/recursive_timed_mutex/lock/1.cc: Likewise.
* testsuite/30_threads/recursive_timed_mutex/lock/2.cc: Likewise.
* testsuite/30_threads/recursive_timed_mutex/native_handle/1.cc:
Likewise.
* testsuite/30_threads/recursive_timed_mutex/try_lock/1.cc: Likewise.
* testsuite/30_threads/recursive_timed_mutex/try_lock/2.cc: Likewise.
* testsuite/30_threads/recursive_timed_mutex/try_lock_for/1.cc:
Likewise.
* testsuite/30_threads/recursive_timed_mutex/try_lock_for/2.cc:
Likewise.
* testsuite/30_threads/recursive_timed_mutex/try_lock_for/3.cc:
Likewise.
* testsuite/30_threads/recursive_timed_mutex/try_lock_until/1.cc:
Likewise.
* testsuite/30_threads/recursive_timed_mutex/try_lock_until/2.cc:
Likewise.
* testsuite/30_threads/recursive_timed_mutex/unlock/1.cc: Likewise.
* testsuite/30_threads/shared_future/members/45133.cc: Likewise.
* testsuite/30_threads/shared_future/members/get.cc: Likewise.
* testsuite/30_threads/shared_future/members/get2.cc: Likewise.
* testsuite/30_threads/shared_future/members/valid.cc: Likewise.
* testsuite/30_threads/shared_future/members/wait_for.cc: Likewise.
* testsuite/30_threads/shared_future/members/wait_until.cc: Likewise.
* testsuite/30_threads/shared_lock/cons/1.cc: Likewise.
* testsuite/30_threads/shared_lock/cons/2.cc: Likewise.
* testsuite/30_threads/shared_lock/cons/3.cc: Likewise.
* testsuite/30_threads/shared_lock/cons/4.cc: Likewise.
* testsuite/30_threads/shared_lock/cons/5.cc: Likewise.
* testsuite/30_threads/shared_lock/cons/6.cc: Likewise.
* testsuite/30_threads/shared_lock/locking/1.cc: Likewise.
* testsuite/30_threads/shared_lock/locking/2.cc: Likewise.
* testsuite/30_threads/shared_lock/locking/3.cc: Likewise.
* testsuite/30_threads/shared_lock/locking/4.cc: Likewise.
* testsuite/30_threads/shared_lock/modifiers/1.cc: Likewise.
* testsuite/30_threads/shared_mutex/cons/1.cc: Likewise.
* testsuite/30_threads/shared_mutex/try_lock/1.cc: Likewise.
* testsuite/30_threads/shared_mutex/try_lock/2.cc: Likewise.
* testsuite/30_threads/shared_timed_mutex/cons/1.cc: Likewise.
* testsuite/30_threads/shared_timed_mutex/try_lock/1.cc: Likewise.
* testsuite/30_threads/shared_timed_mutex/try_lock/2.cc: Likewise.
* testsuite/30_threads/shared_timed_mutex/try_lock/3.cc: Likewise.
* testsuite/30_threads/this_thread/1.cc: Likewise.
* testsuite/30_threads/this_thread/2.cc: Likewise.
* testsuite/30_threads/this_thread/3.cc: Likewise.
* testsuite/30_threads/this_thread/4.cc: Likewise.
* testsuite/30_threads/this_thread/60421.cc: Likewise.
* testsuite/30_threads/thread/cons/1.cc: Likewise.
* testsuite/30_threads/thread/cons/2.cc: Likewise.
* testsuite/30_threads/thread/cons/3.cc: Likewise.
* testsuite/30_threads/thread/cons/4.cc: Likewise.
* testsuite/30_threads/thread/cons/5.cc: Likewise.
* testsuite/30_threads/thread/cons/6.cc: Likewise.
* testsuite/30_threads/thread/cons/7.cc: Likewise.
* testsuite/30_threads/thread/cons/8.cc: Likewise.
* testsuite/30_threads/thread/cons/9.cc: Likewise.
* testsuite/30_threads/thread/cons/moveable.cc: Likewise.
* testsuite/30_threads/thread/members/1.cc: Likewise.
* testsuite/30_threads/thread/members/2.cc: Likewise.
* testsuite/30_threads/thread/members/3.cc: Likewise.
* testsuite/30_threads/thread/members/hardware_concurrency.cc: Likewise.
* testsuite/30_threads/thread/swap/1.cc: Likewise.
* testsuite/30_threads/timed_mutex/cons/1.cc: Likewise.
* testsuite/30_threads/timed_mutex/dest/destructor_locked.cc: Likewise.
* testsuite/30_threads/timed_mutex/lock/1.cc: Likewise.
* testsuite/30_threads/timed_mutex/native_handle/1.cc: Likewise.
* testsuite/30_threads/timed_mutex/try_lock/1.cc: Likewise.
* testsuite/30_threads/timed_mutex/try_lock/2.cc: Likewise.
* testsuite/30_threads/timed_mutex/try_lock_for/1.cc: Likewise.
* testsuite/30_threads/timed_mutex/try_lock_for/2.cc: Likewise.
* testsuite/30_threads/timed_mutex/try_lock_for/3.cc: Likewise.
* testsuite/30_threads/timed_mutex/try_lock_until/1.cc: Likewise.
* testsuite/30_threads/timed_mutex/try_lock_until/2.cc: Likewise.
* testsuite/30_threads/timed_mutex/try_lock_until/57641.cc: Likewise.
* testsuite/30_threads/timed_mutex/unlock/1.cc: Likewise.
* testsuite/30_threads/try_lock/1.cc: Likewise.
* testsuite/30_threads/try_lock/2.cc: Likewise.
* testsuite/30_threads/try_lock/3.cc: Likewise.
* testsuite/30_threads/try_lock/4.cc: Likewise.
* testsuite/30_threads/unique_lock/cons/1.cc: Likewise.
* testsuite/30_threads/unique_lock/cons/2.cc: Likewise.
* testsuite/30_threads/unique_lock/cons/3.cc: Likewise.
* testsuite/30_threads/unique_lock/cons/4.cc: Likewise.
* testsuite/30_threads/unique_lock/cons/5.cc: Likewise.
* testsuite/30_threads/unique_lock/cons/6.cc: Likewise.
* testsuite/30_threads/unique_lock/locking/1.cc: Likewise.
* testsuite/30_threads/unique_lock/locking/2.cc: Likewise.
* testsuite/30_threads/unique_lock/locking/3.cc: Likewise.
* testsuite/30_threads/unique_lock/locking/4.cc: Likewise.
* testsuite/30_threads/unique_lock/modifiers/1.cc: Likewise.
* testsuite/tr1/2_general_utilities/enable_shared_from_this/
not_shared.cc: Likewise.
* testsuite/tr1/2_general_utilities/enable_shared_from_this/
not_shared2.cc: Likewise.
* testsuite/tr1/2_general_utilities/enable_shared_from_this/
not_shared3.cc: Likewise.
* testsuite/tr1/2_general_utilities/enable_shared_from_this/
shared.cc: Likewise.
* testsuite/tr1/2_general_utilities/enable_shared_from_this/
still_shared.cc: Likewise.
* testsuite/tr1/2_general_utilities/shared_ptr/assign/assign.cc:
Likewise.
* testsuite/tr1/2_general_utilities/shared_ptr/assign/auto_ptr.cc:
Likewise.
* testsuite/tr1/2_general_utilities/shared_ptr/assign/auto_ptr_neg.cc:
Likewise.
* testsuite/tr1/2_general_utilities/shared_ptr/assign/
auto_ptr_rvalue_neg.cc: Likewise.
* testsuite/tr1/2_general_utilities/shared_ptr/assign/shared_ptr.cc:
Likewise.
* testsuite/tr1/2_general_utilities/shared_ptr/assign/
shared_ptr_neg.cc: Likewise.
* testsuite/tr1/2_general_utilities/shared_ptr/cons/auto_ptr.cc:
Likewise.
* testsuite/tr1/2_general_utilities/shared_ptr/cons/auto_ptr_neg.cc:
Likewise.
* testsuite/tr1/2_general_utilities/shared_ptr/cons/copy.cc: Likewise.
* testsuite/tr1/2_general_utilities/shared_ptr/cons/default.cc:
Likewise.
* testsuite/tr1/2_general_utilities/shared_ptr/cons/pointer.cc:
Likewise.
* testsuite/tr1/2_general_utilities/shared_ptr/cons/weak_ptr.cc:
Likewise.
* testsuite/tr1/2_general_utilities/shared_ptr/dest/dest.cc: Likewise.
* testsuite/tr1/2_general_utilities/shared_ptr/misc/24595.cc: Likewise.
* testsuite/tr1/2_general_utilities/shared_ptr/misc/io.cc: Likewise.
* testsuite/tr1/2_general_utilities/shared_ptr/misc/swap.cc: Likewise.
* testsuite/tr1/2_general_utilities/shared_ptr/modifiers/reset.cc:
Likewise.
* testsuite/tr1/2_general_utilities/shared_ptr/modifiers/reset_neg.cc:
Likewise.
* testsuite/tr1/2_general_utilities/shared_ptr/modifiers/swap.cc:
Likewise.
* testsuite/tr1/2_general_utilities/shared_ptr/modifiers/swap_neg.cc:
Likewise.
* testsuite/tr1/2_general_utilities/shared_ptr/observers/bool_conv.cc:
Likewise.
* testsuite/tr1/2_general_utilities/shared_ptr/observers/get.cc:
Likewise.
* testsuite/tr1/2_general_utilities/shared_ptr/observers/unique.cc:
Likewise.
* testsuite/tr1/2_general_utilities/shared_ptr/observers/use_count.cc:
Likewise.
* testsuite/tr1/2_general_utilities/shared_ptr/thread/
default_weaktoshared.cc: Likewise.
* testsuite/tr1/2_general_utilities/shared_ptr/thread/
mutex_weaktoshared.cc: Likewise.
* testsuite/tr1/3_function_objects/bind/all_bound.cc: Likewise.
* testsuite/tr1/3_function_objects/bind/mixed.cc: Likewise.
* testsuite/tr1/3_function_objects/bind/nested.cc: Likewise.
* testsuite/tr1/3_function_objects/bind/placeholders.cc: Likewise.
* testsuite/tr1/3_function_objects/bind/ref.cc: Likewise.
* testsuite/tr1/3_function_objects/function/1.cc: Likewise.
* testsuite/tr1/3_function_objects/function/2.cc: Likewise.
* testsuite/tr1/3_function_objects/function/3.cc: Likewise.
* testsuite/tr1/3_function_objects/function/4.cc: Likewise.
* testsuite/tr1/3_function_objects/function/5.cc: Likewise.
* testsuite/tr1/3_function_objects/function/6.cc: Likewise.
* testsuite/tr1/3_function_objects/function/7.cc: Likewise.
* testsuite/tr1/3_function_objects/function/8.cc: Likewise.
* testsuite/tr1/3_function_objects/function/9.cc: Likewise.
* testsuite/tr1/3_function_objects/reference_wrapper/invoke.cc:
Likewise.
* testsuite/tr1/3_function_objects/reference_wrapper/typedefs.cc:
Likewise.
* testsuite/tr1/3_function_objects/result_of.cc: Likewise.
* testsuite/tr1/4_metaprogramming/add_const/value.cc: Likewise.
* testsuite/tr1/4_metaprogramming/add_cv/value.cc: Likewise.
* testsuite/tr1/4_metaprogramming/add_pointer/value.cc: Likewise.
* testsuite/tr1/4_metaprogramming/add_reference/value.cc: Likewise.
* testsuite/tr1/4_metaprogramming/add_volatile/value.cc: Likewise.
* testsuite/tr1/4_metaprogramming/aligned_storage/value.cc: Likewise.
* testsuite/tr1/4_metaprogramming/alignment_of/value.cc: Likewise.
* testsuite/tr1/4_metaprogramming/extent/value.cc: Likewise.
* testsuite/tr1/4_metaprogramming/has_nothrow_assign/value.cc: Likewise.
* testsuite/tr1/4_metaprogramming/has_nothrow_constructor/value.cc:
Likewise.
* testsuite/tr1/4_metaprogramming/has_nothrow_copy/value.cc: Likewise.
* testsuite/tr1/4_metaprogramming/has_trivial_assign/value.cc: Likewise.
* testsuite/tr1/4_metaprogramming/has_trivial_constructor/value.cc:
Likewise.
* testsuite/tr1/4_metaprogramming/has_trivial_copy/value.cc: Likewise.
* testsuite/tr1/4_metaprogramming/has_trivial_destructor/value.cc:
Likewise.
* testsuite/tr1/4_metaprogramming/has_virtual_destructor/value.cc:
Likewise.
* testsuite/tr1/4_metaprogramming/integral_constant/
static_definition.cc: Likewise.
* testsuite/tr1/4_metaprogramming/integral_constant/
true_false_value.cc: Likewise.
* testsuite/tr1/4_metaprogramming/is_abstract/value.cc: Likewise.
* testsuite/tr1/4_metaprogramming/is_arithmetic/value.cc: Likewise.
* testsuite/tr1/4_metaprogramming/is_array/value.cc: Likewise.
* testsuite/tr1/4_metaprogramming/is_base_of/value.cc: Likewise.
* testsuite/tr1/4_metaprogramming/is_class/value.cc: Likewise.
* testsuite/tr1/4_metaprogramming/is_compound/value.cc: Likewise.
* testsuite/tr1/4_metaprogramming/is_const/value.cc: Likewise.
* testsuite/tr1/4_metaprogramming/is_convertible/value.cc: Likewise.
* testsuite/tr1/4_metaprogramming/is_empty/value.cc: Likewise.
* testsuite/tr1/4_metaprogramming/is_enum/24808.cc: Likewise.
* testsuite/tr1/4_metaprogramming/is_enum/value.cc: Likewise.
* testsuite/tr1/4_metaprogramming/is_floating_point/value.cc: Likewise.
* testsuite/tr1/4_metaprogramming/is_function/24808.cc: Likewise.
* testsuite/tr1/4_metaprogramming/is_function/value.cc: Likewise.
* testsuite/tr1/4_metaprogramming/is_fundamental/value.cc: Likewise.
* testsuite/tr1/4_metaprogramming/is_integral/value.cc: Likewise.
* testsuite/tr1/4_metaprogramming/is_member_function_pointer/value.cc:
Likewise.
* testsuite/tr1/4_metaprogramming/is_member_object_pointer/value.cc:
Likewise.
* testsuite/tr1/4_metaprogramming/is_member_pointer/value.cc: Likewise.
* testsuite/tr1/4_metaprogramming/is_object/24808.cc: Likewise.
* testsuite/tr1/4_metaprogramming/is_object/value.cc: Likewise.
* testsuite/tr1/4_metaprogramming/is_pod/value.cc: Likewise.
* testsuite/tr1/4_metaprogramming/is_pointer/value.cc: Likewise.
* testsuite/tr1/4_metaprogramming/is_polymorphic/value.cc: Likewise.
* testsuite/tr1/4_metaprogramming/is_reference/value.cc: Likewise.
* testsuite/tr1/4_metaprogramming/is_same/value.cc: Likewise.
* testsuite/tr1/4_metaprogramming/is_scalar/value.cc: Likewise.
* testsuite/tr1/4_metaprogramming/is_signed/value.cc: Likewise.
* testsuite/tr1/4_metaprogramming/is_union/value.cc: Likewise.
* testsuite/tr1/4_metaprogramming/is_unsigned/value.cc: Likewise.
* testsuite/tr1/4_metaprogramming/is_void/value.cc: Likewise.
* testsuite/tr1/4_metaprogramming/is_volatile/value.cc: Likewise.
* testsuite/tr1/4_metaprogramming/rank/value.cc: Likewise.
* testsuite/tr1/4_metaprogramming/remove_all_extents/value.cc: Likewise.
* testsuite/tr1/4_metaprogramming/remove_const/value.cc: Likewise.
* testsuite/tr1/4_metaprogramming/remove_cv/value.cc: Likewise.
* testsuite/tr1/4_metaprogramming/remove_extent/value.cc: Likewise.
* testsuite/tr1/4_metaprogramming/remove_pointer/value.cc: Likewise.
* testsuite/tr1/4_metaprogramming/remove_reference/value.cc: Likewise.
* testsuite/tr1/4_metaprogramming/remove_volatile/value.cc: Likewise.
* testsuite/tr1/5_numerical_facilities/random/discard_block/operators/
equal.cc: Likewise.
* testsuite/tr1/5_numerical_facilities/random/discard_block/operators/
not_equal.cc: Likewise.
* testsuite/tr1/5_numerical_facilities/random/discard_block/operators/
serialize.cc: Likewise.
* testsuite/tr1/5_numerical_facilities/random/linear_congruential/
cons/default.cc: Likewise.
* testsuite/tr1/5_numerical_facilities/random/linear_congruential/
cons/gen1.cc: Likewise.
* testsuite/tr1/5_numerical_facilities/random/linear_congruential/
operators/equal.cc: Likewise.
* testsuite/tr1/5_numerical_facilities/random/linear_congruential/
operators/not_equal.cc: Likewise.
* testsuite/tr1/5_numerical_facilities/random/linear_congruential/
operators/serialize.cc: Likewise.
* testsuite/tr1/5_numerical_facilities/random/mersenne_twister/
cons/default.cc: Likewise.
* testsuite/tr1/5_numerical_facilities/random/mersenne_twister/
cons/gen1.cc: Likewise.
* testsuite/tr1/5_numerical_facilities/random/mersenne_twister/
operators/equal.cc: Likewise.
* testsuite/tr1/5_numerical_facilities/random/mersenne_twister/
operators/not_equal.cc: Likewise.
* testsuite/tr1/5_numerical_facilities/random/mersenne_twister/
operators/serialize.cc: Likewise.
* testsuite/tr1/5_numerical_facilities/random/minstd_rand.cc: Likewise.
* testsuite/tr1/5_numerical_facilities/random/minstd_rand0.cc: Likewise.
* testsuite/tr1/5_numerical_facilities/random/mt19937.cc: Likewise.
* testsuite/tr1/5_numerical_facilities/random/random_device/cons/
default.cc: Likewise.
* testsuite/tr1/5_numerical_facilities/random/random_device/cons/
token.cc: Likewise.
* testsuite/tr1/5_numerical_facilities/random/ranlux3.cc: Likewise.
* testsuite/tr1/5_numerical_facilities/random/ranlux3_01.cc: Likewise.
* testsuite/tr1/5_numerical_facilities/random/ranlux4.cc: Likewise.
* testsuite/tr1/5_numerical_facilities/random/ranlux4_01.cc
* testsuite/tr1/5_numerical_facilities/random/subtract_with_carry/
cons/default.cc: Likewise.
* testsuite/tr1/5_numerical_facilities/random/subtract_with_carry/
cons/gen1.cc: Likewise.
* testsuite/tr1/5_numerical_facilities/random/subtract_with_carry/
operators/equal.cc: Likewise.
* testsuite/tr1/5_numerical_facilities/random/subtract_with_carry/
operators/not_equal.cc: Likewise.
* testsuite/tr1/5_numerical_facilities/random/subtract_with_carry/
operators/serialize.cc: Likewise.
* testsuite/tr1/5_numerical_facilities/random/subtract_with_carry_01/
cons/default.cc: Likewise.
* testsuite/tr1/5_numerical_facilities/random/subtract_with_carry_01/
cons/gen1.cc: Likewise.
* testsuite/tr1/5_numerical_facilities/random/subtract_with_carry_01/
operators/equal.cc: Likewise.
* testsuite/tr1/5_numerical_facilities/random/subtract_with_carry_01/
operators/not_equal.cc: Likewise.
* testsuite/tr1/5_numerical_facilities/random/subtract_with_carry_01/
operators/serialize.cc: Likewise.
* testsuite/tr1/5_numerical_facilities/random/uniform_int/33128.cc:
Likewise.
* testsuite/tr1/5_numerical_facilities/random/uniform_int/cons/
default.cc: Likewise.
* testsuite/tr1/5_numerical_facilities/random/uniform_int/cons/
range.cc: Likewise.
* testsuite/tr1/5_numerical_facilities/random/xor_combine/cons/
default.cc: Likewise.
* testsuite/tr1/5_numerical_facilities/random/xor_combine/operators/
equal.cc: Likewise.
* testsuite/tr1/5_numerical_facilities/random/xor_combine/operators/
not_equal.cc: Likewise.
* testsuite/tr1/5_numerical_facilities/random/xor_combine/operators/
serialize.cc: Likewise.
* testsuite/tr1/5_numerical_facilities/special_functions/
08_cyl_bessel_i/check_value.cc: Likewise.
* testsuite/tr1/5_numerical_facilities/special_functions/
08_cyl_bessel_i/pr56216.cc: Likewise.
* testsuite/tr1/5_numerical_facilities/special_functions/
09_cyl_bessel_j/check_value.cc: Likewise.
* testsuite/tr1/5_numerical_facilities/special_functions/
10_cyl_bessel_k/check_value.cc: Likewise.
* testsuite/tr1/5_numerical_facilities/special_functions/
11_cyl_neumann/check_value.cc: Likewise.
* testsuite/tr1/5_numerical_facilities/special_functions/
16_hermite/check_value.cc: Likewise.
* testsuite/tr1/5_numerical_facilities/special_functions/
21_sph_bessel/check_value.cc: Likewise.
* testsuite/tr1/5_numerical_facilities/special_functions/
23_sph_neumann/check_value.cc: Likewise.
* testsuite/tr1/6_containers/array/capacity/empty.cc: Likewise.
* testsuite/tr1/6_containers/array/capacity/max_size.cc: Likewise.
* testsuite/tr1/6_containers/array/capacity/size.cc: Likewise.
* testsuite/tr1/6_containers/array/comparison_operators/equal.cc:
Likewise.
* testsuite/tr1/6_containers/array/comparison_operators/greater.cc:
Likewise.
* testsuite/tr1/6_containers/array/comparison_operators/
greater_or_equal.cc: Likewise.
* testsuite/tr1/6_containers/array/comparison_operators/less.cc:
Likewise.
* testsuite/tr1/6_containers/array/comparison_operators/
less_or_equal.cc: Likewise.
* testsuite/tr1/6_containers/array/comparison_operators/not_equal.cc:
Likewise.
* testsuite/tr1/6_containers/array/element_access/at_out_of_range.cc:
Likewise.
* testsuite/tr1/6_containers/array/element_access/back.cc: Likewise.
* testsuite/tr1/6_containers/array/element_access/data.cc: Likewise.
* testsuite/tr1/6_containers/array/element_access/front.cc: Likewise.
* testsuite/tr1/6_containers/array/iterators/end_is_one_past.cc:
Likewise.
* testsuite/tr1/6_containers/array/requirements/assign.cc: Likewise.
* testsuite/tr1/6_containers/array/requirements/contiguous.cc: Likewise.
* testsuite/tr1/6_containers/array/requirements/member_swap.cc:
Likewise.
* testsuite/tr1/6_containers/array/requirements/zero_sized_arrays.cc:
Likewise.
* testsuite/tr1/6_containers/array/specialized_algorithms/swap.cc:
Likewise.
* testsuite/tr1/6_containers/array/tuple_interface/get.cc: Likewise.
* testsuite/tr1/6_containers/array/tuple_interface/tuple_element.cc:
Likewise.
* testsuite/tr1/6_containers/array/tuple_interface/tuple_size.cc:
Likewise.
* testsuite/tr1/6_containers/hash/24799.cc: Likewise.
* testsuite/tr1/6_containers/hash/operators/size_t.cc: Likewise.
*
testsuite/tr1/6_containers/tuple/comparison_operators/comparisons.cc:
Likewise.
* testsuite/tr1/6_containers/tuple/cons/assignment.cc: Likewise.
* testsuite/tr1/6_containers/tuple/cons/big_tuples.cc: Likewise.
* testsuite/tr1/6_containers/tuple/cons/constructor.cc: Likewise.
* testsuite/tr1/6_containers/tuple/creation_functions/23978.cc:
Likewise.
* testsuite/tr1/6_containers/tuple/creation_functions/make_tuple.cc:
Likewise.
* testsuite/tr1/6_containers/tuple/creation_functions/tie.cc: Likewise.
* testsuite/tr1/6_containers/tuple/creation_functions/tie2.cc: Likewise.
* testsuite/tr1/6_containers/tuple/element_access/get.cc: Likewise.
* testsuite/tr1/6_containers/tuple/tuple_size.cc: Likewise.
* testsuite/tr1/6_containers/unordered_map/24064.cc: Likewise.
* testsuite/tr1/6_containers/unordered_map/capacity/29134-map.cc:
Likewise.
* testsuite/tr1/6_containers/unordered_map/erase/1.cc: Likewise.
* testsuite/tr1/6_containers/unordered_map/erase/24061-map.cc: Likewise.
* testsuite/tr1/6_containers/unordered_map/find/map1.cc: Likewise.
* testsuite/tr1/6_containers/unordered_map/insert/24061-map.cc:
Likewise.
* testsuite/tr1/6_containers/unordered_map/insert/array_syntax.cc:
Likewise.
* testsuite/tr1/6_containers/unordered_map/insert/map_range.cc:
Likewise.
* testsuite/tr1/6_containers/unordered_map/insert/map_single.cc:
Likewise.
* testsuite/tr1/6_containers/unordered_map/swap/1.cc: Likewise.
* testsuite/tr1/6_containers/unordered_map/swap/2.cc: Likewise.
* testsuite/tr1/6_containers/unordered_multimap/capacity/
29134-multimap.cc: Likewise.
* testsuite/tr1/6_containers/unordered_multimap/erase/1.cc: Likewise.
* testsuite/tr1/6_containers/unordered_multimap/erase/
24061-multimap.cc: Likewise.
* testsuite/tr1/6_containers/unordered_multimap/find/multimap1.cc:
Likewise.
* testsuite/tr1/6_containers/unordered_multimap/insert/
24061-multimap.cc: Likewise.
* testsuite/tr1/6_containers/unordered_multimap/insert/
multimap_range.cc: Likewise.
* testsuite/tr1/6_containers/unordered_multimap/insert/
multimap_single.cc: Likewise.
* testsuite/tr1/6_containers/unordered_multimap/swap/1.cc: Likewise.
* testsuite/tr1/6_containers/unordered_multimap/swap/2.cc: Likewise.
* testsuite/tr1/6_containers/unordered_multiset/24054.cc: Likewise.
* testsuite/tr1/6_containers/unordered_multiset/capacity/
29134-multiset.cc: Likewise.
* testsuite/tr1/6_containers/unordered_multiset/erase/1.cc: Likewise.
* testsuite/tr1/6_containers/unordered_multiset/erase/
24061-multiset.cc: Likewise.
* testsuite/tr1/6_containers/unordered_multiset/find/multiset1.cc:
Likewise.
* testsuite/tr1/6_containers/unordered_multiset/insert/
24061-multiset.cc: Likewise.
* testsuite/tr1/6_containers/unordered_multiset/insert/
multiset_range.cc: Likewise.
* testsuite/tr1/6_containers/unordered_multiset/insert/
multiset_single.cc: Likewise.
* testsuite/tr1/6_containers/unordered_multiset/swap/1.cc: Likewise.
* testsuite/tr1/6_containers/unordered_multiset/swap/2.cc: Likewise.
* testsuite/tr1/6_containers/unordered_set/23465.cc: Likewise.
* testsuite/tr1/6_containers/unordered_set/26132.cc: Likewise.
* testsuite/tr1/6_containers/unordered_set/capacity/29134-set.cc:
Likewise.
* testsuite/tr1/6_containers/unordered_set/erase/1.cc: Likewise.
* testsuite/tr1/6_containers/unordered_set/erase/24061-set.cc: Likewise.
* testsuite/tr1/6_containers/unordered_set/find/set1.cc: Likewise.
* testsuite/tr1/6_containers/unordered_set/insert/24061-set.cc:
Likewise.
* testsuite/tr1/6_containers/unordered_set/insert/set_range.cc:
Likewise.
* testsuite/tr1/6_containers/unordered_set/insert/set_single.cc:
Likewise.
* testsuite/tr1/6_containers/unordered_set/swap/1.cc: Likewise.
* testsuite/tr1/6_containers/unordered_set/swap/2.cc: Likewise.
* testsuite/tr1/6_containers/utility/pair.cc: Likewise.
* testsuite/tr1/7_regular_expressions/match_results/ctors/char/
default.cc: Likewise.
* testsuite/tr1/7_regular_expressions/regex_traits/char/
translate_nocase.cc: Likewise.
* testsuite/tr1/7_regular_expressions/regex_traits/char/value.cc:
Likewise.
* testsuite/tr1/7_regular_expressions/regex_traits/wchar_t/
translate_nocase.cc: Likewise.
* testsuite/tr1/7_regular_expressions/regex_traits/wchar_t/value.cc:
Likewise.
* testsuite/tr1/8_c_compatibility/complex/50880.cc: Likewise.
* testsuite/tr1/8_c_compatibility/complex/overloads_int.cc: Likewise.
From-SVN: r241223
Eric Botcazou [Sun, 16 Oct 2016 20:13:32 +0000 (20:13 +0000)]
re PR ada/37139 (DEP prevents using Ada tasking)
PR ada/37139
PR ada/67205
* common.opt (-ftrampolines): New option.
* doc/invoke.texi (Code Gen Options): Document it.
* doc/tm.texi.in (Trampolines): Add TARGET_CUSTOM_FUNCTION_DESCRIPTORS.
* doc/tm.texi: Regenerate.
* builtins.def: Add init_descriptor and adjust_descriptor.
* builtins.c (expand_builtin_init_trampoline): Do not issue a warning
on platforms with descriptors.
(expand_builtin_init_descriptor): New function.
(expand_builtin_adjust_descriptor): Likewise.
(expand_builtin) <BUILT_IN_INIT_DESCRIPTOR>: New case.
<BUILT_IN_ADJUST_DESCRIPTOR>: Likewise.
* calls.c (prepare_call_address): Remove SIBCALLP parameter and add
FLAGS parameter. Deal with indirect calls by descriptor and adjust.
Set STATIC_CHAIN_REG_P on the static chain register, if any.
(call_expr_flags): Set ECF_BY_DESCRIPTOR for calls by descriptor.
(expand_call): Likewise. Move around call to prepare_call_address
and pass all flags to it.
* cfgexpand.c (expand_call_stmt): Reinstate CALL_EXPR_BY_DESCRIPTOR.
* gimple.h (enum gf_mask): New GF_CALL_BY_DESCRIPTOR value.
(gimple_call_set_by_descriptor): New setter.
(gimple_call_by_descriptor_p): New getter.
* gimple.c (gimple_build_call_from_tree): SetCALL_EXPR_BY_DESCRIPTOR.
(gimple_call_flags): Deal with GF_CALL_BY_DESCRIPTOR.
* langhooks.h (struct lang_hooks): Add custom_function_descriptors.
* langhooks-def.h (LANG_HOOKS_CUSTOM_FUNCTION_DESCRIPTORS): Define.
(LANG_HOOKS_INITIALIZER): Add LANG_HOOKS_CUSTOM_FUNCTION_DESCRIPTORS.
* rtl.h (STATIC_CHAIN_REG_P): New macro.
* rtlanal.c (find_first_parameter_load): Skip static chain registers.
* target.def (custom_function_descriptors): New POD hook.
* tree.h (FUNC_ADDR_BY_DESCRIPTOR): New flag on ADDR_EXPR.
(CALL_EXPR_BY_DESCRIPTOR): New flag on CALL_EXPR.
* tree-core.h (ECF_BY_DESCRIPTOR): New mask.
Document FUNC_ADDR_BY_DESCRIPTOR and CALL_EXPR_BY_DESCRIPTOR.
* tree.c (make_node_stat) <tcc_declaration>: Use FUNCTION_ALIGNMENT.
(build_common_builtin_nodes): Initialize init_descriptor and
adjust_descriptor.
* tree-nested.c: Include target.h.
(struct nesting_info): Add 'any_descr_created' field.
(get_descriptor_type): New function.
(lookup_element_for_decl): New function extracted from...
(create_field_for_decl): Likewise.
(lookup_tramp_for_decl): ...here. Adjust.
(lookup_descr_for_decl): New function.
(convert_tramp_reference_op): Deal with descriptors.
(build_init_call_stmt): New function extracted from...
(finalize_nesting_tree_1): ...here. Adjust and deal withdescriptors.
* defaults.h (FUNCTION_ALIGNMENT): Define.
(TRAMPOLINE_ALIGNMENT): Set to above instead of FUNCTION_BOUNDARY.
* config/i386/i386.h (TARGET_CUSTOM_FUNCTION_DESCRIPTORS): Define.
* config/ia64/ia64.h (TARGET_CUSTOM_FUNCTION_DESCRIPTORS): Likewise.
* config/rs6000/rs6000.h (TARGET_CUSTOM_FUNCTION_DESCRIPTORS):Likewise.
* config/sparc/sparc.h (TARGET_CUSTOM_FUNCTION_DESCRIPTORS): Likewise.
ada/
* gcc-interface/misc.c (LANG_HOOKS_CUSTOM_FUNCTION_DESCRIPTORS):Define.
* gcc-interface/trans.c (Attribute_to_gnu) <Attr_Access>: Deal with
a zero TARGET_CUSTOM_FUNCTION_DESCRIPTORS specially for Code_Address.
Otherwise, if TARGET_CUSTOM_FUNCTION_DESCRIPTORS is positive, set
FUNC_ADDR_BY_DESCRIPTOR for 'Access/'Unrestricted_Access of nested
subprograms if the type can use an internal representation.
(call_to_gnu): Likewise, but set CALL_EXPR_BY_DESCRIPTOR on indirect
calls if the type can use an internal representation.
From-SVN: r241222
Eric Botcazou [Sun, 16 Oct 2016 19:36:47 +0000 (19:36 +0000)]
sparc.c (sparc_expand_vector_init): Only accept literal constants in CONST_VECTORs.
* config/sparc/sparc.c (sparc_expand_vector_init): Only accept literal
constants in CONST_VECTORs.
From-SVN: r241218
Jerry DeLisle [Sun, 16 Oct 2016 16:29:46 +0000 (16:29 +0000)]
re PR fortran/48298 ([F03] User-Defined Derived-Type IO (DTIO))
2016-10-16 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR fortran/48298
* trans-io.c (transfer_expr): Ignore dtio procedures for inquire
with iolength.
* gfortran.dg/dtio_16.f90: New test.
From-SVN: r241216
Eric Botcazou [Sun, 16 Oct 2016 13:59:07 +0000 (13:59 +0000)]
system-aix.ads (Always_Compatible_Rep): Change to False.
* system-aix.ads (Always_Compatible_Rep): Change to False.
* system-aix64.ads (Always_Compatible_Rep): Likewise.
* system-hpux-ia64.ads (Always_Compatible_Rep): Likewise.
* system-hpux.ads (Always_Compatible_Rep): Likewise.
* system-linux-alpha.ads (Always_Compatible_Rep): Likewise.
* system-linux-hppa.ads (Always_Compatible_Rep): Likewise.
* system-linux-ia64.ads (Always_Compatible_Rep): Likewise.
* system-linux-mips.ads (Always_Compatible_Rep): Likewise.
* system-linux-mips64el.ads (Always_Compatible_Rep): Likewise.
* system-linux-mipsel.ads (Always_Compatible_Rep): Likewise.
* system-linux-s390.ads (Always_Compatible_Rep): Likewise.
* system-linux-s390x.ads (Always_Compatible_Rep): Likewise.
* system-linux-sh4.ads (Always_Compatible_Rep): Likewise.
* system-linux-sparc.ads (Always_Compatible_Rep): Likewise.
* system-linux-sparcv9.ads (Always_Compatible_Rep): Likewise.
* system-rtems.ads (Always_Compatible_Rep): Likewise.
From-SVN: r241213
Ville Voutilainen [Sun, 16 Oct 2016 13:31:43 +0000 (16:31 +0300)]
Make sure the return value of malloc_allocator::allocate is zero-initialized so...
Make sure the return value of malloc_allocator::allocate
is zero-initialized so that checking it for non-zero works
later.
* include/ext/malloc_allocator.h (malloc_allocator::allocate):
Initialize the return value.
* testsuite/ext/malloc_allocator/sanity.cc: New.
From-SVN: r241212
Janne Blomqvist [Sun, 16 Oct 2016 06:28:15 +0000 (09:28 +0300)]
PR 48587 Newunit allocator, cleanup
Improve error message, and remove a redundant check, as the same check is
done a bit earlier due to the PR 48587 patch.
2016-10-16 Janne Blomqvist <jb@gcc.gnu.org>
PR libfortran/48587
* io/transfer.c (data_transfer_init): Improve error message,
remove redundant check.
Regtested on x86_64-pc-linux-gnu.
From-SVN: r241211
GCC Administrator [Sun, 16 Oct 2016 00:16:15 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r241210
Eric Botcazou [Sat, 15 Oct 2016 22:40:12 +0000 (22:40 +0000)]
sparc.c (sparc_expand_vec_perm_bmask): Use a scratch register as destination of bmask.
* config/sparc/sparc.c (sparc_expand_vec_perm_bmask): Use a scratch
register as destination of bmask.
(vector_init_bshuffle): Likewise.
* config/sparc/sparc.md (vec_perm_constv8qi): Likewise.
(bmaskdi_vis): Enable only in 64-bit mode.
From-SVN: r241205
Jason Merrill [Sat, 15 Oct 2016 21:25:55 +0000 (17:25 -0400)]
PR c++/77945 - constexpr and trivial copy
* constexpr.c (maybe_simplify_trivial_copy): New.
(cxx_eval_store_expression): Call it.
* call.c (build_over_call): Use unsigned char for trivial copy.
From-SVN: r241204
Segher Boessenkool [Sat, 15 Oct 2016 21:01:43 +0000 (23:01 +0200)]
rs6000: Fix shrink-wrap-separate for AIX
All out-of-line register save routines need LR, so we cannot wrap the
LR component if there are out-of-line saves. This didn't show up for
testing on Linux because none of the tests there use out-of-line FPR
saves without also using out-of-line GPR saves, which we did handle.
This patch fixes it, and also cleans up code a little.
* config/rs6000/rs6000.c (rs6000_get_separate_components): Do not
make LR a separately shrink-wrapped component unless savres_strategy
contains all of {SAVE,REST}_INLINE_{GPRS,FPRS,VRS}. Do not wrap
GPRs unless both {SAVE,REST}_INLINE_GPRS. Do not disallow all
wrapping when not both {SAVE,REST}_INLINE_GPRS.
From-SVN: r241203
Eric Botcazou [Sat, 15 Oct 2016 18:46:02 +0000 (18:46 +0000)]
optabs.c (expand_parity): Fix mode mismatch, add final conversion and keep looping on failure.
* optabs.c (expand_parity): Fix mode mismatch, add final conversion
and keep looping on failure.
From-SVN: r241202
Jerry DeLisle [Sat, 15 Oct 2016 18:38:54 +0000 (18:38 +0000)]
re PR fortran/77972 (ICE on broken character continuation with -Wall etc.)
2016-10-15 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR fortran/77972
* scanner.c (gfc_next_char_literal): If nextc is null do not
decrement the pointer and call the diagnostics.
PR fortran/77972
* gfortran.dg/unexpected_eof_4.f90: New test.
From-SVN: r241201
Janne Blomqvist [Sat, 15 Oct 2016 13:15:26 +0000 (16:15 +0300)]
PR 48587 Newunit allocator
2016-10-15 Janne Blomqvist <jb@gcc.gnu.org>
PR libfortran/48587
* gfortran.dg/negative_unit2.f90: New testcase.
From-SVN: r241200
Janne Blomqvist [Sat, 15 Oct 2016 13:14:15 +0000 (16:14 +0300)]
PR 48587 Newunit allocator
Currently GFortran newer reuses unit numbers allocated with NEWUNIT=,
instead having a simple counter that is decremented each time such a
unit is opened. For a long running program which repeatedly opens
files with NEWUNIT= and closes them, the counter can wrap around and
cause an abort. This patch replaces the counter with an allocator
that keeps track of which units numbers are allocated, and can reuse
them once they have been deallocated. Since operating systems tend to
limit the number of simultaneous open files for a process to a
relatively modest number, a relatively simple approach with a linear
scan through an array suffices. Though as a small optimization there
is a low water indicator keeping track of the index for which all unit
numbers below are already allocated. This linear scan also ensures
that we always allocate the smallest available unit number.
2016-10-15 Janne Blomqvist <jb@gcc.gnu.org>
PR libfortran/48587
* io/io.h (get_unique_unit_number): Remove prototype.
(newunit_alloc): New prototype.
* io/open.c (st_open): Call newunit_alloc.
* io/unit.c (newunits,newunit_size,newunit_lwi): New static
variables.
(GFC_FIRST_NEWUNIT): Rename to NEWUNIT_START.
(next_available_newunit): Remove variable.
(get_unit): Call newunit_alloc, don't try to create negative
external unit.
(close_unit_1): Call newunit_free.
(close_units): Free newunits array.
(get_unique_number): Remove function.
(newunit_alloc): New function.
(newunit_free): New function.
* io/transfer.c (data_transfer_init): Check for invalid unit
number.
testsuite ChangeLog:
2016-10-15 Janne Blomqvist <jb@gcc.gnu.org>
PR libfortran/48587
* gfortran.dg/negative_unit2.f90: New testcase.
From-SVN: r241199
Nathan Sidwell [Sat, 15 Oct 2016 11:08:10 +0000 (11:08 +0000)]
revert: diagnostic.c (diagnostic_action_after_output): Remove max error handling here ....
Revert
* diagnostic.c (diagnostic_action_after_output): Remove max error
handling here ....
(diagnostic_report_diagnostic): ... do it here instead.
testsuite/
* c-c++-common/fmax-errors.c: Make sure note is emitted.
From-SVN: r241198
Ian Lance Taylor [Sat, 15 Oct 2016 00:29:06 +0000 (00:29 +0000)]
runtime: copy runtime package time code from Go 1.7
Fix handling of function values for -fgo-c-header to generate FuncVal*,
not simply FuncVal.
While we're here change runtime.nanotime to use clock_gettime with
CLOCK_MONOTONIC, rather than gettimeofday. This is what the gc library
does. It provides nanosecond precision and a monotonic clock.
Reviewed-on: https://go-review.googlesource.com/31232
From-SVN: r241197
GCC Administrator [Sat, 15 Oct 2016 00:16:16 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r241196
Ian Lance Taylor [Fri, 14 Oct 2016 22:51:46 +0000 (22:51 +0000)]
runtime: copy mprof code from Go 1.7 runtime
Also create a gccgo version of some of the traceback code in
traceback_gccgo.go, replacing some code currently in C.
This required modifying the compiler so that when compiling the runtime
package a slice expression does not cause a local array variable to
escape to the heap.
Reviewed-on: https://go-review.googlesource.com/31230
From-SVN: r241189
Jason Merrill [Fri, 14 Oct 2016 22:02:01 +0000 (18:02 -0400)]
c-cppbuiltin.c (c_cpp_builtins): Define __cpp_aggregate_bases and __cpp_deduction_guides.
* c-cppbuiltin.c (c_cpp_builtins): Define __cpp_aggregate_bases
and __cpp_deduction_guides.
From-SVN: r241188
Jason Merrill [Fri, 14 Oct 2016 21:54:39 +0000 (17:54 -0400)]
Implement P0017R1, C++17 aggregates with bases.
* class.c (build_base_field_1): Split out from...
(build_base_field): ...here. In C++17 mode, build a field for
empty bases.
* decl.c (xref_basetypes): In C++17 aggregates can have bases.
(next_initializable_field): Allow base fields in C++17.
* typeck2.c (process_init_constructor_record): Likewise.
From-SVN: r241187
Nathan Sidwell [Fri, 14 Oct 2016 20:32:03 +0000 (20:32 +0000)]
diagnostic.c (diagnostic_action_after_output): Remove max error handling here ....
* diagnostic.c (diagnostic_action_after_output): Remove max error
handling here ....
(diagnostic_report_diagnostic): ... do it here instead.
testsuite/
* c-c++-common/fmax-errors.c: Make sure note is emitted.
From-SVN: r241186
David Malcolm [Fri, 14 Oct 2016 20:22:23 +0000 (20:22 +0000)]
Tweaks to print_rtx_function
gcc/ChangeLog:
* print-rtl-function.c (print_edge): Omit "(flags)" when none are
set.
(print_rtx_function): Update example in comment for...
* print-rtl.c (print_rtx_operand_code_r): In compact mode, print
non-virtual pseudos with a '%' sigil followed by the regno, offset
by (LAST_VIRTUAL_REGISTER + 1), so that the first non-virtual
pseudo is dumped as "%0".
From-SVN: r241185
Eelis van der Weegen [Fri, 14 Oct 2016 19:40:32 +0000 (19:40 +0000)]
Optimize std::shuffle by using generator to get two values at once
2016-10-14 Eelis van der Weegen <eelis@eelis.net>
* include/bits/stl_algo.h (shuffle): Extract two random numbers from
each generator invocation when its range is large enough.
From-SVN: r241184
Jonathan Wakely [Fri, 14 Oct 2016 19:40:18 +0000 (20:40 +0100)]
Resolve ambiguities in std::experimental::sample test
* testsuite/experimental/algorithm/sample.cc: Qualify calls to
resolve ambiguity between std::sample and std::experimental::sample.
From-SVN: r241183
Jakub Jelinek [Fri, 14 Oct 2016 19:36:58 +0000 (21:36 +0200)]
re PR middle-end/77959 (ICE in ix86_decompose_address, at i386/i386.c:14954)
PR middle-end/77959
* expr.c (expand_expr_real_1) <case CONST_DECL>: For EXPAND_WRITE
return a MEM.
* gfortran.dg/pr77959.f90: New test.
From-SVN: r241182
Eric Botcazou [Fri, 14 Oct 2016 19:11:15 +0000 (19:11 +0000)]
sparc-passes.def: New file.
* config/sparc/sparc-passes.def: New file.
* config/sparc/t-sparc (PASSES_EXTRA): Add sparc-passes.def.
* config/sparc/sparc-protos.h (make_pass_work_around_errata): New.
* config/sparc/sparc.c (sparc_option_override): Don't register passes.
From-SVN: r241180
Jonathan Wakely [Fri, 14 Oct 2016 19:04:56 +0000 (20:04 +0100)]
Make std::bind use std::invoke
* include/std/functional (_Mu<A, false, true>, _Mu<A, true, false>):
Simplify forwarding from tuple of references.
(_Maybe_wrap_member_pointer): Remove.
(_Bind::__call, _Bind::__call_c, _Bind::__call_v, _Bind::__call_c_v):
Use std::__invoke.
(_Bind::_Mu_type, _Bind::_Res_type_impl, _Bind::_Res_type)
(_Bind::__dependent, _Bind::_Res_type_cv): New helpers to simplify
return type deduction.
(_Bind::operator(), _Bind::operator() const): Use new helpers.
(_Bind::operator() volatile, _Bind::operator() const volatile):
Likewise. Add deprecated attribute for C++17 mode.
(_Bind_result::__call): Use std::__invoke.
(_Bind_result::operator() volatile)
(_Bind_result::operator() const volatile): Add deprecated attribute.
(_Bind_helper::__maybe_type, _Bindres_helper::__maybe_type): Remove.
(_Bind_helper, _Bindres_helper): Don't use _Maybe_wrap_member_pointer.
(bind, bind<R>): Don't use __maybe_type.
* src/c++11/compatibility-thread-c++0x.cc
(_Maybe_wrap_member_pointer): Define here for compatibility symbols.
* testsuite/20_util/bind/68912.cc: Don't test volatile-qualification
in C++17 mode.
* testsuite/20_util/bind/cv_quals.cc: Likewise.
* testsuite/20_util/bind/cv_quals_2.cc: Likewise.
From-SVN: r241178
Jakub Jelinek [Fri, 14 Oct 2016 19:00:38 +0000 (21:00 +0200)]
DR 1511 - const volatile variables and ODR
DR 1511 - const volatile variables and ODR
* decl.c (grokvardecl): Change flags argument to type_quals,
add conceptp argument. Set TREE_PUBLIC for non-static volatile vars.
(grokdeclarator): Adjust grokvardecl caller.
* g++.dg/DRs/dr1511-1.C: New test.
* g++.dg/DRs/dr1511-2.C: New test.
From-SVN: r241176
Eric Botcazou [Fri, 14 Oct 2016 17:57:39 +0000 (17:57 +0000)]
debug7.adb (dg-options): Remove -g.
* gnat.dg/debug7.adb (dg-options): Remove -g.
* gnat.dg/debug8.adb (dg-options): Add -margs.
* gnat.dg/debug9.adb (dg-options): Remove -g and add -margs.
From-SVN: r241174
Pat Haugen [Fri, 14 Oct 2016 17:21:19 +0000 (17:21 +0000)]
loop-unroll.c (unroll_loop_runtime_iterations): Condition initial loop peel to loops with exit test at the beginning.
* loop-unroll.c (unroll_loop_runtime_iterations): Condition initial
loop peel to loops with exit test at the beginning.
From-SVN: r241173
Ian Lance Taylor [Fri, 14 Oct 2016 17:20:40 +0000 (17:20 +0000)]
runtime: just do file/line lookup in C, move Func to Go
In order to port stack backtraces to Go, we need the ability to look up
file/line information for PC values without allocating memory. This
patch moves the handling of Func from C code to Go code, and simplifies
the C code to just look up function/file/line/entry information for a PC.
Reviewed-on: https://go-review.googlesource.com/31150
From-SVN: r241172
Ian Lance Taylor [Fri, 14 Oct 2016 17:16:55 +0000 (17:16 +0000)]
debug/elf: add sparc64 relocations
This is a backport of https://go-review.googlesource.com/30870.
Reviewed-on: https://go-review.googlesource.com/30916
From-SVN: r241171
Pat Haugen [Fri, 14 Oct 2016 17:10:18 +0000 (17:10 +0000)]
re PR rtl-optimization/68212 (Loop unroller breaks basic block frequencies)
PR rtl-optimization/68212
* cfgloopmanip.c (duplicate_loop_to_header_edge): Use preheader edge
frequency when computing scale factor for peeled copies.
* loop-unroll.c (unroll_loop_runtime_iterations): Fix freq/count
values for switch/peel blocks/edges.
From-SVN: r241170
Jonathan Wakely [Fri, 14 Oct 2016 16:12:21 +0000 (17:12 +0100)]
Avoid copies in std::scoped_allocator_adaptor piecewise construction
* include/std/scoped_allocator (scoped_allocator_adaptor): Forward
piecewise construction arguments as tuples of references, to avoid
copies (related to LWG 2511).
* testsuite/20_util/scoped_allocator/construct_pair.cc: New test.
From-SVN: r241169
Pedro Alves [Fri, 14 Oct 2016 15:25:35 +0000 (15:25 +0000)]
FINAL/OVERRIDE: Define to empty on g++ < 4.7
final/override were only implemented in g++ 4.7.
include/ChangeLog
2016-10-14 Pedro Alves <palves@redhat.com>
* ansidecl.h [__cplusplus >= 201103 && GCC_VERSION < 4007] (FINAL,
OVERRIDE): Define as empty.
[__cplusplus < 201103 && GCC_VERSION < 4007] (FINAL): Define as
__final.
[__cplusplus < 201103 && GCC_VERSION >= 4007] (OVERRIDE): Define as
empty.
From-SVN: r241167
Pedro Alves [Fri, 14 Oct 2016 15:24:58 +0000 (15:24 +0000)]
Move OVERRIDE/FINAL from gcc/coretypes.h to include/ansidecl.h
So that GDB and other projects that share the top level can use them.
Bootstrapped with all default languages + jit on x86-64 Fedora 23.
gcc/ChangeLog:
2016-10-14 Pedro Alves <palves@redhat.com>
* coretypes.h (OVERRIDE, FINAL): Delete, moved to
include/ansidecl.h.
include/ChangeLog:
2016-10-14 Pedro Alves <palves@redhat.com>
* ansidecl.h (GCC_FINAL): Delete.
(OVERRIDE, FINAL): New, moved from gcc/coretypes.h.
From-SVN: r241166
Catherine Moore [Fri, 14 Oct 2016 14:21:06 +0000 (10:21 -0400)]
mips.c (mips_prepare_pch_save): Initialize micromips_globals to zero.
2016-10-13 Catherine Moore <clm@codesourcery.com>
* gcc/config/mips/mips.c (mips_prepare_pch_save): Initialize
micromips_globals to zero.
From-SVN: r241165
Paolo Carlini [Fri, 14 Oct 2016 13:50:24 +0000 (13:50 +0000)]
1.cc: Remove 'test' variables.
2016-10-14 Paolo Carlini <paolo.carlini@oracle.com>
* testsuite/26_numerics/accumulate/1.cc: Remove 'test' variables.
* testsuite/26_numerics/adjacent_difference/1.cc: Likewise.
* testsuite/26_numerics/complex/13450.cc: Likewise.
* testsuite/26_numerics/complex/50880.cc: Likewise.
* testsuite/26_numerics/complex/c99.cc: Likewise.
* testsuite/26_numerics/complex/cons/48760.cc: Likewise.
* testsuite/26_numerics/complex/cons/48760_c++0x.cc: Likewise.
* testsuite/26_numerics/complex/dr781_dr1137.cc: Likewise.
* testsuite/26_numerics/complex/dr844.cc: Likewise.
* testsuite/26_numerics/complex/inserters_extractors/char/1.cc:
Likewise.
* testsuite/26_numerics/complex/inserters_extractors/wchar_t/1.cc:
Likewise.
* testsuite/26_numerics/complex/value_operations/1.cc: Likewise.
* testsuite/26_numerics/complex/value_operations/dr387.cc: Likewise.
* testsuite/26_numerics/headers/cmath/19322.cc: Likewise.
* testsuite/26_numerics/headers/cmath/
c99_classification_macros_c++11.c: Likewise.c
* testsuite/26_numerics/headers/cmath/
c99_classification_macros_c++98.cc: Likewise.
* testsuite/26_numerics/headers/cmath/c_math.cc: Likewise.
* testsuite/26_numerics/headers/cmath/dr550.cc: Likewise.
* testsuite/26_numerics/headers/cmath/hypot.cc: Likewise.
* testsuite/26_numerics/headers/cmath/powi.cc: Likewise.
* testsuite/26_numerics/headers/cstdlib/13943.cc: Likewise.
* testsuite/26_numerics/inner_product/1.cc: Likewise.
* testsuite/26_numerics/iota/1.cc: Likewise.
* testsuite/26_numerics/partial_sum/1.cc: Likewise.
* testsuite/26_numerics/random/bernoulli_distribution/cons/default.cc:
Likewise.
* testsuite/26_numerics/random/bernoulli_distribution/cons/parms.cc:
Likewise.
* testsuite/26_numerics/random/bernoulli_distribution/operators/
equal.cc: Likewise.
* testsuite/26_numerics/random/bernoulli_distribution/operators/
inequal.cc: Likewise.
* testsuite/26_numerics/random/binomial_distribution/cons/default.cc:
Likewise.
* testsuite/26_numerics/random/binomial_distribution/cons/parms.cc:
Likewise.
* testsuite/26_numerics/random/binomial_distribution/operators/
equal.cc: Likewise.
* testsuite/26_numerics/random/binomial_distribution/operators/
inequal.cc: Likewise.
* testsuite/26_numerics/random/cauchy_distribution/cons/default.cc:
Likewise.
* testsuite/26_numerics/random/cauchy_distribution/cons/parms.cc:
Likewise.
* testsuite/26_numerics/random/cauchy_distribution/operators/equal.cc:
Likewise.
* testsuite/26_numerics/random/cauchy_distribution/operators/
inequal.cc: Likewise.
* testsuite/26_numerics/random/chi_squared_distribution/cons/
default.cc: Likewise.
* testsuite/26_numerics/random/chi_squared_distribution/cons/
parms.cc: Likewise.
* testsuite/26_numerics/random/chi_squared_distribution/operators/
equal.cc: Likewise.
* testsuite/26_numerics/random/chi_squared_distribution/operators/
inequal.cc: Likewise.
* testsuite/26_numerics/random/default_random_engine.cc: Likewise.
* testsuite/26_numerics/random/discard_block_engine/cons/55215.cc:
Likewise.
* testsuite/26_numerics/random/discard_block_engine/operators/equal.cc:
Likewise.
* testsuite/26_numerics/random/discard_block_engine/operators/
inequal.cc: Likewise.
* testsuite/26_numerics/random/discard_block_engine/operators/
serialize.cc: Likewise.
* testsuite/26_numerics/random/discrete_distribution/cons/
default.cc: Likewise.
* testsuite/26_numerics/random/discrete_distribution/cons/
initlist.cc: Likewise.
* testsuite/26_numerics/random/discrete_distribution/cons/
num_xbound_fun.cc: Likewise.
* testsuite/26_numerics/random/discrete_distribution/cons/range.cc:
Likewise.
* testsuite/26_numerics/random/discrete_distribution/operators/
equal.cc: Likewise.
* testsuite/26_numerics/random/discrete_distribution/operators/
inequal.cc: Likewise.
* testsuite/26_numerics/random/exponential_distribution/cons/
default.cc: Likewise.
* testsuite/26_numerics/random/exponential_distribution/cons/
parms.cc: Likewise.
* testsuite/26_numerics/random/exponential_distribution/operators/
equal.cc: Likewise.
* testsuite/26_numerics/random/exponential_distribution/operators/
inequal.cc: Likewise.
* testsuite/26_numerics/random/extreme_value_distribution/cons/
default.cc: Likewise.
* testsuite/26_numerics/random/extreme_value_distribution/cons/
parms.cc: Likewise.
* testsuite/26_numerics/random/extreme_value_distribution/operators/
equal.cc: Likewise.
* testsuite/26_numerics/random/extreme_value_distribution/operators/
inequal.cc: Likewise.
* testsuite/26_numerics/random/fisher_f_distribution/cons/default.cc:
Likewise.
* testsuite/26_numerics/random/fisher_f_distribution/cons/parms.cc:
Likewise.
* testsuite/26_numerics/random/fisher_f_distribution/operators/
equal.cc: Likewise.
* testsuite/26_numerics/random/fisher_f_distribution/operators/
inequal.cc: Likewise.
* testsuite/26_numerics/random/gamma_distribution/cons/default.cc:
Likewise.
* testsuite/26_numerics/random/gamma_distribution/cons/parms.cc:
Likewise.
* testsuite/26_numerics/random/gamma_distribution/operators/equal.cc:
Likewise.
* testsuite/26_numerics/random/gamma_distribution/operators/
inequal.cc: Likewise.
* testsuite/26_numerics/random/geometric_distribution/cons/
default.cc: Likewise.
* testsuite/26_numerics/random/geometric_distribution/cons/parms.cc:
Likewise.
* testsuite/26_numerics/random/geometric_distribution/operators/
equal.cc: Likewise.
* testsuite/26_numerics/random/geometric_distribution/operators/
inequal.cc: Likewise.
* testsuite/26_numerics/random/independent_bits_engine/cons/55215.cc:
Likewise.
* testsuite/26_numerics/random/independent_bits_engine/operators/
equal.cc: Likewise.
* testsuite/26_numerics/random/independent_bits_engine/operators/
inequal.cc: Likewise.
* testsuite/26_numerics/random/independent_bits_engine/operators/
serialize.cc: Likewise.
* testsuite/26_numerics/random/knuth_b.cc: Likewise.
* testsuite/26_numerics/random/linear_congruential_engine/cons/
55215.cc: Likewise.
* testsuite/26_numerics/random/linear_congruential_engine/cons/
default.cc: Likewise.
* testsuite/26_numerics/random/linear_congruential_engine/operators/
51795.cc: Likewise.
* testsuite/26_numerics/random/linear_congruential_engine/operators/
equal.cc: Likewise.
* testsuite/26_numerics/random/linear_congruential_engine/operators/
inequal.cc: Likewise.
* testsuite/26_numerics/random/linear_congruential_engine/operators/
serialize.cc: Likewise.
* testsuite/26_numerics/random/lognormal_distribution/cons/default.cc:
Likewise.
* testsuite/26_numerics/random/lognormal_distribution/cons/parms.cc:
Likewise.
* testsuite/26_numerics/random/lognormal_distribution/operators/
equal.cc: Likewise.
* testsuite/26_numerics/random/lognormal_distribution/operators/
inequal.cc: Likewise.
* testsuite/26_numerics/random/mersenne_twister_engine/cons/55215.cc:
Likewise.
* testsuite/26_numerics/random/mersenne_twister_engine/cons/
default.cc: Likewise.
* testsuite/26_numerics/random/mersenne_twister_engine/operators/
equal.cc: Likewise.
* testsuite/26_numerics/random/mersenne_twister_engine/operators/
inequal.cc: Likewise.
* testsuite/26_numerics/random/mersenne_twister_engine/operators/
serialize.cc: Likewise.
* testsuite/26_numerics/random/minstd_rand.cc: Likewise.
* testsuite/26_numerics/random/minstd_rand0.cc: Likewise.
* testsuite/26_numerics/random/mt19937.cc: Likewise.
* testsuite/26_numerics/random/mt19937_64.cc: Likewise.
* testsuite/26_numerics/random/negative_binomial_distribution/cons/
default.cc: Likewise.
* testsuite/26_numerics/random/negative_binomial_distribution/cons/
parms.cc: Likewise.
* testsuite/26_numerics/random/negative_binomial_distribution/
operators/equal.cc: Likewise.
* testsuite/26_numerics/random/negative_binomial_distribution/
operators/inequal.cc: Likewise.
* testsuite/26_numerics/random/normal_distribution/cons/default.cc:
Likewise.
* testsuite/26_numerics/random/normal_distribution/cons/parms.cc:
Likewise.
* testsuite/26_numerics/random/normal_distribution/operators/
equal.cc: Likewise.
* testsuite/26_numerics/random/normal_distribution/operators/
inequal.cc: Likewise.
* testsuite/26_numerics/random/piecewise_constant_distribution/cons/
default.cc: Likewise.
* testsuite/26_numerics/random/piecewise_constant_distribution/cons/
initlist_fun.cc: Likewise.
* testsuite/26_numerics/random/piecewise_constant_distribution/cons/
num_xbound_fun.cc: Likewise.
* testsuite/26_numerics/random/piecewise_constant_distribution/cons/
range.cc: Likewise.
* testsuite/26_numerics/random/piecewise_constant_distribution/
operators/equal.cc: Likewise.
* testsuite/26_numerics/random/piecewise_constant_distribution/
operators/inequal.cc: Likewise.
* testsuite/26_numerics/random/piecewise_linear_distribution/cons/
default.cc: Likewise.
* testsuite/26_numerics/random/piecewise_linear_distribution/cons/
initlist_fun.cc: Likewise.
* testsuite/26_numerics/random/piecewise_linear_distribution/cons/
num_xbound_fun.cc: Likewise.
* testsuite/26_numerics/random/piecewise_linear_distribution/cons/
range.cc: Likewise.
* testsuite/26_numerics/random/piecewise_linear_distribution/
operators/equal.cc: Likewise.
* testsuite/26_numerics/random/piecewise_linear_distribution/
operators/inequal.cc: Likewise.
* testsuite/26_numerics/random/poisson_distribution/cons/default.cc:
Likewise.
* testsuite/26_numerics/random/poisson_distribution/cons/parms.cc:
Likewise.
* testsuite/26_numerics/random/poisson_distribution/operators/
equal.cc: Likewise.
* testsuite/26_numerics/random/poisson_distribution/operators/
inequal.cc: Likewise.
* testsuite/26_numerics/random/random_device/cons/default.cc: Likewise.
* testsuite/26_numerics/random/random_device/cons/token.cc: Likewise.
* testsuite/26_numerics/random/ranlux24.cc: Likewise.
* testsuite/26_numerics/random/ranlux24_base.cc: Likewise.
* testsuite/26_numerics/random/ranlux48.cc: Likewise.
* testsuite/26_numerics/random/ranlux48_base.cc: Likewise.
* testsuite/26_numerics/random/seed_seq/cons/initlist.cc: Likewise.
* testsuite/26_numerics/random/shuffle_order_engine/cons/55215.cc:
Likewise.
* testsuite/26_numerics/random/shuffle_order_engine/operators/
equal.cc: Likewise.
* testsuite/26_numerics/random/shuffle_order_engine/operators/
inequal.cc: Likewise.
* testsuite/26_numerics/random/shuffle_order_engine/operators/
serialize.cc: Likewise.
* testsuite/26_numerics/random/student_t_distribution/cons/
default.cc: Likewise.
* testsuite/26_numerics/random/student_t_distribution/cons/
parms.cc: Likewise.
* testsuite/26_numerics/random/student_t_distribution/operators/
equal.cc: Likewise.
* testsuite/26_numerics/random/student_t_distribution/operators/
inequal.cc: Likewise.
* testsuite/26_numerics/random/subtract_with_carry_engine/cons/
55215.cc: Likewise.
* testsuite/26_numerics/random/subtract_with_carry_engine/cons/
default.cc: Likewise.
* testsuite/26_numerics/random/subtract_with_carry_engine/operators/
equal.cc: Likewise.
* testsuite/26_numerics/random/subtract_with_carry_engine/operators/
inequal.cc: Likewise.
* testsuite/26_numerics/random/subtract_with_carry_engine/operators/
serialize.cc: Likewise.
* testsuite/26_numerics/random/uniform_int_distribution/cons/
default.cc: Likewise.
* testsuite/26_numerics/random/uniform_int_distribution/cons/
parms.cc: Likewise.
* testsuite/26_numerics/random/uniform_int_distribution/operators/
equal.cc: Likewise.
* testsuite/26_numerics/random/uniform_int_distribution/operators/
inequal.cc: Likewise.
* testsuite/26_numerics/random/uniform_real_distribution/cons/
default.cc: Likewise.
* testsuite/26_numerics/random/uniform_real_distribution/cons/
parms.cc: Likewise.
* testsuite/26_numerics/random/uniform_real_distribution/operators/
equal.cc: Likewise.
* testsuite/26_numerics/random/uniform_real_distribution/operators/
inequal.cc: Likewise.
* testsuite/26_numerics/random/weibull_distribution/cons/default.cc:
Likewise.
* testsuite/26_numerics/random/weibull_distribution/cons/parms.cc:
Likewise.
* testsuite/26_numerics/random/weibull_distribution/operators/
equal.cc: Likewise.
* testsuite/26_numerics/random/weibull_distribution/operators/
inequal.cc: Likewise.
* testsuite/26_numerics/slice/1.cc: Likewise.
* testsuite/26_numerics/slice_array/array_assignment.cc: Likewise.
* testsuite/26_numerics/valarray/27867.cc: Likewise.
* testsuite/26_numerics/valarray/28277.cc: Likewise.
* testsuite/26_numerics/valarray/30416.cc: Likewise.
* testsuite/26_numerics/valarray/dr543.cc: Likewise.
* testsuite/26_numerics/valarray/dr630-1.cc: Likewise.
* testsuite/26_numerics/valarray/dr630-2.cc: Likewise.
* testsuite/26_numerics/valarray/dr630-3.C: Likewise.
* testsuite/26_numerics/valarray/init-list.cc: Likewise.
* testsuite/26_numerics/valarray/moveable.cc: Likewise.
* testsuite/26_numerics/valarray/operators.cc: Likewise.
* testsuite/26_numerics/valarray/swap.cc: Likewise.
* testsuite/experimental/deque/erasure.cc: Likewise.
* testsuite/experimental/filesystem/iterators/directory_iterator.cc:
Likewise.
* testsuite/experimental/filesystem/iterators/
recursive_directory_iterator.cc: Likewise.
* testsuite/experimental/filesystem/operations/absolute.cc: Likewise.
* testsuite/experimental/filesystem/operations/canonical.cc: Likewise.
* testsuite/experimental/filesystem/operations/copy.cc: Likewise.
* testsuite/experimental/filesystem/operations/copy_file.cc: Likewise.
* testsuite/experimental/filesystem/operations/create_directories.cc:
Likewise.
* testsuite/experimental/filesystem/operations/create_directory.cc:
Likewise.
* testsuite/experimental/filesystem/operations/current_path.cc:
Likewise.
* testsuite/experimental/filesystem/operations/exists.cc: Likewise.
* testsuite/experimental/filesystem/operations/file_size.cc: Likewise.
* testsuite/experimental/filesystem/operations/last_write_time.cc:
Likewise.
* testsuite/experimental/filesystem/operations/permissions.cc: Likewise.
* testsuite/experimental/filesystem/operations/status.cc: Likewise.
* testsuite/experimental/filesystem/operations/temp_directory_path.cc:
Likewise.
* testsuite/experimental/filesystem/path/native/string.cc: Likewise.
* testsuite/experimental/forward_list/erasure.cc: Likewise.
* testsuite/experimental/list/erasure.cc: Likewise.
* testsuite/experimental/map/erasure.cc: Likewise.
* testsuite/experimental/memory/shared_ptr/assign/assign.cc: Likewise.
* testsuite/experimental/memory/shared_ptr/comparison/comparison.cc:
Likewise.
* testsuite/experimental/memory/shared_ptr/cons/alias_ctor.cc: Likewise.
* testsuite/experimental/memory/shared_ptr/cons/alloc_ctor.cc: Likewise.
* testsuite/experimental/memory/shared_ptr/cons/copy_ctor.cc: Likewise.
* testsuite/experimental/memory/shared_ptr/cons/default_ctor.cc:
Likewise.
* testsuite/experimental/memory/shared_ptr/cons/move_ctor.cc: Likewise.
* testsuite/experimental/memory/shared_ptr/cons/pointer_ctor.cc:
Likewise.
* testsuite/experimental/memory/shared_ptr/cons/unique_ptr_ctor.cc:
Likewise.
* testsuite/experimental/memory/shared_ptr/cons/weak_ptr_ctor.cc:
Likewise.
* testsuite/experimental/memory/shared_ptr/dest/dest.cc: Likewise.
* testsuite/experimental/memory/shared_ptr/modifiers/reset.cc: Likewise.
* testsuite/experimental/memory/shared_ptr/modifiers/swap.cc: Likewise.
* testsuite/experimental/memory/shared_ptr/observers/bool_conv.cc:
Likewise.
* testsuite/experimental/memory/shared_ptr/observers/operators.cc:
Likewise.
* testsuite/experimental/memory/shared_ptr/observers/owner_before.cc:
Likewise.
* testsuite/experimental/memory/shared_ptr/observers/use_count.cc:
Likewise.
* testsuite/experimental/memory_resource/1.cc: Likewise.
* testsuite/experimental/memory_resource/null_memory_resource.cc:
Likewise.
* testsuite/experimental/memory_resource/resource_adaptor.cc: Likewise.
* testsuite/experimental/set/erasure.cc: Likewise.
* testsuite/experimental/string/erasure.cc: Likewise.
* testsuite/experimental/string_view/capacity/1.cc: Likewise.
* testsuite/experimental/string_view/cons/char/1.cc: Likewise.
* testsuite/experimental/string_view/cons/char/2.cc: Likewise.
* testsuite/experimental/string_view/cons/char/3.cc: Likewise.
* testsuite/experimental/string_view/cons/wchar_t/1.cc: Likewise.
* testsuite/experimental/string_view/cons/wchar_t/2.cc: Likewise.
* testsuite/experimental/string_view/cons/wchar_t/3.cc: Likewise.
* testsuite/experimental/string_view/element_access/char/1.cc: Likewise.
* testsuite/experimental/string_view/element_access/char/empty.cc:
Likewise.
* testsuite/experimental/string_view/element_access/char/
front_back.cc: Likewise.
* testsuite/experimental/string_view/element_access/wchar_t/1.cc:
Likewise.
* testsuite/experimental/string_view/element_access/wchar_t/empty.cc:
Likewise.
* testsuite/experimental/string_view/element_access/wchar_t/
front_back.cc: Likewise.
* testsuite/experimental/string_view/inserters/char/1.cc: Likewise.
* testsuite/experimental/string_view/inserters/char/2.cc: Likewise.
* testsuite/experimental/string_view/inserters/char/3.cc: Likewise.
* testsuite/experimental/string_view/inserters/pod/10081-out.cc:
Likewise.
* testsuite/experimental/string_view/inserters/wchar_t/1.cc: Likewise.
* testsuite/experimental/string_view/inserters/wchar_t/2.cc: Likewise.
* testsuite/experimental/string_view/inserters/wchar_t/3.cc: Likewise.
* testsuite/experimental/string_view/modifiers/remove_prefix/char/
1.cc: Likewise.
* testsuite/experimental/string_view/modifiers/remove_prefix/wchar_t/
1.cc: Likewise.
* testsuite/experimental/string_view/modifiers/remove_suffix/char/
1.cc: Likewise.
* testsuite/experimental/string_view/modifiers/remove_suffix/wchar_t/
1.cc: Likewise.
* testsuite/experimental/string_view/operations/compare/char/1.cc:
Likewise.
* testsuite/experimental/string_view/operations/compare/char/
13650.cc: Likewise.
* testsuite/experimental/string_view/operations/compare/wchar_t/
1.cc: Likewise.
* testsuite/experimental/string_view/operations/compare/wchar_t/
13650.cc: Likewise.
* testsuite/experimental/string_view/operations/copy/char/1.cc:
Likewise.
* testsuite/experimental/string_view/operations/copy/wchar_t/1.cc:
Likewise.
* testsuite/experimental/string_view/operations/data/char/1.cc:
Likewise.
* testsuite/experimental/string_view/operations/data/wchar_t/1.cc:
Likewise.
* testsuite/experimental/string_view/operations/find/char/1.cc:
Likewise.
* testsuite/experimental/string_view/operations/find/char/2.cc:
Likewise.
* testsuite/experimental/string_view/operations/find/char/3.cc:
Likewise.
* testsuite/experimental/string_view/operations/find/char/4.cc:
Likewise.
* testsuite/experimental/string_view/operations/find/wchar_t/1.cc:
Likewise.
* testsuite/experimental/string_view/operations/find/wchar_t/2.cc:
Likewise.
* testsuite/experimental/string_view/operations/find/wchar_t/3.cc:
Likewise.
* testsuite/experimental/string_view/operations/find/wchar_t/4.cc:
Likewise.
* testsuite/experimental/string_view/operations/rfind/char/1.cc:
Likewise.
* testsuite/experimental/string_view/operations/rfind/char/2.cc:
Likewise.
* testsuite/experimental/string_view/operations/rfind/char/3.cc:
Likewise.
* testsuite/experimental/string_view/operations/rfind/wchar_t/1.cc:
Likewise.
* testsuite/experimental/string_view/operations/rfind/wchar_t/2.cc:
Likewise.
* testsuite/experimental/string_view/operations/rfind/wchar_t/3.cc:
Likewise.
* testsuite/experimental/string_view/operations/substr/char/1.cc:
Likewise.
* testsuite/experimental/string_view/operations/substr/wchar_t/1.cc:
Likewise.
* testsuite/experimental/string_view/operations/to_string/1.cc:
Likewise.
* testsuite/experimental/string_view/operators/char/2.cc: Likewise.
* testsuite/experimental/string_view/operators/wchar_t/2.cc: Likewise.
* testsuite/experimental/unordered_map/erasure.cc: Likewise.
* testsuite/experimental/unordered_set/erasure.cc: Likewise.
* testsuite/experimental/vector/erasure.cc: Likewise.
* testsuite/ext/array_allocator/1.cc: Likewise.
* testsuite/ext/array_allocator/2.cc: Likewise.
* testsuite/ext/array_allocator/3.cc: Likewise.
* testsuite/ext/array_allocator/variadic_construct.cc: Likewise.
* testsuite/ext/bitmap_allocator/variadic_construct.cc: Likewise.
* testsuite/ext/codecvt/1.cc: Likewise.
* testsuite/ext/codecvt/char-1.cc: Likewise.
* testsuite/ext/codecvt/char-2.cc: Likewise.
* testsuite/ext/codecvt/wchar_t.cc: Likewise.
* testsuite/ext/enc_filebuf/char/13189.cc: Likewise.
* testsuite/ext/enc_filebuf/char/13598.cc: Likewise.
* testsuite/ext/enc_filebuf/wchar_t/13189.cc: Likewise.
* testsuite/ext/ext_pointer/1.cc: Likewise.
* testsuite/ext/ext_pointer/1_neg.cc: Likewise.
* testsuite/ext/malloc_allocator/variadic_construct.cc: Likewise.
* testsuite/ext/mt_allocator/check_allocate_big_per_type.cc: Likewise.
* testsuite/ext/mt_allocator/tune-1.cc: Likewise.
* testsuite/ext/mt_allocator/tune-2.cc: Likewise.
* testsuite/ext/mt_allocator/tune-3.cc: Likewise.
* testsuite/ext/mt_allocator/tune-4.cc: Likewise.
* testsuite/ext/mt_allocator/variadic_construct.cc: Likewise.
* testsuite/ext/new_allocator/variadic_construct.cc: Likewise.
* testsuite/ext/pod_char_traits.cc: Likewise.
* testsuite/ext/pool_allocator/variadic_construct.cc: Likewise.
* testsuite/ext/random/arcsine_distribution/cons/default.cc: Likewise.
* testsuite/ext/random/arcsine_distribution/cons/parms.cc: Likewise.
* testsuite/ext/random/arcsine_distribution/operators/equal.cc:
Likewise.
* testsuite/ext/random/arcsine_distribution/operators/inequal.cc:
Likewise.
* testsuite/ext/random/arcsine_distribution/operators/serialize.cc:
Likewise.
* testsuite/ext/random/beta_distribution/cons/default.cc: Likewise.
* testsuite/ext/random/beta_distribution/cons/parms.cc: Likewise.
* testsuite/ext/random/beta_distribution/operators/equal.cc: Likewise.
* testsuite/ext/random/beta_distribution/operators/inequal.cc: Likewise.
* testsuite/ext/random/hoyt_distribution/cons/default.cc: Likewise.
* testsuite/ext/random/hoyt_distribution/cons/parms.cc: Likewise.
* testsuite/ext/random/hoyt_distribution/operators/equal.cc: Likewise.
* testsuite/ext/random/hoyt_distribution/operators/inequal.cc: Likewise.
* testsuite/ext/random/hoyt_distribution/operators/serialize.cc:
Likewise.
* testsuite/ext/random/hypergeometric_distribution/cons/default.cc:
Likewise.
* testsuite/ext/random/hypergeometric_distribution/cons/parms.cc:
Likewise.
* testsuite/ext/random/hypergeometric_distribution/operators/
equal.cc: Likewise.
* testsuite/ext/random/hypergeometric_distribution/operators/
inequal.cc: Likewise.
* testsuite/ext/random/hypergeometric_distribution/operators/
serialize.cc: Likewise.
* testsuite/ext/random/k_distribution/cons/default.cc: Likewise.
* testsuite/ext/random/k_distribution/cons/parms.cc: Likewise.
* testsuite/ext/random/k_distribution/operators/equal.cc: Likewise.
* testsuite/ext/random/k_distribution/operators/inequal.cc: Likewise.
* testsuite/ext/random/k_distribution/operators/serialize.cc: Likewise.
* testsuite/ext/random/logistic_distribution/cons/default.cc: Likewise.
* testsuite/ext/random/logistic_distribution/cons/parms.cc: Likewise.
* testsuite/ext/random/logistic_distribution/operators/equal.cc:
Likewise.
* testsuite/ext/random/logistic_distribution/operators/inequal.cc:
Likewise.
* testsuite/ext/random/logistic_distribution/operators/serialize.cc:
Likewise.
* testsuite/ext/random/nakagami_distribution/cons/default.cc: Likewise.
* testsuite/ext/random/nakagami_distribution/cons/parms.cc: Likewise.
* testsuite/ext/random/nakagami_distribution/operators/equal.cc:
Likewise.
* testsuite/ext/random/nakagami_distribution/operators/inequal.cc:
Likewise.
* testsuite/ext/random/nakagami_distribution/operators/serialize.cc:
Likewise.
* testsuite/ext/random/normal_mv_distribution/cons/default.cc: Likewise.
* testsuite/ext/random/normal_mv_distribution/cons/parms.cc: Likewise.
* testsuite/ext/random/normal_mv_distribution/operators/equal.cc:
Likewise.
* testsuite/ext/random/normal_mv_distribution/operators/inequal.cc:
Likewise.
* testsuite/ext/random/pareto_distribution/cons/default.cc: Likewise.
* testsuite/ext/random/pareto_distribution/cons/parms.cc: Likewise.
* testsuite/ext/random/pareto_distribution/operators/equal.cc: Likewise.
* testsuite/ext/random/pareto_distribution/operators/inequal.cc:
Likewise.
* testsuite/ext/random/pareto_distribution/operators/serialize.cc:
Likewise.
* testsuite/ext/random/rice_distribution/cons/default.cc: Likewise.
* testsuite/ext/random/rice_distribution/cons/parms.cc: Likewise.
* testsuite/ext/random/rice_distribution/operators/equal.cc: Likewise.
* testsuite/ext/random/rice_distribution/operators/inequal.cc: Likewise.
* testsuite/ext/random/rice_distribution/operators/serialize.cc:
Likewise.
* testsuite/ext/random/simd_fast_mersenne_twister_engine/cons/
default.cc: Likewise.
* testsuite/ext/random/simd_fast_mersenne_twister_engine/operators/
equal.cc: Likewise.
* testsuite/ext/random/simd_fast_mersenne_twister_engine/operators/
inequal.cc: Likewise.
* testsuite/ext/random/simd_fast_mersenne_twister_engine/operators/
serialize.cc: Likewise.
* testsuite/ext/random/triangular_distribution/cons/default.cc:
Likewise.
* testsuite/ext/random/triangular_distribution/cons/parms.cc: Likewise.
* testsuite/ext/random/triangular_distribution/operators/equal.cc:
Likewise.
* testsuite/ext/random/triangular_distribution/operators/inequal.cc:
Likewise.
* testsuite/ext/random/uniform_on_sphere_distribution/cons/default.cc:
Likewise.
* testsuite/ext/random/uniform_on_sphere_distribution/operators/
equal.cc: Likewise.
* testsuite/ext/random/uniform_on_sphere_distribution/operators/
generate.cc: Likewise.
* testsuite/ext/random/uniform_on_sphere_distribution/operators/
inequal.cc: Likewise.
* testsuite/ext/random/uniform_on_sphere_distribution/operators/
serialize.cc: Likewise.
* testsuite/ext/random/von_mises_distribution/cons/default.cc: Likewise.
* testsuite/ext/random/von_mises_distribution/cons/parms.cc: Likewise.
* testsuite/ext/random/von_mises_distribution/operators/equal.cc:
Likewise.
* testsuite/ext/random/von_mises_distribution/operators/inequal.cc:
Likewise.
* testsuite/ext/rope/2.cc: Likewise.
* testsuite/ext/rope/3.cc: Likewise.
* testsuite/ext/rope/4.cc: Likewise.
* testsuite/ext/rope/pthread7-rope.cc: Likewise.
* testsuite/ext/special_functions/conf_hyperg/check_nan.cc: Likewise.
* testsuite/ext/special_functions/conf_hyperg/check_value.cc: Likewise.
* testsuite/ext/special_functions/hyperg/check_nan.cc: Likewise.
* testsuite/ext/special_functions/hyperg/check_value.cc: Likewise.
* testsuite/ext/stdio_filebuf/char/10063-1.cc: Likewise.
* testsuite/ext/stdio_filebuf/char/10063-2.cc: Likewise.
* testsuite/ext/stdio_filebuf/char/10063-3.cc: Likewise.
* testsuite/ext/stdio_filebuf/char/2.cc: Likewise.
* testsuite/ext/stdio_sync_filebuf/char/1.cc: Likewise.
* testsuite/ext/stdio_sync_filebuf/char/12048-1.cc: Likewise.
* testsuite/ext/stdio_sync_filebuf/char/12048-2.cc: Likewise.
* testsuite/ext/stdio_sync_filebuf/char/12048-3.cc: Likewise.
* testsuite/ext/stdio_sync_filebuf/char/12048-4.cc: Likewise.
* testsuite/ext/stdio_sync_filebuf/wchar_t/1.cc: Likewise.
* testsuite/ext/stdio_sync_filebuf/wchar_t/12077.cc: Likewise.
* testsuite/ext/stdio_sync_filebuf/wchar_t/12948-1.cc: Likewise.
* testsuite/ext/stdio_sync_filebuf/wchar_t/12948-2.cc: Likewise.
* testsuite/ext/stdio_sync_filebuf/wchar_t/12948-3.cc: Likewise.
* testsuite/ext/stdio_sync_filebuf/wchar_t/12948-4.cc: Likewise.
* testsuite/ext/throw_allocator/variadic_construct.cc: Likewise.
* testsuite/ext/type_traits/add_unsigned.cc: Likewise.
* testsuite/ext/type_traits/remove_unsigned.cc: Likewise.
* testsuite/ext/vstring/capacity/29134.cc: Likewise.
* testsuite/ext/vstring/capacity/shrink_to_fit.cc: Likewise.
* testsuite/ext/vstring/cons/58415-1.cc: Likewise.
* testsuite/ext/vstring/cons/moveable.cc: Likewise.
* testsuite/ext/vstring/element_access/char/58163.cc: Likewise.
* testsuite/ext/vstring/element_access/char/front_back.cc: Likewise.
* testsuite/ext/vstring/element_access/wchar_t/58163.cc: Likewise.
* testsuite/ext/vstring/element_access/wchar_t/front_back.cc: Likewise.
* testsuite/ext/vstring/hash/char/1.cc: Likewise.
* testsuite/ext/vstring/hash/wchar_t/1.cc: Likewise.
* testsuite/ext/vstring/init-list.cc: Likewise.
* testsuite/ext/vstring/inserters_extractors/char/28277.cc: Likewise.
* testsuite/ext/vstring/inserters_extractors/wchar_t/28277.cc: Likewise.
* testsuite/ext/vstring/modifiers/assign/move_assign.cc: Likewise.
* testsuite/ext/vstring/modifiers/pop_back/char/1.cc: Likewise.
* testsuite/ext/vstring/modifiers/pop_back/wchar_t/1.cc: Likewise.
* testsuite/ext/vstring/operators/1.cc: Likewise.
* testsuite/ext/vstring/operators/2.cc: Likewise.
From-SVN: r241164
Ian Lance Taylor [Fri, 14 Oct 2016 13:36:35 +0000 (13:36 +0000)]
runtime: copy cpuprof code from Go 1.7 runtime
This replaces runtime/cpuprof.goc with go/runtime/cpuprof.go and adjusts
the supporting code in runtime/proc.c.
This adds another case where the compiler needs to avoid heap allocation
in the runtime package: when evaluating a method expression into a
closure. Implementing this required moving the relevant code from
do_get_backend to do_flatten, so that I could easily add a temporary
variable. Doing that let me get rid of Bound_method_expression::do_lower.
Reviewed-on: https://go-review.googlesource.com/31050
From-SVN: r241163
Richard Biener [Fri, 14 Oct 2016 12:58:18 +0000 (12:58 +0000)]
re PR tree-optimization/77979 (ICE on valid code at -Os and above on x86_64-linux-gnu: Segmentation fault)
2016-10-14 Richard Biener <rguenther@suse.de>
PR tree-optimization/77979
* tree-vrp.c (compare_name_with_value): Handle released SSA names
in the equivalency sets.
(compare_names): Likewise.
* gcc.dg/torture/pr77979.c: New testcase.
From-SVN: r241162
Martin Liska [Fri, 14 Oct 2016 12:10:16 +0000 (14:10 +0200)]
Test folding of str{n}{case}cmp and memchr
* gcc.dg/tree-ssa/builtins-folding-generic.c: New test.
* gcc.dg/tree-ssa/builtins-folding-gimple.c: Likewise.
* gcc.dg/tree-ssa/builtins-folding-gimple-ub.c: Likewise.
From-SVN: r241161
Martin Liska [Fri, 14 Oct 2016 12:09:51 +0000 (14:09 +0200)]
Fold __builtin_memchr function
* builtins.h(target_char_cst_p): Declare the function.
* builtins.c (fold_builtin_memchr): Remove.
(target_char_cst_p): Move the function from gimple-fold.c.
(fold_builtin_3): Do not call the function.
* gimple-fold.c (gimple_fold_builtin_memchr): New function.
(gimple_fold_builtin): Call the function.
* fold-const-call.c (fold_const_call_1): Handle CFN_BUILT_IN_MEMCHR.
From-SVN: r241160
Martin Liska [Fri, 14 Oct 2016 12:08:27 +0000 (14:08 +0200)]
Fold __builtin_str{n}{case}cmp functions
* builtins.c (fold_builtin_strcmp): Remove function.
(fold_builtin_strncmp): Likewise.
(fold_builtin_2): Remove call of the function.
(fold_builtin_3): Likewise.
* fold-const-call.c (fold_const_call): Add constant folding
for CFN_BUILT_IN_STRCASECMP and CFN_BUILT_IN_STRNCASECMP.
* fold-const-call.h (build_cmp_result): Declare the function.
* gimple-fold.c (gimple_load_first_char): New function.
(gimple_fold_builtin_string_compare): Likewise.
(gimple_fold_builtin): Call the function.
From-SVN: r241159
Jonathan Wakely [Fri, 14 Oct 2016 12:03:47 +0000 (13:03 +0100)]
PR65122 extended alignment support in allocators
PR libstdc++/65122
* include/ext/malloc_allocator.h (malloc_allocator::allocate): Use
aligned_alloc for types with extended alignment if available,
otherwise throw bad_alloc if malloc doesn't return a suitable value.
* include/ext/bitmap_allocator.h (bitmap_allocator::allocate)
(bitmap_allocator::deallocate): Use aligned new/delete for types with
extended alignment.
* include/ext/mt_allocator.h (__mt_alloc::allocate)
(__mt_alloc::deallocate): Likewise.
* include/ext/new_allocator.h (new_allocator::allocate)
(new_allocator::deallocate): Likewise.
* include/ext/pool_allocator.h (__pool_alloc::allocate)
(__pool_alloc::deallocate): Likewise.
* testsuite/20_util/allocator/overaligned.cc: New test.
* testsuite/ext/bitmap_allocator/overaligned.cc: New test.
* testsuite/ext/malloc_allocator/overaligned.cc: New test.
* testsuite/ext/mt_allocator/overaligned.cc: New test.
* testsuite/ext/new_allocator/overaligned.cc: New test.
* testsuite/ext/pool_allocator/overaligned.cc: New test.
From-SVN: r241158
Uros Bizjak [Fri, 14 Oct 2016 11:24:41 +0000 (13:24 +0200)]
Fix gcc.dg/torture/pr77937-[12].c for real.
2016-10-14 Uros Bizjak <ubizjak@gmail.com>
* gcc.dg/torture/pr77937-1.c: Move -O3 to dg-options.
Pass -march=amdfam10 for both i?86-?-* and x86_64-*-*.
* gcc.dg/torture/pr77937-2.c: Likewise.
From-SVN: r241157
Markus Trippelsdorf [Fri, 14 Oct 2016 11:07:13 +0000 (11:07 +0000)]
Fix pr77937-1.c and pr77937-2.c testcases
From-SVN: r241156
Nathan Sidwell [Fri, 14 Oct 2016 10:51:58 +0000 (10:51 +0000)]
* gcov-io.c (gcov_open): Deconstify 'mode'.
From-SVN: r241155
Eric Botcazou [Fri, 14 Oct 2016 10:28:27 +0000 (10:28 +0000)]
re PR ada/77968 (ICEs with -flto on gnat.dg)
PR ada/77968
* gcc-interface/utils.c (create_var_decl): Do not clear TREE_READONLY
in LTO mode for an external variable.
(can_materialize_object_renaming_p): Move up.
From-SVN: r241154
Tim Shen [Fri, 14 Oct 2016 09:58:05 +0000 (09:58 +0000)]
re PR libstdc++/77944 (FAIL: 20_util/variant/compile.cc (test for excess errors))
PR libstdc++/77944
* include/std/variant: include <bits/funcexcept.h> for __try and __catch.
From-SVN: r241153
Martin Liska [Fri, 14 Oct 2016 09:54:32 +0000 (11:54 +0200)]
Support only \0-terminated string in c_getstr and return
* fold-const.c (c_getstr): Support of properly \0-terminated
string constants. New argument is added.
* fold-const.h: New argument is added.
From-SVN: r241152
Jonathan Wakely [Fri, 14 Oct 2016 09:12:49 +0000 (10:12 +0100)]
Simplify reference_wrapper nested typedefs
* include/std/functional (_Reference_wrapper_base_impl): Remove.
(_Refwrap_base_arg1, _Refwrap_base_arg2): New helpers using __void_t.
(_Reference_wrapper_base): Inherit from new helpers.
From-SVN: r241151
Andre Vehreschild [Fri, 14 Oct 2016 08:52:10 +0000 (10:52 +0200)]
coarray_38.f90: Expect error message.
gcc/testsuite/ChangeLog:
2016-10-14 Andre Vehreschild <vehre@gcc.gnu.org>
* gfortran.dg/coarray_38.f90: Expect error message.
gcc/fortran/ChangeLog:
2016-10-14 Andre Vehreschild <vehre@gcc.gnu.org>
* resolve.c (resolve_symbol): Add unimplemented message for
polymorphic types with allocatable/pointer components and coarray=lib.
From-SVN: r241150
Kyrylo Tkachov [Fri, 14 Oct 2016 08:40:04 +0000 (08:40 +0000)]
[AArch64] Add spellchecking hints for -march,-mcpu,-mtune and their attributes
* config/aarch64/aarch64.c (aarch64_print_hint_for_core_or_arch):
New function.
(aarch64_print_hint_for_core): Likewise.
(aarch64_print_hint_for_arch): Likewise.
(aarch64_validate_march): Use it. Fix indentation in type signature.
(aarch64_validate_mcpu): Use aarch64_print_hint_for_core_or_arch.
(aarch64_validate_mtune): Likewise.
(aarch64_handle_attr_arch): Likewise.
(aarch64_handle_attr_cpu): Likewise.
(aarch64_handle_attr_tune): Likewise.
* gcc.target/aarch64/spellcheck_1.c: New test.
* gcc.target/aarch64/spellcheck_2.c: Likewise.
* gcc.target/aarch64/spellcheck_3.c: Likewise.
* gcc.target/aarch64/spellcheck_4.c: Likewise.
* gcc.target/aarch64/spellcheck_5.c: Likewise.
* gcc.target/aarch64/spellcheck_6.c: Likewise.
From-SVN: r241149
Eric Botcazou [Fri, 14 Oct 2016 06:14:15 +0000 (06:14 +0000)]
Fix long line
From-SVN: r241148
Prathamesh Kulkarni [Fri, 14 Oct 2016 05:57:33 +0000 (05:57 +0000)]
optabs.def: Remove optab function gen_int_libfunc for sdivmod_optab and udivmod_optab.
2016-10-14 Prathamesh Kulkarni <prathamesh.kulkarni@linaro.org>
* optabs.def: Remove optab function gen_int_libfunc for sdivmod_optab and
udivmod_optab.
From-SVN: r241147
GCC Administrator [Fri, 14 Oct 2016 00:16:15 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r241146
Martin Sebor [Thu, 13 Oct 2016 22:26:36 +0000 (16:26 -0600)]
PR c++/71912 - [6/7 regression] flexible array in struct in union rejected
gcc/cp/ChangeLog:
PR c++/71912
* class.c (struct flexmems_t): Add members.
(find_flexarrays): Add arguments. Correct handling of anonymous
structs.
(diagnose_flexarrays): Adjust to issue warnings in addition to errors.
(check_flexarrays): Add argument.
(diagnose_invalid_flexarray): New functions.
gcc/testsuite/ChangeLog:
PR c++/71912
* g++.dg/ext/flexary4.C: Adjust.
* g++.dg/ext/flexary5.C: Same.
* g++.dg/ext/flexary9.C: Same.
* g++.dg/ext/flexary19.C: New test.
* g++.dg/ext/flexary18.C: New test.
* g++.dg/torture/pr64312.C: Add a dg-error directive to an ill-formed
regression test.
* g++.dg/compat/struct-layout-1_generate.c (subfield): Add argument.
Avoid generating a flexible array member in an array.
From-SVN: r241143
Andreas Schwab [Thu, 13 Oct 2016 20:19:42 +0000 (20:19 +0000)]
m68k.c (m68k_option_override): Check opt_fstack_limit_symbol_arg and opt_fstack_limit_register_no instead of...
gcc/
* config/m68k/m68k.c (m68k_option_override): Check
opt_fstack_limit_symbol_arg and opt_fstack_limit_register_no
instead of stack_limit_rtx.
gcc/testsuite/
* gcc.target/m68k/stack-limit-1.c: Expect warning on line 0.
From-SVN: r241140
Bill Schmidt [Thu, 13 Oct 2016 19:50:41 +0000 (19:50 +0000)]
re PR tree-optimization/77937 (ICE: in replace_one_candidate, at gimple-ssa-strength-reduction.c:3370)
2016-10-13 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
PR tree-optimization/77937
* gcc.dg/torture/pr77937-1.c: New.
* gcc.dg/torture/pr77937-2.c: New.
From-SVN: r241139
Paolo Carlini [Thu, 13 Oct 2016 19:37:45 +0000 (19:37 +0000)]
container_access.cc: Remove 'test' variables.
2016-10-13 Paolo Carlini <paolo.carlini@oracle.com>
* testsuite/24_iterators/container_access.cc: Remove 'test' variables.
* testsuite/24_iterators/istream_iterator/2.cc: Likewise.
* testsuite/24_iterators/istreambuf_iterator/2.cc: Likewise.
* testsuite/24_iterators/istreambuf_iterator/2627.cc: Likewise.
* testsuite/24_iterators/operations/next.cc: Likewise.
* testsuite/24_iterators/operations/prev.cc: Likewise.
* testsuite/24_iterators/ostreambuf_iterator/2.cc: Likewise.
* testsuite/24_iterators/random_access_iterator/26020.cc: Likewise.
* testsuite/24_iterators/range_access_cpp14.cc: Likewise.
* testsuite/24_iterators/reverse_iterator/11729.cc: Likewise.
* testsuite/24_iterators/reverse_iterator/3.cc: Likewise.
* testsuite/25_algorithms/adjacent_find/vectorbool.cc: Likewise.
* testsuite/25_algorithms/all_of/1.cc: Likewise.
* testsuite/25_algorithms/any_of/1.cc: Likewise.
* testsuite/25_algorithms/binary_search/2.cc: Likewise.
* testsuite/25_algorithms/binary_search/partitioned.cc: Likewise.
* testsuite/25_algorithms/clamp/1.cc: Likewise.
* testsuite/25_algorithms/clamp/2.cc: Likewise.
* testsuite/25_algorithms/copy/1.cc: Likewise.
* testsuite/25_algorithms/copy/2.cc: Likewise.
* testsuite/25_algorithms/copy/3.cc: Likewise.
* testsuite/25_algorithms/copy/34595.cc: Likewise.
* testsuite/25_algorithms/copy/4.cc: Likewise.
* testsuite/25_algorithms/copy/deque_iterators/1.cc: Likewise.
* testsuite/25_algorithms/copy/move_iterators/1.cc: Likewise.
* testsuite/25_algorithms/copy/streambuf_iterators/char/1.cc: Likewise.
* testsuite/25_algorithms/copy/streambuf_iterators/char/2.cc: Likewise.
* testsuite/25_algorithms/copy/streambuf_iterators/char/3.cc: Likewise.
* testsuite/25_algorithms/copy/streambuf_iterators/char/4.cc: Likewise.
* testsuite/25_algorithms/copy/streambuf_iterators/wchar_t/1.cc:
Likewise.
* testsuite/25_algorithms/copy/streambuf_iterators/wchar_t/2.cc:
Likewise.
* testsuite/25_algorithms/copy/streambuf_iterators/wchar_t/3.cc:
Likewise.
* testsuite/25_algorithms/copy/streambuf_iterators/wchar_t/4.cc:
Likewise.
* testsuite/25_algorithms/copy_backward/deque_iterators/1.cc: Likewise.
* testsuite/25_algorithms/copy_backward/move_iterators/1.cc: Likewise.
* testsuite/25_algorithms/copy_n/1.cc: Likewise.
* testsuite/25_algorithms/copy_n/2.cc: Likewise.
* testsuite/25_algorithms/copy_n/3.cc: Likewise.
* testsuite/25_algorithms/copy_n/4.cc: Likewise.
* testsuite/25_algorithms/copy_n/50119.cc: Likewise.
* testsuite/25_algorithms/copy_n/move_iterators/1.cc: Likewise.
* testsuite/25_algorithms/equal_range/2.cc: Likewise.
* testsuite/25_algorithms/equal_range/partitioned.cc: Likewise.
* testsuite/25_algorithms/fill/1.cc: Likewise.
* testsuite/25_algorithms/fill/2.cc: Likewise.
* testsuite/25_algorithms/fill/3.cc: Likewise.
* testsuite/25_algorithms/fill/4.cc: Likewise.
* testsuite/25_algorithms/fill_n/1.cc: Likewise.
* testsuite/25_algorithms/find/39546.cc: Likewise.
* testsuite/25_algorithms/find/istreambuf_iterators/char/1.cc: Likewise.
* testsuite/25_algorithms/find/istreambuf_iterators/char/2.cc: Likewise.
* testsuite/25_algorithms/find/istreambuf_iterators/wchar_t/1.cc:
Likewise.
* testsuite/25_algorithms/find/istreambuf_iterators/wchar_t/2.cc:
Likewise.
* testsuite/25_algorithms/find_if/1.cc: Likewise.
* testsuite/25_algorithms/find_if_not/1.cc: Likewise.
* testsuite/25_algorithms/for_each/1.cc: Likewise.
* testsuite/25_algorithms/heap/1.cc: Likewise.
* testsuite/25_algorithms/heap/moveable.cc: Likewise.
* testsuite/25_algorithms/heap/moveable2.cc: Likewise.
* testsuite/25_algorithms/heap/vectorbool.cc: Likewise.
* testsuite/25_algorithms/includes/1.cc: Likewise.
* testsuite/25_algorithms/inplace_merge/1.cc: Likewise.
* testsuite/25_algorithms/inplace_merge/49559.cc: Likewise.
* testsuite/25_algorithms/inplace_merge/moveable.cc: Likewise.
* testsuite/25_algorithms/inplace_merge/moveable2.cc: Likewise.
* testsuite/25_algorithms/is_heap/1.cc: Likewise.
* testsuite/25_algorithms/is_heap_until/1.cc: Likewise.
* testsuite/25_algorithms/is_partitioned/1.cc: Likewise.
* testsuite/25_algorithms/is_permutation/1.cc: Likewise.
* testsuite/25_algorithms/is_permutation/2.cc: Likewise.
* testsuite/25_algorithms/is_permutation/vectorbool.cc: Likewise.
* testsuite/25_algorithms/is_sorted/1.cc: Likewise.
* testsuite/25_algorithms/is_sorted_until/1.cc: Likewise.
* testsuite/25_algorithms/iter_swap/20577.cc: Likewise.
* testsuite/25_algorithms/lower_bound/2.cc: Likewise.
* testsuite/25_algorithms/lower_bound/partitioned.cc: Likewise.
* testsuite/25_algorithms/make_heap/complexity.cc: Likewise.
* testsuite/25_algorithms/max/1.cc: Likewise.
* testsuite/25_algorithms/max/2.cc: Likewise.
* testsuite/25_algorithms/max/3.cc: Likewise.
* testsuite/25_algorithms/max/37547.cc: Likewise.
* testsuite/25_algorithms/max/4.cc: Likewise.
* testsuite/25_algorithms/min/1.cc: Likewise.
* testsuite/25_algorithms/min/2.cc: Likewise.
* testsuite/25_algorithms/min/3.cc: Likewise.
* testsuite/25_algorithms/min/37547.cc: Likewise.
* testsuite/25_algorithms/min/4.cc: Likewise.
* testsuite/25_algorithms/minmax/1.cc: Likewise.
* testsuite/25_algorithms/minmax/2.cc: Likewise.
* testsuite/25_algorithms/minmax/3.cc: Likewise.
* testsuite/25_algorithms/minmax/37547.cc: Likewise.
* testsuite/25_algorithms/minmax_element/1.cc: Likewise.
* testsuite/25_algorithms/move/1.cc: Likewise.
* testsuite/25_algorithms/move/deque_iterators/1.cc: Likewise.
* testsuite/25_algorithms/move_backward/1.cc: Likewise.
* testsuite/25_algorithms/move_backward/deque_iterators/1.cc: Likewise.
* testsuite/25_algorithms/next_permutation/moveable.cc: Likewise.
* testsuite/25_algorithms/none_of/1.cc: Likewise.
* testsuite/25_algorithms/nth_element/1.cc: Likewise.
* testsuite/25_algorithms/nth_element/2.cc: Likewise.
* testsuite/25_algorithms/nth_element/3.cc: Likewise.
* testsuite/25_algorithms/nth_element/moveable.cc: Likewise.
* testsuite/25_algorithms/nth_element/random_test.cc: Likewise.
* testsuite/25_algorithms/partial_sort/2.cc: Likewise.
* testsuite/25_algorithms/partial_sort/check_compare_by_value.cc:
Likewise.
* testsuite/25_algorithms/partial_sort/moveable.cc: Likewise.
* testsuite/25_algorithms/partial_sort/random_test.cc: Likewise.
* testsuite/25_algorithms/partial_sort_copy/2.cc: Likewise.
* testsuite/25_algorithms/partial_sort_copy/random_test.cc: Likewise.
* testsuite/25_algorithms/partition/1.cc: Likewise.
* testsuite/25_algorithms/partition/moveable.cc: Likewise.
* testsuite/25_algorithms/partition_copy/1.cc: Likewise.
* testsuite/25_algorithms/partition_point/1.cc: Likewise.
* testsuite/25_algorithms/pop_heap/complexity.cc: Likewise.
* testsuite/25_algorithms/prev_permutation/moveable.cc: Likewise.
* testsuite/25_algorithms/push_heap/complexity.cc: Likewise.
* testsuite/25_algorithms/random_shuffle/1.cc: Likewise.
* testsuite/25_algorithms/random_shuffle/moveable.cc: Likewise.
* testsuite/25_algorithms/rotate/1.cc: Likewise.
* testsuite/25_algorithms/rotate/moveable.cc: Likewise.
* testsuite/25_algorithms/rotate/moveable2.cc: Likewise.
* testsuite/25_algorithms/rotate/rotate.cc: Likewise.
* testsuite/25_algorithms/search/1.cc: Likewise.
* testsuite/25_algorithms/search_n/58358.cc: Likewise.
* testsuite/25_algorithms/shuffle/1.cc: Likewise.
* testsuite/25_algorithms/sort/1.cc: Likewise.
* testsuite/25_algorithms/sort/check_compare_by_value.cc: Likewise.
* testsuite/25_algorithms/sort/moveable.cc: Likewise.
* testsuite/25_algorithms/sort/random_test.cc: Likewise.
* testsuite/25_algorithms/sort/vectorbool.cc: Likewise.
* testsuite/25_algorithms/sort_heap/check_compare_by_value.cc: Likewise.
* testsuite/25_algorithms/sort_heap/complexity.cc: Likewise.
* testsuite/25_algorithms/stable_partition/1.cc: Likewise.
* testsuite/25_algorithms/stable_partition/mem_check.cc: Likewise.
* testsuite/25_algorithms/stable_partition/moveable.cc: Likewise.
* testsuite/25_algorithms/stable_sort/2.cc: Likewise.
* testsuite/25_algorithms/stable_sort/3.cc: Likewise.
* testsuite/25_algorithms/stable_sort/49559.cc: Likewise.
* testsuite/25_algorithms/stable_sort/check_compare_by_value.cc:
Likewise.
* testsuite/25_algorithms/stable_sort/mem_check.cc: Likewise.
* testsuite/25_algorithms/stable_sort/moveable.cc: Likewise.
* testsuite/25_algorithms/stable_sort/moveable2.cc: Likewise.
* testsuite/25_algorithms/swap_ranges/1.cc: Likewise.
* testsuite/25_algorithms/unique/11480.cc: Likewise.
* testsuite/25_algorithms/unique/2.cc: Likewise.
* testsuite/25_algorithms/unique/moveable.cc: Likewise.
* testsuite/25_algorithms/unique_copy/1.cc: Likewise.
* testsuite/25_algorithms/unique_copy/2.cc: Likewise.
* testsuite/25_algorithms/unique_copy/26133.cc: Likewise.
* testsuite/25_algorithms/upper_bound/2.cc: Likewise.
* testsuite/25_algorithms/upper_bound/partitioned.cc: Likewise.
* testsuite/28_regex/algorithms/regex_match/awk/cstring_01.cc: Likewise.
* testsuite/28_regex/algorithms/regex_match/basic/empty_range.cc:
Likewise.
* testsuite/28_regex/algorithms/regex_match/basic/string_01.cc:
Likewise.
* testsuite/28_regex/algorithms/regex_match/basic/
string_range_00_03.cc: Likewise.
* testsuite/28_regex/algorithms/regex_match/basic/
string_range_01_03.cc: Likewise.
* testsuite/28_regex/algorithms/regex_match/basic/
string_range_02_03.cc: Likewise.
* testsuite/28_regex/algorithms/regex_match/cstring_bracket_01.cc:
Likewise.
* testsuite/28_regex/algorithms/regex_match/ecma/char/53622.cc:
Likewise.
* testsuite/28_regex/algorithms/regex_match/ecma/char/57173.cc:
Likewise.
* testsuite/28_regex/algorithms/regex_match/ecma/char/58576.cc:
Likewise.
* testsuite/28_regex/algorithms/regex_match/ecma/char/68863.cc:
Likewise.
* testsuite/28_regex/algorithms/regex_match/ecma/char/anymatcher.cc:
Likewise.
* testsuite/28_regex/algorithms/regex_match/ecma/char/backref.cc:
Likewise.
* testsuite/28_regex/algorithms/regex_match/ecma/char/empty_range.cc:
Likewise.
* testsuite/28_regex/algorithms/regex_match/ecma/char/emptygroup.cc:
Likewise.
* testsuite/28_regex/algorithms/regex_match/ecma/char/hex.cc: Likewise.
* testsuite/28_regex/algorithms/regex_match/ecma/char/quoted_char.cc:
Likewise.
* testsuite/28_regex/algorithms/regex_match/ecma/char/ungreedy.cc:
Likewise.
* testsuite/28_regex/algorithms/regex_match/ecma/wchar_t/63199.cc:
Likewise.
* testsuite/28_regex/algorithms/regex_match/ecma/wchar_t/
anymatcher.cc: Likewise.
* testsuite/28_regex/algorithms/regex_match/ecma/wchar_t/cjk_match.cc:
Likewise.
* testsuite/28_regex/algorithms/regex_match/ecma/wchar_t/hex.cc:
Likewise.
* testsuite/28_regex/algorithms/regex_match/extended/cstring_plus.cc:
Likewise.
* testsuite/28_regex/algorithms/regex_match/extended/
cstring_questionmark.cc: Likewise.
* testsuite/28_regex/algorithms/regex_match/extended/
cstring_range.cc: Likewise.
* testsuite/28_regex/algorithms/regex_match/extended/string_any.cc:
Likewise.
* testsuite/28_regex/algorithms/regex_match/extended/
string_range_00_03.cc: Likewise.
* testsuite/28_regex/algorithms/regex_match/extended/
string_range_01_03.cc: Likewise.
* testsuite/28_regex/algorithms/regex_match/extended/
string_range_02_03.cc: Likewise.
* testsuite/28_regex/algorithms/regex_match/extended/
wstring_locale.cc: Likewise.
* testsuite/28_regex/algorithms/regex_replace/char/basic_replace.cc:
Likewise.
* testsuite/28_regex/algorithms/regex_replace/char/dr2213.cc: Likewise.
* testsuite/28_regex/algorithms/regex_search/61720.cc: Likewise.
* testsuite/28_regex/algorithms/regex_search/basic/string_01.cc:
Likewise.
* testsuite/28_regex/algorithms/regex_search/ecma/assertion.cc:
Likewise.
* testsuite/28_regex/algorithms/regex_search/ecma/flags.cc: Likewise.
* testsuite/28_regex/algorithms/regex_search/ecma/greedy.cc: Likewise.
* testsuite/28_regex/algorithms/regex_search/ecma/string_01.cc:
Likewise.
* testsuite/28_regex/basic_regex/assign/char/cstring.cc: Likewise.
* testsuite/28_regex/basic_regex/assign/char/cstring_op.cc: Likewise.
* testsuite/28_regex/basic_regex/assign/char/moveable.cc: Likewise.
* testsuite/28_regex/basic_regex/assign/char/pstring.cc: Likewise.
* testsuite/28_regex/basic_regex/assign/char/range.cc: Likewise.
* testsuite/28_regex/basic_regex/assign/char/string.cc: Likewise.
* testsuite/28_regex/basic_regex/assign/char/string_op.cc: Likewise.
* testsuite/28_regex/basic_regex/assign/wchar_t/cstring.cc: Likewise.
* testsuite/28_regex/basic_regex/assign/wchar_t/cstring_op.cc: Likewise.
* testsuite/28_regex/basic_regex/assign/wchar_t/pstring.cc: Likewise.
* testsuite/28_regex/basic_regex/assign/wchar_t/range.cc: Likewise.
* testsuite/28_regex/basic_regex/assign/wchar_t/string.cc: Likewise.
* testsuite/28_regex/basic_regex/assign/wchar_t/string_op.cc: Likewise.
* testsuite/28_regex/basic_regex/ctors/basic/pstring_wchar_t.cc:
Likewise.
* testsuite/28_regex/basic_regex/ctors/basic/string_range_01_02_03.cc:
Likewise.
* testsuite/28_regex/basic_regex/ctors/extended/cstring.cc: Likewise.
* testsuite/28_regex/basic_regex/ctors/extended/
string_range_01_02_03.cc: Likewise.
* testsuite/28_regex/basic_regex/ctors/move_char.cc: Likewise.
* testsuite/28_regex/basic_regex/ctors/string_wchar_t.cc: Likewise.
* testsuite/28_regex/basic_regex/ctors/wchar_t/cstring.cc: Likewise.
* testsuite/28_regex/basic_regex/ctors/wchar_t/default.cc: Likewise.
* testsuite/28_regex/basic_regex/ctors/wchar_t/range.cc: Likewise.
* testsuite/28_regex/basic_regex/imbue/string.cc: Likewise.
* testsuite/28_regex/constants/error_type.cc: Likewise.
* testsuite/28_regex/constants/match_flag_type.cc: Likewise.
* testsuite/28_regex/init-list.cc: Likewise.
* testsuite/28_regex/iterators/regex_iterator/char/64140.cc: Likewise.
* testsuite/28_regex/iterators/regex_iterator/char/string_01.cc:
Likewise.
* testsuite/28_regex/iterators/regex_iterator/char/
string_position_01.cc
* testsuite/28_regex/iterators/regex_iterator/ctors/char/default.cc:
Likewise.
* testsuite/28_regex/iterators/regex_iterator/ctors/wchar_t/
default.cc: Likewise.
* testsuite/28_regex/iterators/regex_iterator/typedefs.cc: Likewise.
* testsuite/28_regex/iterators/regex_iterator/wchar_t/string_01.cc:
Likewise.
* testsuite/28_regex/iterators/regex_iterator/wchar_t/string_02.cc:
Likewise.
* testsuite/28_regex/iterators/regex_token_iterator/64303.cc: Likewise.
* testsuite/28_regex/iterators/regex_token_iterator/char/string_01.cc:
Likewise.
* testsuite/28_regex/iterators/regex_token_iterator/ctors/char/
default.cc: Likewise.
* testsuite/28_regex/iterators/regex_token_iterator/ctors/wchar_t/
default.cc: Likewise.
* testsuite/28_regex/iterators/regex_token_iterator/typedefs.cc:
Likewise.
* testsuite/28_regex/iterators/regex_token_iterator/wchar_t/
string_01.cc: Likewise.
* testsuite/28_regex/iterators/regex_token_iterator/wchar_t/
wstring_02.cc: Likewise.
* testsuite/28_regex/match_results/ctors/char/default.cc: Likewise.
* testsuite/28_regex/match_results/ctors/wchar_t/default.cc: Likewise.
* testsuite/28_regex/match_results/format.cc: Likewise.
* testsuite/28_regex/match_results/out_of_range_submatches.cc: Likewise.
* testsuite/28_regex/match_results/swap.cc: Likewise.
* testsuite/28_regex/match_results/typedefs.cc: Likewise.
* testsuite/28_regex/regex_error/regex_error.cc: Likewise.
* testsuite/28_regex/regression.cc: Likewise.
* testsuite/28_regex/sub_match/cast_char.cc: Likewise.
* testsuite/28_regex/sub_match/cast_wchar_t.cc: Likewise.
* testsuite/28_regex/sub_match/embedded_zeros_cmp.cc: Likewise.
* testsuite/28_regex/sub_match/length.cc: Likewise.
* testsuite/28_regex/traits/char/ctor.cc: Likewise.
* testsuite/28_regex/traits/char/isctype.cc: Likewise.
* testsuite/28_regex/traits/char/length.cc: Likewise.
* testsuite/28_regex/traits/char/lookup_classname.cc: Likewise.
* testsuite/28_regex/traits/char/lookup_collatename.cc: Likewise.
* testsuite/28_regex/traits/char/transform.cc: Likewise.
* testsuite/28_regex/traits/char/transform_primary.cc: Likewise.
* testsuite/28_regex/traits/char/translate.cc: Likewise.
* testsuite/28_regex/traits/char/translate_nocase.cc: Likewise.
* testsuite/28_regex/traits/char/user_defined.cc: Likewise.
* testsuite/28_regex/traits/char/value.cc: Likewise.
* testsuite/28_regex/traits/wchar_t/ctor.cc: Likewise.
* testsuite/28_regex/traits/wchar_t/isctype.cc: Likewise.
* testsuite/28_regex/traits/wchar_t/length.cc: Likewise.
* testsuite/28_regex/traits/wchar_t/lookup_classname.cc: Likewise.
* testsuite/28_regex/traits/wchar_t/lookup_collatename.cc: Likewise.
* testsuite/28_regex/traits/wchar_t/transform.cc: Likewise.
* testsuite/28_regex/traits/wchar_t/transform_primary.cc: Likewise.
* testsuite/28_regex/traits/wchar_t/translate.cc: Likewise.
* testsuite/28_regex/traits/wchar_t/translate_nocase.cc: Likewise.
* testsuite/28_regex/traits/wchar_t/user_defined.cc: Likewise.
* testsuite/28_regex/traits/wchar_t/value.cc: Likewise.
* testsuite/29_atomics/atomic/60658.cc: Likewise.
* testsuite/29_atomics/atomic/operators/51811.cc: Likewise.
* testsuite/29_atomics/atomic_flag/clear/1.cc: Likewise.
* testsuite/backward/11460.cc: Likewise.
* testsuite/backward/hash_map/1.cc: Likewise.
* testsuite/backward/hash_map/25896.cc: Likewise.
* testsuite/backward/hash_set/1.cc: Likewise.
* testsuite/backward/hash_set/25896.cc: Likewise.
* testsuite/decimal/binary-arith.cc: Likewise.
* testsuite/decimal/comparison.cc: Likewise.
* testsuite/decimal/compound-assignment-memfunc.cc: Likewise.
* testsuite/decimal/compound-assignment.cc: Likewise.
* testsuite/decimal/conversion-from-float.cc: Likewise.
* testsuite/decimal/conversion-from-integral.cc: Likewise.
* testsuite/decimal/conversion-to-generic-float.cc: Likewise.
* testsuite/decimal/conversion-to-integral.cc: Likewise.
* testsuite/decimal/ctor.cc: Likewise.
* testsuite/decimal/incdec-memfunc.cc: Likewise.
* testsuite/decimal/incdec.cc: Likewise.
* testsuite/decimal/make-decimal.cc: Likewise.
* testsuite/decimal/pr54036-1.cc: Likewise.
* testsuite/decimal/pr54036-2.cc: Likewise.
* testsuite/decimal/pr54036-3.cc: Likewise.
* testsuite/decimal/unary-arith.cc: Likewise.
* testsuite/special_functions/01_assoc_laguerre/check_nan.cc: Likewise.
* testsuite/special_functions/01_assoc_laguerre/check_value.cc:
Likewise.
* testsuite/special_functions/02_assoc_legendre/check_nan.cc: Likewise.
* testsuite/special_functions/02_assoc_legendre/check_value.cc:
Likewise.
* testsuite/special_functions/03_beta/check_nan.cc: Likewise.
* testsuite/special_functions/03_beta/check_value.cc: Likewise.
* testsuite/special_functions/04_comp_ellint_1/check_nan.cc: Likewise.
* testsuite/special_functions/04_comp_ellint_1/check_value.cc: Likewise.
* testsuite/special_functions/05_comp_ellint_2/check_nan.cc: Likewise.
* testsuite/special_functions/05_comp_ellint_2/check_value.cc: Likewise.
* testsuite/special_functions/06_comp_ellint_3/check_nan.cc: Likewise.
* testsuite/special_functions/06_comp_ellint_3/check_value.cc: Likewise.
* testsuite/special_functions/07_cyl_bessel_i/check_nan.cc: Likewise.
* testsuite/special_functions/07_cyl_bessel_i/check_value.cc: Likewise.
* testsuite/special_functions/07_cyl_bessel_i/pr56216.cc: Likewise.
* testsuite/special_functions/08_cyl_bessel_j/check_nan.cc: Likewise.
* testsuite/special_functions/08_cyl_bessel_j/check_value.cc: Likewise.
* testsuite/special_functions/09_cyl_bessel_k/check_nan.cc: Likewise.
* testsuite/special_functions/09_cyl_bessel_k/check_value.cc: Likewise.
* testsuite/special_functions/10_cyl_neumann/check_nan.cc: Likewise.
* testsuite/special_functions/10_cyl_neumann/check_value.cc: Likewise.
* testsuite/special_functions/11_ellint_1/check_nan.cc: Likewise.
* testsuite/special_functions/11_ellint_1/check_value.cc: Likewise.
* testsuite/special_functions/12_ellint_2/check_nan.cc: Likewise.
* testsuite/special_functions/12_ellint_2/check_value.cc: Likewise.
* testsuite/special_functions/13_ellint_3/check_nan.cc: Likewise.
* testsuite/special_functions/13_ellint_3/check_value.cc: Likewise.
* testsuite/special_functions/14_expint/check_nan.cc: Likewise.
* testsuite/special_functions/14_expint/check_value.cc: Likewise.
* testsuite/special_functions/15_hermite/check_nan.cc: Likewise.
* testsuite/special_functions/15_hermite/check_value.cc: Likewise.
* testsuite/special_functions/16_laguerre/check_nan.cc: Likewise.
* testsuite/special_functions/16_laguerre/check_value.cc: Likewise.
* testsuite/special_functions/17_legendre/check_nan.cc: Likewise.
* testsuite/special_functions/17_legendre/check_value.cc: Likewise.
* testsuite/special_functions/18_riemann_zeta/check_nan.cc: Likewise.
* testsuite/special_functions/18_riemann_zeta/check_value.cc: Likewise.
* testsuite/special_functions/19_sph_bessel/check_nan.cc: Likewise.
* testsuite/special_functions/19_sph_bessel/check_value.cc: Likewise.
* testsuite/special_functions/20_sph_legendre/check_nan.cc: Likewise.
* testsuite/special_functions/20_sph_legendre/check_value.cc: Likewise.
* testsuite/special_functions/21_sph_neumann/check_nan.cc: Likewise.
* testsuite/special_functions/21_sph_neumann/check_value.cc: Likewise.
* testsuite/tr2/bases/value.cc: Likewise.
* testsuite/tr2/direct_bases/value.cc: Likewise.
* testsuite/util/debug/checks.h: Likewise.
* testsuite/util/debug/unordered_checks.h: Likewise.
* testsuite/util/testsuite_allocator.h: Likewise.
* testsuite/util/testsuite_api.h: Likewise.
* testsuite/util/testsuite_common_types.h: Likewise.
* testsuite/util/testsuite_random.h: Likewise.
* testsuite/util/testsuite_rvalref.h: Likewise.
From-SVN: r241138
Jason Merrill [Thu, 13 Oct 2016 19:26:54 +0000 (15:26 -0400)]
Implement P0386R2 - C++17 inline variables
2016-10-11 Jakub Jelinek <jakub@redhat.com>
* dwarf2out.c (gen_member_die): Handle inline static data member
definitions.
c-family/
* c-cppbuiltin.c (c_cpp_builtins): Add __cpp_inline_variables.
cp/
* cp-tree.h (struct lang_type): Shrink language field to 1 bit
from 4. Add var_declared_inline_p field. Mention 2 spare bits.
(DECL_VAR_DECLARED_INLINE_P): Define.
(SET_DECL_VAR_DECLARED_INLINE_P): Define.
(DECL_INLINE_VAR_P): Define.
(diagnose_inline_vars_for_namespace): Declare.
* decl.c (diagnose_inline_vars_for_namespace): New function.
(duplicate_decls): For static data members copy
DECL_DECLARED_CONSTEXPR_P.
(redeclaration_error_message): Handle C++17 redundant redeclaration
of constexpr static data member outside of class.
(maybe_commonize_var): Handle inline variables.
(check_initializer): Ignore inline variables for diagnostics.
Adjust diagnostic wording for C++17.
(make_rtl_for_nonlocal_decl): Allow in-class definition of
inline static data members.
(bad_specifiers): Don't diagnose inline on variables here.
(grokvardecl): Add inlinep argument, non-static const inline variables
are TREE_PUBLIC.
(check_static_variable_definition): Return early also for inline
variables.
(grokdeclarator): Handle inline variables and inline static data
members.
* typeck2.c (store_init_value): Don't diagnose non-constant
initializers for non-constexpr inline static data members.
* decl2.c (vague_linkage_p): Return true for inline variables.
(c_parse_final_cleanups): In-class declaration of inline static
data members is a definition. Call diagnose_inline_vars_for_namespace
through walk_namespaces.
* pt.c (instantiate_decl): Set pattern_defined for in-class definitions
of inline static data members.
From-SVN: r241137
Nathan Sidwell [Thu, 13 Oct 2016 18:36:31 +0000 (18:36 +0000)]
gcov-io.c (gcov_open): Fix documentation.
* gcov-io.c (gcov_open): Fix documentation. Simplify setting
gcov_var.mode. Remove unnecessary fstat.
From-SVN: r241136
Segher Boessenkool [Thu, 13 Oct 2016 18:25:15 +0000 (20:25 +0200)]
Create the *logue in the same order as before (PR77962)
PR77962 shows Go failing on 32-bit x86. This happens because the i386
port requires the split stack prologue to be created before the normal
prologue, and my previous patch changed it to be the other way around.
This patch changes it back. Things will be exactly as before for targets
that do not do shrink-wrapping for separate components. For targets
that *do* support it, all three prologue/epilogue creation functions
will now be called twice for functions that have anything wrapped
separately (instead of just the prologue created twice).
PR bootstrap/77962
* function.c (thread_prologue_and_epilogue_insns): Call all
make_*logue_seq in the same order as traditional. Call them
all a second time if shrink_wrapped-separate.
From-SVN: r241135
Marek Polacek [Thu, 13 Oct 2016 18:20:32 +0000 (18:20 +0000)]
Makefile.in (insn-attrtab.o-warn, [...]): Don't use -Wno-error.
* Makefile.in (insn-attrtab.o-warn, insn-dfatab.o-warn,
insn-latencytab.o-warn, insn-output.o-warn, insn-emit.o-warn): Don't
use -Wno-error.
From-SVN: r241134
Sandra Loosemore [Thu, 13 Oct 2016 18:09:26 +0000 (14:09 -0400)]
Fix ChangeLog for r241132
From-SVN: r241133
Sandra Loosemore [Thu, 13 Oct 2016 17:55:00 +0000 (13:55 -0400)]
scd42-1.c: Skip if -mcpu incompatible with Xscale is specified, not just -march.
2016-10-13 Sandra Loosemore <sandra@codesourcery.com>
gcc/testsuite/
* scd42-1.c: Skip if -mcpu incompatible with Xscale is specified,
not just -march.
* scd42-2.c: Fix existing logic to skip if -mcpu is incompatible
with Xscale.
From-SVN: r241132
Jonathan Wakely [Thu, 13 Oct 2016 16:59:19 +0000 (17:59 +0100)]
Avoid #include <functional> in other headers
* include/bits/shared_ptr_base.h: Include <functional>.
[!__cpp_rtti]: Do not include <typeinfo>.
* include/experimental/array: Do not include <functional>.
* include/experimental/memory: Include <bits/functional_hash.h>
instead of <functional>.
* include/experimental/propagate_const: Include <bits/stl_function.h>,
<bits/functional_hash.h>, and <bits/move.h> instead of <functional>.
* include/experimental/tuple: Do not include <functional>.
* include/std/future: Include <functional>.
* include/std/memory: Do not include <functional>.
* include/std/mutex: [_GLIBCXX_HAVE_TLS]: Likewise.
* testsuite/20_util/shared_ptr/thread/default_weaktoshared.cc: Add
missing includes.
* testsuite/20_util/shared_ptr/thread/mutex_weaktoshared.cc: Likewise.
* testsuite/20_util/specialized_algorithms/memory_management_tools/
1.cc: Likewise.
* testsuite/30_threads/call_once/60497.cc: Likewise.
* testsuite/30_threads/lock/2.cc: Likewise.
* testsuite/30_threads/thread/native_handle/cancel.cc: Likewise.
* testsuite/experimental/algorithm/sample.cc: Likewise.
* testsuite/experimental/array/make_array.cc: Likewise.
* testsuite/experimental/array/neg.cc: Likewise. Adjust dg-error line.
* testsuite/experimental/propagate_const/assignment/move_neg.cc:
Adjust dg-error lines.
* testsuite/experimental/propagate_const/cons/move_neg.cc: Likewise.
* testsuite/experimental/propagate_const/requirements2.cc: Likewise.
* testsuite/experimental/propagate_const/requirements3.cc: Likewise.
* testsuite/experimental/propagate_const/requirements4.cc: Likewise.
* testsuite/experimental/propagate_const/requirements5.cc: Likewise.
From-SVN: r241131
Jonathan Wakely [Thu, 13 Oct 2016 16:42:53 +0000 (17:42 +0100)]
Add missing <random> header in testcase
* testsuite/experimental/algorithm/sample.cc: Add missing header.
From-SVN: r241130
Jonathan Wakely [Thu, 13 Oct 2016 16:41:10 +0000 (17:41 +0100)]
Qualify use of std::declval to avoid ADL
* include/experimental/propagate_const (element_type): Qualify
declval.
From-SVN: r241129
Jonathan Wakely [Thu, 13 Oct 2016 16:37:47 +0000 (17:37 +0100)]
Change test to use VERIFY not assert
* testsuite/26_numerics/random/default_random_engine.cc: Use VERIFY
instead of assert.
From-SVN: r241128
Ian Lance Taylor [Thu, 13 Oct 2016 16:21:28 +0000 (16:21 +0000)]
compiler: don't try to get backend representation of redefinition
Trying to get the backend representation of a redefined name can cause a
compiler crash as the compiler can walk over the same statements a
second time. It's also quite unlikely to produce any additional useful
error messages for the user.
Test case follows. I'm not going to bother adding this test case to the
testsuite--crash-on-invalid cases are worth fixing but not worth
continually retesting.
package p
type A []int
func (a A) Sum() (sum int) {
for _, v := range a {
sum += v
}
return sum
}
type A []int
func (a A) Sum() (sum int) {
for _, v := range a {
sum += v
}
return sum
}
Reviewed-on: https://go-review.googlesource.com/30976
From-SVN: r241127