2437d31d0e
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
373 lines
10 KiB
C++
373 lines
10 KiB
C++
// Copyright (C) 2009-2016 Free Software Foundation, Inc.
|
|
//
|
|
// This file is part of the GNU ISO C++ Library. This library is free
|
|
// software; you can redistribute it and/or modify it under the
|
|
// terms of the GNU General Public License as published by the
|
|
// Free Software Foundation; either version 3, or (at your option)
|
|
// any later version.
|
|
|
|
// This library is distributed in the hope that it will be useful,
|
|
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
// GNU General Public License for more details.
|
|
|
|
// You should have received a copy of the GNU General Public License along
|
|
// with this library; see the file COPYING3. If not see
|
|
// <http://www.gnu.org/licenses/>.
|
|
|
|
// { dg-require-effective-target dfp }
|
|
|
|
// ISO/IEC TR 24733 3.2.8 Binary arithmetic operators.
|
|
|
|
#include <decimal/decimal>
|
|
#include <testsuite_hooks.h>
|
|
|
|
using namespace std::decimal;
|
|
|
|
decimal32 d32 (5);
|
|
decimal64 d64 (-10);
|
|
decimal128 d128 (25);
|
|
int si = -20;
|
|
unsigned int ui = 50;
|
|
long sl = -10;
|
|
unsigned long ul = 20;
|
|
long long sll = -25;
|
|
unsigned long long ull = 50;
|
|
|
|
void
|
|
binary_add_32 (void)
|
|
{
|
|
decimal32 a (1000), b;
|
|
|
|
b = si + a; VERIFY (b == 980);
|
|
b = ui + a; VERIFY (b == 1050);
|
|
b = sl + a; VERIFY (b == 990);
|
|
b = ul + a; VERIFY (b == 1020);
|
|
b = sll + a; VERIFY (b == 975);
|
|
b = ull + a; VERIFY (b == 1050);
|
|
b = d32 + a; VERIFY (b == 1005);
|
|
b = (decimal32)(d64 + a); VERIFY (b == 990);
|
|
b = (decimal32)(d128 + a); VERIFY (b == 1025);
|
|
|
|
b = a + si; VERIFY (b == 980);
|
|
b = a + ui; VERIFY (b == 1050);
|
|
b = a + sl; VERIFY (b == 990);
|
|
b = a + ul; VERIFY (b == 1020);
|
|
b = a + sll; VERIFY (b == 975);
|
|
b = a + ull; VERIFY (b == 1050);
|
|
b = a + d32; VERIFY (b == 1005);
|
|
b = (decimal32)(a + d64); VERIFY (b == 990);
|
|
b = (decimal32)(a + d128); VERIFY (b == 1025);
|
|
}
|
|
|
|
void
|
|
binary_subtract_32 (void)
|
|
{
|
|
decimal32 a (1000), b;
|
|
|
|
b = a - si; VERIFY (b == 1020);
|
|
b = a - ui; VERIFY (b == 950);
|
|
b = a - sl; VERIFY (b == 1010);
|
|
b = a - ul; VERIFY (b == 980);
|
|
b = a - sll; VERIFY (b == 1025);
|
|
b = a - ull; VERIFY (b == 950);
|
|
b = a - d32; VERIFY (b == 995);
|
|
b = (decimal32)(a - d64); VERIFY (b == 1010);
|
|
b = (decimal32)(a - d128); VERIFY (b == 975);
|
|
|
|
a = -1000;
|
|
b = si - a; VERIFY (b == 980);
|
|
b = ui - a; VERIFY (b == 1050);
|
|
b = sl - a; VERIFY (b == 990);
|
|
b = ul - a; VERIFY (b == 1020);
|
|
b = sll - a; VERIFY (b == 975);
|
|
b = ull - a; VERIFY (b == 1050);
|
|
b = d32 - a; VERIFY (b == 1005);
|
|
b = (decimal32)(d64 - a); VERIFY (b == 990);
|
|
b = (decimal32)(d128 - a); VERIFY (b == 1025);
|
|
}
|
|
|
|
void
|
|
binary_multiply_32 (void)
|
|
{
|
|
decimal32 a (1000), b;
|
|
|
|
b = a * si; VERIFY (b == -20000);
|
|
b = a * ui; VERIFY (b == 50000);
|
|
b = a * sl; VERIFY (b == -10000);
|
|
b = a * ul; VERIFY (b == 20000);
|
|
b = a * sll; VERIFY (b == -25000);
|
|
b = a * ull; VERIFY (b == 50000);
|
|
b = a * d32; VERIFY (b == 5000);
|
|
b = (decimal32)(a * d64); VERIFY (b == -10000);
|
|
b = (decimal32)(a * d128); VERIFY (b == 25000);
|
|
|
|
b = si * a; VERIFY (b == -20000);
|
|
b = ui * a; VERIFY (b == 50000);
|
|
b = sl * a; VERIFY (b == -10000);
|
|
b = ul * a; VERIFY (b == 20000);
|
|
b = sll * a; VERIFY (b == -25000);
|
|
b = ull * a; VERIFY (b == 50000);
|
|
b = d32 * a; VERIFY (b == 5000);
|
|
b = (decimal32)(d64 * a); VERIFY (b == -10000);
|
|
b = (decimal32)(d128 * a); VERIFY (b == 25000);
|
|
}
|
|
|
|
void
|
|
binary_divide_32 (void)
|
|
{
|
|
decimal32 a (1000), b;
|
|
|
|
b = a / si; VERIFY (b == -50);
|
|
b = a / ui; VERIFY (b == 20);
|
|
b = a / sl; VERIFY (b == -100);
|
|
b = a / ul; VERIFY (b == 50);
|
|
b = a / sll; VERIFY (b == -40);
|
|
b = a / ull; VERIFY (b == 20);
|
|
b = a / d32; VERIFY (b == 200);
|
|
b = (decimal32)(a / d64); VERIFY (b == -100);
|
|
b = (decimal32)(a / d128); VERIFY (b == 40);
|
|
|
|
a = 5;
|
|
b = si / a; VERIFY (b == -4);
|
|
b = ui / a; VERIFY (b == 10);
|
|
b = sl / a; VERIFY (b == -2);
|
|
b = ul / a; VERIFY (b == 4);
|
|
b = sll / a; VERIFY (b == -5);
|
|
b = ull / a; VERIFY (b == 10);
|
|
b = d32 / a; VERIFY (b == 1);
|
|
b = (decimal32)(d64 / a); VERIFY (b == -2);
|
|
b = (decimal32)(d128 / a); VERIFY (b == 5);
|
|
}
|
|
|
|
void
|
|
binary_add_64 (void)
|
|
{
|
|
decimal64 a (1000), b;
|
|
|
|
b = a + si; VERIFY (b == 980);
|
|
b = a + ui; VERIFY (b == 1050);
|
|
b = a + sl; VERIFY (b == 990);
|
|
b = a + ul; VERIFY (b == 1020);
|
|
b = a + sll; VERIFY (b == 975);
|
|
b = a + ull; VERIFY (b == 1050);
|
|
b = a + d32; VERIFY (b == 1005);
|
|
b = a + d64; VERIFY (b == 990);
|
|
b = (decimal64)(a + d128); VERIFY (b == 1025);
|
|
|
|
b = a + si; VERIFY (b == 980);
|
|
b = a + ui; VERIFY (b == 1050);
|
|
b = a + sl; VERIFY (b == 990);
|
|
b = a + ul; VERIFY (b == 1020);
|
|
b = a + sll; VERIFY (b == 975);
|
|
b = a + ull; VERIFY (b == 1050);
|
|
b = a + d32; VERIFY (b == 1005);
|
|
b = a + d64; VERIFY (b == 990);
|
|
b = (decimal64)(a + d128); VERIFY (b == 1025);
|
|
}
|
|
|
|
void
|
|
binary_subtract_64 (void)
|
|
{
|
|
decimal64 a (1000), b;
|
|
|
|
b = a - si; VERIFY (b == 1020);
|
|
b = a - ui; VERIFY (b == 950);
|
|
b = a - sl; VERIFY (b == 1010);
|
|
b = a - ul; VERIFY (b == 980);
|
|
b = a - sll; VERIFY (b == 1025);
|
|
b = a - ull; VERIFY (b == 950);
|
|
b = a - d32; VERIFY (b == 995);
|
|
b = a - d64; VERIFY (b == 1010);
|
|
b = (decimal64)(a - d128); VERIFY (b == 975);
|
|
|
|
a = -1000;
|
|
b = si - a; VERIFY (b == 980);
|
|
b = ui - a; VERIFY (b == 1050);
|
|
b = sl - a; VERIFY (b == 990);
|
|
b = ul - a; VERIFY (b == 1020);
|
|
b = sll - a; VERIFY (b == 975);
|
|
b = ull - a; VERIFY (b == 1050);
|
|
b = d32 - a; VERIFY (b == 1005);
|
|
b = d64 - a; VERIFY (b == 990);
|
|
b = (decimal64)(d128 - a); VERIFY (b == 1025);
|
|
}
|
|
|
|
void
|
|
binary_multiply_64 (void)
|
|
{
|
|
decimal64 a (1000), b;
|
|
|
|
b = a * si; VERIFY (b == -20000);
|
|
b = a * ui; VERIFY (b == 50000);
|
|
b = a * sl; VERIFY (b == -10000);
|
|
b = a * ul; VERIFY (b == 20000);
|
|
b = a * sll; VERIFY (b == -25000);
|
|
b = a * ull; VERIFY (b == 50000);
|
|
b = a * d32; VERIFY (b == 5000);
|
|
b = a * d64; VERIFY (b == -10000);
|
|
b = (decimal64)(a * d128); VERIFY (b == 25000);
|
|
|
|
b = si * a; VERIFY (b == -20000);
|
|
b = ui * a; VERIFY (b == 50000);
|
|
b = sl * a; VERIFY (b == -10000);
|
|
b = ul * a; VERIFY (b == 20000);
|
|
b = sll * a; VERIFY (b == -25000);
|
|
b = ull * a; VERIFY (b == 50000);
|
|
b = d32 * a; VERIFY (b == 5000);
|
|
b = d64 * a; VERIFY (b == -10000);
|
|
b = (decimal64)(d128 * a); VERIFY (b == 25000);
|
|
}
|
|
|
|
void
|
|
binary_divide_64 (void)
|
|
{
|
|
decimal64 a (1000), b;
|
|
|
|
b = a / si; VERIFY (b == -50);
|
|
b = a / ui; VERIFY (b == 20);
|
|
b = a / sl; VERIFY (b == -100);
|
|
b = a / ul; VERIFY (b == 50);
|
|
b = a / sll; VERIFY (b == -40);
|
|
b = a / ull; VERIFY (b == 20);
|
|
b = a / d32; VERIFY (b == 200);
|
|
b = a / d64; VERIFY (b == -100);
|
|
b = (decimal64)(a / d128); VERIFY (b == 40);
|
|
|
|
a = 5;
|
|
b = si / a; VERIFY (b == -4);
|
|
b = ui / a; VERIFY (b == 10);
|
|
b = sl / a; VERIFY (b == -2);
|
|
b = ul / a; VERIFY (b == 4);
|
|
b = sll / a; VERIFY (b == -5);
|
|
b = ull / a; VERIFY (b == 10);
|
|
b = d32 / a; VERIFY (b == 1);
|
|
b = d64 / a; VERIFY (b == -2);
|
|
b = (decimal64)(d128 / a); VERIFY (b == 5);
|
|
}
|
|
|
|
void
|
|
binary_add_128 (void)
|
|
{
|
|
decimal128 a (1000), b;
|
|
|
|
b = a + si; VERIFY (b == 980);
|
|
b = a + ui; VERIFY (b == 1050);
|
|
b = a + sl; VERIFY (b == 990);
|
|
b = a + ul; VERIFY (b == 1020);
|
|
b = a + sll; VERIFY (b == 975);
|
|
b = a + ull; VERIFY (b == 1050);
|
|
b = a + d32; VERIFY (b == 1005);
|
|
b = a + d64; VERIFY (b == 990);
|
|
b = a + d128; VERIFY (b == 1025);
|
|
|
|
b = a + si; VERIFY (b == 980);
|
|
b = a + ui; VERIFY (b == 1050);
|
|
b = a + sl; VERIFY (b == 990);
|
|
b = a + ul; VERIFY (b == 1020);
|
|
b = a + sll; VERIFY (b == 975);
|
|
b = a + ull; VERIFY (b == 1050);
|
|
b = a + d32; VERIFY (b == 1005);
|
|
b = a + d64; VERIFY (b == 990);
|
|
b = a + d128; VERIFY (b == 1025);
|
|
}
|
|
|
|
void
|
|
binary_subtract_128 (void)
|
|
{
|
|
decimal128 a (1000), b;
|
|
|
|
b = a - si; VERIFY (b == 1020);
|
|
b = a - ui; VERIFY (b == 950);
|
|
b = a - sl; VERIFY (b == 1010);
|
|
b = a - ul; VERIFY (b == 980);
|
|
b = a - sll; VERIFY (b == 1025);
|
|
b = a - ull; VERIFY (b == 950);
|
|
b = a - d32; VERIFY (b == 995);
|
|
b = a - d64; VERIFY (b == 1010);
|
|
b = a - d128; VERIFY (b == 975);
|
|
|
|
a = -1000;
|
|
b = si - a; VERIFY (b == 980);
|
|
b = ui - a; VERIFY (b == 1050);
|
|
b = sl - a; VERIFY (b == 990);
|
|
b = ul - a; VERIFY (b == 1020);
|
|
b = sll - a; VERIFY (b == 975);
|
|
b = ull - a; VERIFY (b == 1050);
|
|
b = d32 - a; VERIFY (b == 1005);
|
|
b = d64 - a; VERIFY (b == 990);
|
|
b = d128 - a; VERIFY (b == 1025);
|
|
}
|
|
|
|
void
|
|
binary_multiply_128 (void)
|
|
{
|
|
decimal128 a (1000), b;
|
|
|
|
b = a * si; VERIFY (b == -20000);
|
|
b = a * ui; VERIFY (b == 50000);
|
|
b = a * sl; VERIFY (b == -10000);
|
|
b = a * ul; VERIFY (b == 20000);
|
|
b = a * sll; VERIFY (b == -25000);
|
|
b = a * ull; VERIFY (b == 50000);
|
|
b = a * d32; VERIFY (b == 5000);
|
|
b = a * d64; VERIFY (b == -10000);
|
|
b = a * d128; VERIFY (b == 25000);
|
|
|
|
b = si * a; VERIFY (b == -20000);
|
|
b = ui * a; VERIFY (b == 50000);
|
|
b = sl * a; VERIFY (b == -10000);
|
|
b = ul * a; VERIFY (b == 20000);
|
|
b = sll * a; VERIFY (b == -25000);
|
|
b = ull * a; VERIFY (b == 50000);
|
|
b = d32 * a; VERIFY (b == 5000);
|
|
b = d64 * a; VERIFY (b == -10000);
|
|
b = d128 * a; VERIFY (b == 25000);
|
|
}
|
|
|
|
void
|
|
binary_divide_128 (void)
|
|
{
|
|
decimal128 a (1000), b;
|
|
|
|
b = a / si; VERIFY (b == -50);
|
|
b = a / ui; VERIFY (b == 20);
|
|
b = a / sl; VERIFY (b == -100);
|
|
b = a / ul; VERIFY (b == 50);
|
|
b = a / sll; VERIFY (b == -40);
|
|
b = a / ull; VERIFY (b == 20);
|
|
b = a / d32; VERIFY (b == 200);
|
|
b = a / d64; VERIFY (b == -100);
|
|
b = a / d128; VERIFY (b == 40);
|
|
|
|
a = 5;
|
|
b = si / a; VERIFY (b == -4);
|
|
b = ui / a; VERIFY (b == 10);
|
|
b = sl / a; VERIFY (b == -2);
|
|
b = ul / a; VERIFY (b == 4);
|
|
b = sll / a; VERIFY (b == -5);
|
|
b = ull / a; VERIFY (b == 10);
|
|
b = d32 / a; VERIFY (b == 1);
|
|
b = d64 / a; VERIFY (b == -2);
|
|
b = d128 / a; VERIFY (b == 5);
|
|
}
|
|
|
|
int
|
|
main ()
|
|
{
|
|
binary_add_32 ();
|
|
binary_subtract_32 ();
|
|
binary_multiply_32 ();
|
|
binary_divide_32 ();
|
|
|
|
binary_add_64 ();
|
|
binary_subtract_64 ();
|
|
binary_multiply_64 ();
|
|
binary_divide_64 ();
|
|
|
|
binary_add_128 ();
|
|
binary_subtract_128 ();
|
|
binary_multiply_128 ();
|
|
binary_divide_128 ();
|
|
}
|