aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2016-10-14Avoid copies in std::scoped_allocator_adaptor piecewise constructionJonathan Wakely3-16/+107
* 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
2016-10-14FINAL/OVERRIDE: Define to empty on g++ < 4.7Pedro Alves2-5/+24
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
2016-10-14Move OVERRIDE/FINAL from gcc/coretypes.h to include/ansidecl.hPedro Alves4-31/+32
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
2016-10-14mips.c (mips_prepare_pch_save): Initialize micromips_globals to zero.Catherine Moore2-17/+24
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
2016-10-141.cc: Remove 'test' variables.Paolo Carlini394-924/+636
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
2016-10-14runtime: copy cpuprof code from Go 1.7 runtimeIan Lance Taylor13-541/+568
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
2016-10-14re PR tree-optimization/77979 (ICE on valid code at -Os and above on ↵Richard Biener4-2/+36
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
2016-10-14Test folding of str{n}{case}cmp and memchrMartin Liska4-0/+266
* 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
2016-10-14Fold __builtin_memchr functionMartin Liska5-59/+119
* 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
2016-10-14Fold __builtin_str{n}{case}cmp functionsMartin Liska5-147/+239
* 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
2016-10-14PR65122 extended alignment support in allocatorsJonathan Wakely12-4/+426
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
2016-10-14Fix gcc.dg/torture/pr77937-[12].c for real.Uros Bizjak3-2/+10
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
2016-10-14Fix pr77937-1.c and pr77937-2.c testcasesMarkus Trippelsdorf2-2/+2
From-SVN: r241156
2016-10-14* gcov-io.c (gcov_open): Deconstify 'mode'.Nathan Sidwell2-1/+5
From-SVN: r241155
2016-10-14re PR ada/77968 (ICEs with -flto on gnat.dg)Eric Botcazou17-71/+203
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
2016-10-14re PR libstdc++/77944 (FAIL: 20_util/variant/compile.cc (test for excess ↵Tim Shen2-0/+6
errors)) PR libstdc++/77944 * include/std/variant: include <bits/funcexcept.h> for __try and __catch. From-SVN: r241153
2016-10-14Support only \0-terminated string in c_getstr and returnMartin Liska3-10/+36
* 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
2016-10-14Simplify reference_wrapper nested typedefsJonathan Wakely2-37/+22
* 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
2016-10-14coarray_38.f90: Expect error message.Andre Vehreschild4-1/+23
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
2016-10-14[AArch64] Add spellchecking hints for -march,-mcpu,-mtune and their attributesKyrylo Tkachov9-1/+127
* 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
2016-10-14Fix long lineEric Botcazou1-2/+2
From-SVN: r241148
2016-10-14optabs.def: Remove optab function gen_int_libfunc for sdivmod_optab and ↵Prathamesh Kulkarni2-2/+7
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
2016-10-14Daily bump.GCC Administrator1-1/+1
From-SVN: r241146
2016-10-13PR c++/71912 - [6/7 regression] flexible array in struct in union rejectedMartin Sebor10-105/+895
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
2016-10-13m68k.c (m68k_option_override): Check opt_fstack_limit_symbol_arg and ↵Andreas Schwab4-3/+15
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
2016-10-13re PR tree-optimization/77937 (ICE: in replace_one_candidate, at ↵Bill Schmidt3-0/+37
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
2016-10-13container_access.cc: Remove 'test' variables.Paolo Carlini341-1100/+651
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
2016-10-13Implement P0386R2 - C++17 inline variablesJason Merrill20-31/+712
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
2016-10-13gcov-io.c (gcov_open): Fix documentation.Nathan Sidwell2-37/+17
* gcov-io.c (gcov_open): Fix documentation. Simplify setting gcov_var.mode. Remove unnecessary fstat. From-SVN: r241136
2016-10-13Create the *logue in the same order as before (PR77962)Segher Boessenkool2-6/+19
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
2016-10-13Makefile.in (insn-attrtab.o-warn, [...]): Don't use -Wno-error.Marek Polacek2-5/+6
* 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
2016-10-13Fix ChangeLog for r241132Sandra Loosemore1-4/+4
From-SVN: r241133
2016-10-13scd42-1.c: Skip if -mcpu incompatible with Xscale is specified, not just -march.Sandra Loosemore3-2/+10
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
2016-10-13Avoid #include <functional> in other headersJonathan Wakely24-22/+66
* 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
2016-10-13Add missing <random> header in testcaseJonathan Wakely2-0/+3
* testsuite/experimental/algorithm/sample.cc: Add missing header. From-SVN: r241130
2016-10-13Qualify use of std::declval to avoid ADLJonathan Wakely2-1/+4
* include/experimental/propagate_const (element_type): Qualify declval. From-SVN: r241129
2016-10-13Change test to use VERIFY not assertJonathan Wakely2-2/+5
* testsuite/26_numerics/random/default_random_engine.cc: Use VERIFY instead of assert. From-SVN: r241128
2016-10-13compiler: don't try to get backend representation of redefinitionIan Lance Taylor2-1/+9
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
2016-10-13Use normal mode containers in searchersJonathan Wakely3-8/+13
* include/experiumental/functional (boyer_moore_searcher) (__boyer_moore_map_base, __boyer_moore_array_base): Qualify containers with _GLIBCXX_STD_C. * include/std/functional: Likewise. From-SVN: r241126
2016-10-13re PR tree-optimization/77937 (ICE: in replace_one_candidate, at ↵Bill Schmidt2-0/+11
gimple-ssa-strength-reduction.c:3370) 2016-10-13 Bill Schmidt <wschmidt@linux.vnet.ibm.com> PR tree-optimization/77937 * gimple-ssa-strength-reduction.c (analyze_increments): Set cost to infinite when we have a pointer with an increment of -1. From-SVN: r241125
2016-10-13runtime: copy mstats code from Go 1.7 runtimeIan Lance Taylor18-350/+668
This replaces mem.go and the C runtime_ReadMemStats function with the Go 1.7 mstats.go. The GCStats code is commented out for now. The corresponding gccgo code is in runtime/mgc0.c. The variables memstats and worldsema are shared between the Go code and the C code, but are not exported. To make this work, add temporary accessor functions acquireWorldsema, releaseWorldsema, getMstats (the latter known as mstats in the C code). Check the preemptoff field of m when allocating and when considering whether to start a GC. This works with the new stopTheWorld and startTheWorld functions in Go, which are essentially the Go 1.7 versions. Change the compiler to stack allocate closures when compiling the runtime package. Within the runtime packages closures do not escape. This is similar to what the gc compiler does, except that the gc compiler, when compiling the runtime package, gives an error if escape analysis shows that a closure does escape. I added this here because the Go version of ReadMemStats calls systemstack with a closure, and having that allocate memory was causing some tests that measure memory allocations to fail. Reviewed-on: https://go-review.googlesource.com/30972 From-SVN: r241124
2016-10-13builtin-sprintf-warn-1.c: Cast 0 to wint_t to placate -Wformat on targets ↵Martin Sebor2-3/+8
where the type is not int. gcc/testsuite/Changelog: * gcc.dg/tree-ssa/builtin-sprintf-warn-1.c: Cast 0 to wint_t to placate -Wformat on targets where the type is not int. From-SVN: r241123
2016-10-13Replace non-constexpr decrement in std::chrono::floorJonathan Wakely3-1/+9
* include/std/chrono (floor): Replace non-constexpr operation. * testsuite/20_util/duration_cast/rounding.cc: Test conversion to durations with floating pointer representations. From-SVN: r241122
2016-10-13Move MEMMODEL_* from coretypes.h to memmodel.hThomas Preud'homme225-62/+376
2016-10-13 Thomas Preud'homme <thomas.preudhomme@arm.com> gcc/ * coretypes.h: Move MEMMODEL_* macros and enum memmodel definition into ... * memmodel.h: This file. * alias.c, asan.c, auto-inc-dec.c, bb-reorder.c, bt-load.c, caller-save.c, calls.c, ccmp.c, cfgbuild.c, cfgcleanup.c, cfgexpand.c, cfgloopanal.c, cfgrtl.c, cilk-common.c, combine.c, combine-stack-adj.c, common/config/aarch64/aarch64-common.c, common/config/arm/arm-common.c, common/config/bfin/bfin-common.c, common/config/c6x/c6x-common.c, common/config/i386/i386-common.c, common/config/ia64/ia64-common.c, common/config/nvptx/nvptx-common.c, compare-elim.c, config/aarch64/aarch64-builtins.c, config/aarch64/aarch64-c.c, config/aarch64/cortex-a57-fma-steering.c, config/arc/arc.c, config/arc/arc-c.c, config/arm/arm-builtins.c, config/arm/arm-c.c, config/avr/avr.c, config/avr/avr-c.c, config/avr/avr-log.c, config/bfin/bfin.c, config/c6x/c6x.c, config/cr16/cr16.c, config/cris/cris.c, config/darwin-c.c, config/darwin.c, config/epiphany/epiphany.c, config/epiphany/mode-switch-use.c, config/epiphany/resolve-sw-modes.c, config/fr30/fr30.c, config/frv/frv.c, config/ft32/ft32.c, config/h8300/h8300.c, config/i386/i386-c.c, config/i386/winnt.c, config/iq2000/iq2000.c, config/lm32/lm32.c, config/m32c/m32c.c, config/m32r/m32r.c, config/m68k/m68k.c, config/mcore/mcore.c, config/microblaze/microblaze.c, config/mmix/mmix.c, config/mn10300/mn10300.c, config/moxie/moxie.c, config/msp430/msp430.c, config/nds32/nds32-cost.c, config/nds32/nds32-intrinsic.c, config/nds32/nds32-md-auxiliary.c, config/nds32/nds32-memory-manipulation.c, config/nds32/nds32-predicates.c, config/nds32/nds32.c, config/nios2/nios2.c, config/nvptx/nvptx.c, config/pa/pa.c, config/pdp11/pdp11.c, config/rl78/rl78.c, config/rs6000/rs6000-c.c, config/rx/rx.c, config/s390/s390-c.c, config/s390/s390.c, config/sh/sh.c, config/sh/sh-c.c, config/sh/sh-mem.cc, config/sh/sh_treg_combine.cc, config/sol2.c, config/spu/spu.c, config/stormy16/stormy16.c, config/tilegx/tilegx.c, config/tilepro/tilepro.c, config/v850/v850.c, config/vax/vax.c, config/visium/visium.c, config/vms/vms-c.c, config/xtensa/xtensa.c, coverage.c, cppbuiltin.c, cprop.c, cse.c, cselib.c, dbxout.c, dce.c, df-core.c, df-problems.c, df-scan.c, dojump.c, dse.c, dwarf2asm.c, dwarf2cfi.c, dwarf2out.c, emit-rtl.c, except.c, explow.c, expmed.c, expr.c, final.c, fold-const.c, function.c, fwprop.c, gcse.c, ggc-page.c, haifa-sched.c, hsa-brig.c, hsa-gen.c, hw-doloop.c, ifcvt.c, init-regs.c, internal-fn.c, ira-build.c, ira-color.c, ira-conflicts.c, ira-costs.c, ira-emit.c, ira-lives.c, ira.c, jump.c, loop-doloop.c, loop-invariant.c, loop-iv.c, loop-unroll.c, lower-subreg.c, lra.c, lra-assigns.c, lra-coalesce.c, lra-constraints.c, lra-eliminations.c, lra-lives.c, lra-remat.c, lra-spills.c, mode-switching.c, modulo-sched.c, omp-low.c, passes.c, postreload-gcse.c, postreload.c, predict.c, print-rtl-function.c, recog.c, ree.c, reg-stack.c, regcprop.c, reginfo.c, regrename.c, reload.c, reload1.c, reorg.c, resource.c, rtl-chkp.c, rtl-tests.c, rtlanal.c, rtlhooks.c, sched-deps.c, sched-rgn.c, sdbout.c, sel-sched-ir.c, sel-sched.c, shrink-wrap.c, simplify-rtx.c, stack-ptr-mod.c, stmt.c, stor-layout.c, target-globals.c, targhooks.c, toplev.c, tree-nested.c, tree-outof-ssa.c, tree-profile.c, tree-ssa-coalesce.c, tree-ssa-ifcombine.c, tree-ssa-loop-ivopts.c, tree-ssa-loop.c, tree-ssa-reassoc.c, tree-ssa-sccvn.c, tree-vect-data-refs.c, ubsan.c, valtrack.c, var-tracking.c, varasm.c: Include memmodel.h. * genattrtab.c (write_header): Include memmodel.h in generated file. * genautomata.c (main): Likewise. * gengtype.c (open_base_files): Likewise. * genopinit.c (main): Likewise. * genconditions.c (write_header): Include memmodel.h earlier in generated file. * genemit.c (main): Likewise. * genoutput.c (output_prologue): Likewise. * genpeep.c (main): Likewise. * genpreds.c (write_insn_preds_c): Likewise. * genrecog.c (write_header): Likewise. * Makefile.in (PLUGIN_HEADERS): Include memmodel.h gcc/ada/ * gcc-interface/utils2.c: Include memmodel.h. gcc/c-family/ * c-cppbuiltin.c: Include memmodel.h. * c-opts.c: Likewise. * c-pragma.c: Likewise. * c-warn.c: Likewise. gcc/c/ * c-typeck.c: Include memmodel.h. gcc/cp/ * decl2.c: Include memmodel.h. * rtti.c: Likewise. gcc/fortran/ * trans-intrinsic.c: Include memmodel.h. gcc/go/ * go-backend.c: Include memmodel.h. libgcc/ * libgcov-profiler.c: Replace MEMMODEL_* macros by their __ATOMIC_* equivalent. * config/tilepro/atomic.c: Likewise and stop casting model to enum memmodel. From-SVN: r241121
2016-10-13Add a "compact" mode to print_rtx_functionDavid Malcolm7-54/+136
gcc/ChangeLog: * function-tests.c (selftest::test_expansion_to_rtl): Add "true" for new "compact" param of print_rtx_function. Check for "cinsn" rather than "insn". * print-rtl-function.c (flag_compact): New decl. (print_rtx_function): Add param "compact" and use it to set flag_compact, adding a description of the effect to the leading comment, and updating the example output. * print-rtl.c (flag_compact): New variable. (print_rtx_operand_code_0): Omit the JUMP_LABEL reference in compact mode. (print_rtx_operand_code_i): When printing source locations, wrap xloc.file in quotes. Don't print INSN_CODEs in compact mode. (print_rtx_operand_code_r): Don't print regnos for hard regs and virtuals in compact mode. (print_rtx_operand_code_u): Don't print insn UIDs in compact mode, apart from in LABEL_REFs. (print_rtx_operand): In case 'w', don't print in hex in compact mode. Don't print basic block ids in compact mode. (print_rtx): In compact mode, prefix the code of insns with "c", only print the INSN_UID of CODE_LABELs, and omit their LABEL_NUSES. * print-rtl.h (print_rtx_function): Add "compact" param. gcc/testsuite/ChangeLog: * gcc.target/i386/vararg-loc.c: Update for quoting of xloc.file in INSN_LOCATION. From-SVN: r241120
2016-10-13Fix typo in name.Richard Earnshaw1-2/+2
From-SVN: r241119
2016-10-13[ARM] Remove redundant TARGET_VFPRichard Earnshaw11-136/+191
* arm.h (TARGET_VFP): Delete. (TARGET_VFPD32): Remove references to TARGET_VFP. (TARGET_VFP3, TARGET_VFP5): Likewise. (TARGET_VFP_SINGLE, TARGET_VFP_DOUBLE): Likewise. (TARGET_NEON_FP16): Likewise. (TARGET_FMA): Likewise. (TARGET_CRYPTO): Likewise. (TARGET_NEON): Likewise. (SECONDARY_OUTPUT_RELOAD_CLASS): Likewise. (FUNCTION_ARG_REGNO_P): Likewise. * arm.c (arm_option_check_internal): Likewise. (arm_option_override): Likewise. (use_return_insn): Likewise. (arm_function_value_regno_p): Likewise. (arm_apply_result_size): Likewise. (use_vfp_abi): Likewise. (arm_legitimate_address_outer_p): Likewise. (thumb2_legitimate_address_p): Likewise. (arm_legitimate_index_p): Likewise. (thumb2_legitimate_index_p): Likewise. (arm_legitimate_address): Likewise. (arm_get_vfp_saved_size): Likewise. (arm_emit_vfp_multi_reg_pop): Likewise. (arm_get_frame_offsets): Likewise. (arm_save_coproc_regs): Likewise. (arm_hard_regno_mode_ok): Likewise. (arm_expand_epilogue_apcs_frame): Likewise. (arm_expand_epilogue): Likewise. (arm_file_start): Likewise. (arm_conditional_register_usage): Likewise. (arm_validize_comparison): Use vfp_compare_operand directly. * arm-builtins.c (arm_init_builtins): Remove references to TARGET_VFP. (arm_expand_vfp_builtin): Use TARGET_HARD_FLOAT for detecting unsupported usage. (arm_atomic_assign_expand_fenv): Likewise. * arm.md (divsf3): Likewise. (arm_negsi2): Likewise. (absdf2): Likewise. (arm_movdi): Likewise. (arm_movt): Likewise. (cbranchsf4): Change predicate to vfp_compare_operand. (cbranchdf4): Change predicate to vfp_compare_operand. (cstorehf4): Change predicate to vfp_compare_operand. (cstoresf4): Change predicate to vfp_compare_operand. (cstoredf4): Change predicate to vfp_compare_operand. (vfp_pop_multiple_with_writeback): Remove references to TARGET_VFP. (movhi_insn_arch4, movhi_bytes): Likewise. * constraints.md (Dt): Likewise. (Dp): Likewise. * iterators.md (SDF): Likewise. * predicates.md (arm_float_compare_operand): Delete. (const_double_vcvt_power_of_two_reciprocal): Remove references to TARGET_VFP. (const_double_vcvt_power_of_two): Likewise. * thumb2.md thumb2_movsi_insn): Likewise. * vfp.md (arm_movhi_vfp, thumb2_movhi_vfp): Likewise. (movhf_vfp): Likewise. (arm_movsi_vfp, thumb2_movsi_vfp): Likewise. (movdi_vfp, movdi_vfp_cortexa8): Likewise. (movsf_vfp, thumb2_movsf_vfp): Likewise. (movdf_vfp, thumb2_movdf_vfp): Likewise. (movsfcc_vfp, abssf2_vfp, negsf2_vfp, addsf3_vfp): Likewise. (subsf3_vfp, divsf3_vfp): Likewise. (mulsf3_vfp, mulsf3negsf_vfp, negmulsf3_vfp): Likewise. (mulsf3addsf_vfp, (mulsf3subsf_vfp, mulsf3negsfaddsf_vfp): Likewise. (mulsf3negsfsubsf_vfp): Likewise. (truncsisf2_vfp, fixuns_truncsfsi2, floatsisf2_vfp): Likewise. (floatunssisf2, sqrtsf2_vfp): Likewise. (movcc_vfp): Likewise. (cmpsf_split_vfp, cmpsf_trap_split_vfp): Likewise. (cmpsf_vfp, cmpsf_trap_vfp): Likewise. (push_multi_vfp): Likewise. (set_fpscr, get_fpscr): Likewise. * arm-c.c (arm_cpu_builtins): Unconditionally define __VFP_FP__. From-SVN: r241118
2016-10-13[multiple changes]Arnaud Charlet12-46/+177
2016-10-13 Hristian Kirtchev <kirtchev@adacore.com> * sem_ch6.adb (Analyze_Expression_Function): Remove the aspects of the original expression function has been rewritten into a subprogram declaration or a body. Reinsert the aspects once they have been analyzed. 2016-10-13 Tristan Gingold <gingold@adacore.com> * exp_ch9.adb (Expand_N_Asynchronous_Select): Return immediately on restricted profile. 2016-10-13 Javier Miranda <miranda@adacore.com> * sem_prag.adb (Process_Compile_Time_Warning_Or_Error): Register the pragma for its validation after the backend has been called only if its expression has some occurrence of attributes 'size or 'alignment * table.ads (Release_Threshold): New formal. (Release): Adding documentation of its new functionality. * table.adb (Release): Extend its functionality with a Release_Threshold. * nlists.adb (Next_Node table): Set its Release_Threshold. * atree.adb (Orig_Nodes table): Set its Release_Threshold. * atree.ads (Nodes table): Set its Release_Threshold. (Flags table): Set its Release_Threshold. * alloc.ads (Nodes_Release_Threshold): New constant declaration. (Orig_Nodes_Release_Threshold): New constant declaration. * debug.adb (switch d.9): Left free. * gnat1drv.adb (Post_Compilation_Validation_Checks): Enable validation of pragmas Compile_Time_Error and Compile_Time_Warning. From-SVN: r241117
2016-10-13[ARM] Remove redundant model field from FPU descriptionsRichard Earnshaw4-29/+36
* arm.h (TARGET_VFP): Unconditionally define to 1. (arm_fpu_desc): Remove 'model' field. (TARGET_FPU_MODEL): Delete. * arm.c (all_fpus): Don't initialize the model field. (arm_can_inline_p): Don't check the FPU model. * arm-fpus.def: Remove redundant model field from all FPU descriptions. From-SVN: r241116
2016-10-13[multiple changes]Arnaud Charlet6-30/+106
2016-10-13 Hristian Kirtchev <kirtchev@adacore.com> * sem_ch6.adb (Create_Extra_Formals): Generate an Itype reference for the object extra formal in case the subprogram is called within the same or nested scope. 2016-10-13 Claire Dross <dross@adacore.com> * sem_ch5.adb (Analyze_Iterator_Specification): Also create a renaming in GNATprove mode. 2016-10-13 Ed Schonberg <schonberg@adacore.com> * freeze.adb (Freeze_Fixed_Point_Type): in SPARK mode, the given bounds of the type must be strictly representable, and the range reduction by one delta ("shaving") allowed by the Ada RM, is not applicable in SPARK. 2016-10-13 Javier Miranda <miranda@adacore.com> * debug.adb (switch d.9): Used to temporarily disable the support needed for this enhancement since it causes regressions with large sources. * gnat1drv.adb (Post_Compilation_Validation_Checks): Temporarily leave the validation of pragmas Compile_Time_Warning and Compile_Time_Error under control of -gnatd.9/ From-SVN: r241115