Janne Blomqvist
c04d4ede17
PR 48587 Newunit allocator
...
Currently GFortran newer reuses unit numbers allocated with NEWUNIT=,
instead having a simple counter that is decremented each time such a
unit is opened. For a long running program which repeatedly opens
files with NEWUNIT= and closes them, the counter can wrap around and
cause an abort. This patch replaces the counter with an allocator
that keeps track of which units numbers are allocated, and can reuse
them once they have been deallocated. Since operating systems tend to
limit the number of simultaneous open files for a process to a
relatively modest number, a relatively simple approach with a linear
scan through an array suffices. Though as a small optimization there
is a low water indicator keeping track of the index for which all unit
numbers below are already allocated. This linear scan also ensures
that we always allocate the smallest available unit number.
2016-10-15 Janne Blomqvist <jb@gcc.gnu.org>
PR libfortran/48587
* io/io.h (get_unique_unit_number): Remove prototype.
(newunit_alloc): New prototype.
* io/open.c (st_open): Call newunit_alloc.
* io/unit.c (newunits,newunit_size,newunit_lwi): New static
variables.
(GFC_FIRST_NEWUNIT): Rename to NEWUNIT_START.
(next_available_newunit): Remove variable.
(get_unit): Call newunit_alloc, don't try to create negative
external unit.
(close_unit_1): Call newunit_free.
(close_units): Free newunits array.
(get_unique_number): Remove function.
(newunit_alloc): New function.
(newunit_free): New function.
* io/transfer.c (data_transfer_init): Check for invalid unit
number.
testsuite ChangeLog:
2016-10-15 Janne Blomqvist <jb@gcc.gnu.org>
PR libfortran/48587
* gfortran.dg/negative_unit2.f90: New testcase.
From-SVN: r241199
2016-10-15 16:14:15 +03:00
Nathan Sidwell
64190f049a
revert: diagnostic.c (diagnostic_action_after_output): Remove max error handling here ....
...
Revert
* diagnostic.c (diagnostic_action_after_output): Remove max error
handling here ....
(diagnostic_report_diagnostic): ... do it here instead.
testsuite/
* c-c++-common/fmax-errors.c: Make sure note is emitted.
From-SVN: r241198
2016-10-15 11:08:10 +00:00
Ian Lance Taylor
35d9424444
runtime: copy runtime package time code from Go 1.7
...
Fix handling of function values for -fgo-c-header to generate FuncVal*,
not simply FuncVal.
While we're here change runtime.nanotime to use clock_gettime with
CLOCK_MONOTONIC, rather than gettimeofday. This is what the gc library
does. It provides nanosecond precision and a monotonic clock.
Reviewed-on: https://go-review.googlesource.com/31232
From-SVN: r241197
2016-10-15 00:29:06 +00:00
GCC Administrator
2a0b23da05
Daily bump.
...
From-SVN: r241196
2016-10-15 00:16:16 +00:00
Ian Lance Taylor
1f0be9ee86
runtime: copy mprof code from Go 1.7 runtime
...
Also create a gccgo version of some of the traceback code in
traceback_gccgo.go, replacing some code currently in C.
This required modifying the compiler so that when compiling the runtime
package a slice expression does not cause a local array variable to
escape to the heap.
Reviewed-on: https://go-review.googlesource.com/31230
From-SVN: r241189
2016-10-14 22:51:46 +00:00
Jason Merrill
2045acd902
c-cppbuiltin.c (c_cpp_builtins): Define __cpp_aggregate_bases and __cpp_deduction_guides.
...
* c-cppbuiltin.c (c_cpp_builtins): Define __cpp_aggregate_bases
and __cpp_deduction_guides.
From-SVN: r241188
2016-10-14 18:02:01 -04:00
Jason Merrill
ec2416b5ff
Implement P0017R1, C++17 aggregates with bases.
...
* class.c (build_base_field_1): Split out from...
(build_base_field): ...here. In C++17 mode, build a field for
empty bases.
* decl.c (xref_basetypes): In C++17 aggregates can have bases.
(next_initializable_field): Allow base fields in C++17.
* typeck2.c (process_init_constructor_record): Likewise.
From-SVN: r241187
2016-10-14 17:54:39 -04:00
Nathan Sidwell
efc5aa6bc7
diagnostic.c (diagnostic_action_after_output): Remove max error handling here ....
...
* diagnostic.c (diagnostic_action_after_output): Remove max error
handling here ....
(diagnostic_report_diagnostic): ... do it here instead.
testsuite/
* c-c++-common/fmax-errors.c: Make sure note is emitted.
From-SVN: r241186
2016-10-14 20:32:03 +00:00
David Malcolm
983496febc
Tweaks to print_rtx_function
...
gcc/ChangeLog:
* print-rtl-function.c (print_edge): Omit "(flags)" when none are
set.
(print_rtx_function): Update example in comment for...
* print-rtl.c (print_rtx_operand_code_r): In compact mode, print
non-virtual pseudos with a '%' sigil followed by the regno, offset
by (LAST_VIRTUAL_REGISTER + 1), so that the first non-virtual
pseudo is dumped as "%0".
From-SVN: r241185
2016-10-14 20:22:23 +00:00
Eelis van der Weegen
38e34671fa
Optimize std::shuffle by using generator to get two values at once
...
2016-10-14 Eelis van der Weegen <eelis@eelis.net>
* include/bits/stl_algo.h (shuffle): Extract two random numbers from
each generator invocation when its range is large enough.
From-SVN: r241184
2016-10-14 20:40:32 +01:00
Jonathan Wakely
17739146f9
Resolve ambiguities in std::experimental::sample test
...
* testsuite/experimental/algorithm/sample.cc: Qualify calls to
resolve ambiguity between std::sample and std::experimental::sample.
From-SVN: r241183
2016-10-14 20:40:18 +01:00
Jakub Jelinek
9a822fc79d
re PR middle-end/77959 (ICE in ix86_decompose_address, at i386/i386.c:14954)
...
PR middle-end/77959
* expr.c (expand_expr_real_1) <case CONST_DECL>: For EXPAND_WRITE
return a MEM.
* gfortran.dg/pr77959.f90: New test.
From-SVN: r241182
2016-10-14 21:36:58 +02:00
Eric Botcazou
6af11d2bf4
sparc-passes.def: New file.
...
* config/sparc/sparc-passes.def: New file.
* config/sparc/t-sparc (PASSES_EXTRA): Add sparc-passes.def.
* config/sparc/sparc-protos.h (make_pass_work_around_errata): New.
* config/sparc/sparc.c (sparc_option_override): Don't register passes.
From-SVN: r241180
2016-10-14 19:11:15 +00:00
Jonathan Wakely
de1d079440
Make std::bind use std::invoke
...
* include/std/functional (_Mu<A, false, true>, _Mu<A, true, false>):
Simplify forwarding from tuple of references.
(_Maybe_wrap_member_pointer): Remove.
(_Bind::__call, _Bind::__call_c, _Bind::__call_v, _Bind::__call_c_v):
Use std::__invoke.
(_Bind::_Mu_type, _Bind::_Res_type_impl, _Bind::_Res_type)
(_Bind::__dependent, _Bind::_Res_type_cv): New helpers to simplify
return type deduction.
(_Bind::operator(), _Bind::operator() const): Use new helpers.
(_Bind::operator() volatile, _Bind::operator() const volatile):
Likewise. Add deprecated attribute for C++17 mode.
(_Bind_result::__call): Use std::__invoke.
(_Bind_result::operator() volatile)
(_Bind_result::operator() const volatile): Add deprecated attribute.
(_Bind_helper::__maybe_type, _Bindres_helper::__maybe_type): Remove.
(_Bind_helper, _Bindres_helper): Don't use _Maybe_wrap_member_pointer.
(bind, bind<R>): Don't use __maybe_type.
* src/c++11/compatibility-thread-c++0x.cc
(_Maybe_wrap_member_pointer): Define here for compatibility symbols.
* testsuite/20_util/bind/68912.cc: Don't test volatile-qualification
in C++17 mode.
* testsuite/20_util/bind/cv_quals.cc: Likewise.
* testsuite/20_util/bind/cv_quals_2.cc: Likewise.
From-SVN: r241178
2016-10-14 20:04:56 +01:00
Jakub Jelinek
064ed55a66
DR 1511 - const volatile variables and ODR
...
DR 1511 - const volatile variables and ODR
* decl.c (grokvardecl): Change flags argument to type_quals,
add conceptp argument. Set TREE_PUBLIC for non-static volatile vars.
(grokdeclarator): Adjust grokvardecl caller.
* g++.dg/DRs/dr1511-1.C: New test.
* g++.dg/DRs/dr1511-2.C: New test.
From-SVN: r241176
2016-10-14 21:00:38 +02:00
Eric Botcazou
2579762a4b
debug7.adb (dg-options): Remove -g.
...
* gnat.dg/debug7.adb (dg-options): Remove -g.
* gnat.dg/debug8.adb (dg-options): Add -margs.
* gnat.dg/debug9.adb (dg-options): Remove -g and add -margs.
From-SVN: r241174
2016-10-14 17:57:39 +00:00
Pat Haugen
de0a3fa38e
loop-unroll.c (unroll_loop_runtime_iterations): Condition initial loop peel to loops with exit test at the beginning.
...
* loop-unroll.c (unroll_loop_runtime_iterations): Condition initial
loop peel to loops with exit test at the beginning.
From-SVN: r241173
2016-10-14 17:21:19 +00:00
Ian Lance Taylor
db2fb304fe
runtime: just do file/line lookup in C, move Func to Go
...
In order to port stack backtraces to Go, we need the ability to look up
file/line information for PC values without allocating memory. This
patch moves the handling of Func from C code to Go code, and simplifies
the C code to just look up function/file/line/entry information for a PC.
Reviewed-on: https://go-review.googlesource.com/31150
From-SVN: r241172
2016-10-14 17:20:40 +00:00
Ian Lance Taylor
d2c4425e86
debug/elf: add sparc64 relocations
...
This is a backport of https://go-review.googlesource.com/30870 .
Reviewed-on: https://go-review.googlesource.com/30916
From-SVN: r241171
2016-10-14 17:16:55 +00:00
Pat Haugen
d4919e65ca
re PR rtl-optimization/68212 (Loop unroller breaks basic block frequencies)
...
PR rtl-optimization/68212
* cfgloopmanip.c (duplicate_loop_to_header_edge): Use preheader edge
frequency when computing scale factor for peeled copies.
* loop-unroll.c (unroll_loop_runtime_iterations): Fix freq/count
values for switch/peel blocks/edges.
From-SVN: r241170
2016-10-14 17:10:18 +00:00
Jonathan Wakely
a4744f620f
Avoid copies in std::scoped_allocator_adaptor piecewise construction
...
* include/std/scoped_allocator (scoped_allocator_adaptor): Forward
piecewise construction arguments as tuples of references, to avoid
copies (related to LWG 2511).
* testsuite/20_util/scoped_allocator/construct_pair.cc: New test.
From-SVN: r241169
2016-10-14 17:12:21 +01:00
Pedro Alves
30cd7c740c
FINAL/OVERRIDE: Define to empty on g++ < 4.7
...
final/override were only implemented in g++ 4.7.
include/ChangeLog
2016-10-14 Pedro Alves <palves@redhat.com>
* ansidecl.h [__cplusplus >= 201103 && GCC_VERSION < 4007] (FINAL,
OVERRIDE): Define as empty.
[__cplusplus < 201103 && GCC_VERSION < 4007] (FINAL): Define as
__final.
[__cplusplus < 201103 && GCC_VERSION >= 4007] (OVERRIDE): Define as
empty.
From-SVN: r241167
2016-10-14 15:25:35 +00:00
Pedro Alves
2121e959e1
Move OVERRIDE/FINAL from gcc/coretypes.h to include/ansidecl.h
...
So that GDB and other projects that share the top level can use them.
Bootstrapped with all default languages + jit on x86-64 Fedora 23.
gcc/ChangeLog:
2016-10-14 Pedro Alves <palves@redhat.com>
* coretypes.h (OVERRIDE, FINAL): Delete, moved to
include/ansidecl.h.
include/ChangeLog:
2016-10-14 Pedro Alves <palves@redhat.com>
* ansidecl.h (GCC_FINAL): Delete.
(OVERRIDE, FINAL): New, moved from gcc/coretypes.h.
From-SVN: r241166
2016-10-14 15:24:58 +00:00
Catherine Moore
df17106f1e
mips.c (mips_prepare_pch_save): Initialize micromips_globals to zero.
...
2016-10-13 Catherine Moore <clm@codesourcery.com>
* gcc/config/mips/mips.c (mips_prepare_pch_save): Initialize
micromips_globals to zero.
From-SVN: r241165
2016-10-14 10:21:06 -04:00
Paolo Carlini
1558d39e1c
1.cc: Remove 'test' variables.
...
2016-10-14 Paolo Carlini <paolo.carlini@oracle.com>
* testsuite/26_numerics/accumulate/1.cc: Remove 'test' variables.
* testsuite/26_numerics/adjacent_difference/1.cc: Likewise.
* testsuite/26_numerics/complex/13450.cc: Likewise.
* testsuite/26_numerics/complex/50880.cc: Likewise.
* testsuite/26_numerics/complex/c99.cc: Likewise.
* testsuite/26_numerics/complex/cons/48760.cc: Likewise.
* testsuite/26_numerics/complex/cons/48760_c++0x.cc: Likewise.
* testsuite/26_numerics/complex/dr781_dr1137.cc: Likewise.
* testsuite/26_numerics/complex/dr844.cc: Likewise.
* testsuite/26_numerics/complex/inserters_extractors/char/1.cc:
Likewise.
* testsuite/26_numerics/complex/inserters_extractors/wchar_t/1.cc:
Likewise.
* testsuite/26_numerics/complex/value_operations/1.cc: Likewise.
* testsuite/26_numerics/complex/value_operations/dr387.cc: Likewise.
* testsuite/26_numerics/headers/cmath/19322.cc: Likewise.
* testsuite/26_numerics/headers/cmath/
c99_classification_macros_c++11.c: Likewise.c
* testsuite/26_numerics/headers/cmath/
c99_classification_macros_c++98.cc: Likewise.
* testsuite/26_numerics/headers/cmath/c_math.cc: Likewise.
* testsuite/26_numerics/headers/cmath/dr550.cc: Likewise.
* testsuite/26_numerics/headers/cmath/hypot.cc: Likewise.
* testsuite/26_numerics/headers/cmath/powi.cc: Likewise.
* testsuite/26_numerics/headers/cstdlib/13943.cc: Likewise.
* testsuite/26_numerics/inner_product/1.cc: Likewise.
* testsuite/26_numerics/iota/1.cc: Likewise.
* testsuite/26_numerics/partial_sum/1.cc: Likewise.
* testsuite/26_numerics/random/bernoulli_distribution/cons/default.cc:
Likewise.
* testsuite/26_numerics/random/bernoulli_distribution/cons/parms.cc:
Likewise.
* testsuite/26_numerics/random/bernoulli_distribution/operators/
equal.cc: Likewise.
* testsuite/26_numerics/random/bernoulli_distribution/operators/
inequal.cc: Likewise.
* testsuite/26_numerics/random/binomial_distribution/cons/default.cc:
Likewise.
* testsuite/26_numerics/random/binomial_distribution/cons/parms.cc:
Likewise.
* testsuite/26_numerics/random/binomial_distribution/operators/
equal.cc: Likewise.
* testsuite/26_numerics/random/binomial_distribution/operators/
inequal.cc: Likewise.
* testsuite/26_numerics/random/cauchy_distribution/cons/default.cc:
Likewise.
* testsuite/26_numerics/random/cauchy_distribution/cons/parms.cc:
Likewise.
* testsuite/26_numerics/random/cauchy_distribution/operators/equal.cc:
Likewise.
* testsuite/26_numerics/random/cauchy_distribution/operators/
inequal.cc: Likewise.
* testsuite/26_numerics/random/chi_squared_distribution/cons/
default.cc: Likewise.
* testsuite/26_numerics/random/chi_squared_distribution/cons/
parms.cc: Likewise.
* testsuite/26_numerics/random/chi_squared_distribution/operators/
equal.cc: Likewise.
* testsuite/26_numerics/random/chi_squared_distribution/operators/
inequal.cc: Likewise.
* testsuite/26_numerics/random/default_random_engine.cc: Likewise.
* testsuite/26_numerics/random/discard_block_engine/cons/55215.cc:
Likewise.
* testsuite/26_numerics/random/discard_block_engine/operators/equal.cc:
Likewise.
* testsuite/26_numerics/random/discard_block_engine/operators/
inequal.cc: Likewise.
* testsuite/26_numerics/random/discard_block_engine/operators/
serialize.cc: Likewise.
* testsuite/26_numerics/random/discrete_distribution/cons/
default.cc: Likewise.
* testsuite/26_numerics/random/discrete_distribution/cons/
initlist.cc: Likewise.
* testsuite/26_numerics/random/discrete_distribution/cons/
num_xbound_fun.cc: Likewise.
* testsuite/26_numerics/random/discrete_distribution/cons/range.cc:
Likewise.
* testsuite/26_numerics/random/discrete_distribution/operators/
equal.cc: Likewise.
* testsuite/26_numerics/random/discrete_distribution/operators/
inequal.cc: Likewise.
* testsuite/26_numerics/random/exponential_distribution/cons/
default.cc: Likewise.
* testsuite/26_numerics/random/exponential_distribution/cons/
parms.cc: Likewise.
* testsuite/26_numerics/random/exponential_distribution/operators/
equal.cc: Likewise.
* testsuite/26_numerics/random/exponential_distribution/operators/
inequal.cc: Likewise.
* testsuite/26_numerics/random/extreme_value_distribution/cons/
default.cc: Likewise.
* testsuite/26_numerics/random/extreme_value_distribution/cons/
parms.cc: Likewise.
* testsuite/26_numerics/random/extreme_value_distribution/operators/
equal.cc: Likewise.
* testsuite/26_numerics/random/extreme_value_distribution/operators/
inequal.cc: Likewise.
* testsuite/26_numerics/random/fisher_f_distribution/cons/default.cc:
Likewise.
* testsuite/26_numerics/random/fisher_f_distribution/cons/parms.cc:
Likewise.
* testsuite/26_numerics/random/fisher_f_distribution/operators/
equal.cc: Likewise.
* testsuite/26_numerics/random/fisher_f_distribution/operators/
inequal.cc: Likewise.
* testsuite/26_numerics/random/gamma_distribution/cons/default.cc:
Likewise.
* testsuite/26_numerics/random/gamma_distribution/cons/parms.cc:
Likewise.
* testsuite/26_numerics/random/gamma_distribution/operators/equal.cc:
Likewise.
* testsuite/26_numerics/random/gamma_distribution/operators/
inequal.cc: Likewise.
* testsuite/26_numerics/random/geometric_distribution/cons/
default.cc: Likewise.
* testsuite/26_numerics/random/geometric_distribution/cons/parms.cc:
Likewise.
* testsuite/26_numerics/random/geometric_distribution/operators/
equal.cc: Likewise.
* testsuite/26_numerics/random/geometric_distribution/operators/
inequal.cc: Likewise.
* testsuite/26_numerics/random/independent_bits_engine/cons/55215.cc:
Likewise.
* testsuite/26_numerics/random/independent_bits_engine/operators/
equal.cc: Likewise.
* testsuite/26_numerics/random/independent_bits_engine/operators/
inequal.cc: Likewise.
* testsuite/26_numerics/random/independent_bits_engine/operators/
serialize.cc: Likewise.
* testsuite/26_numerics/random/knuth_b.cc: Likewise.
* testsuite/26_numerics/random/linear_congruential_engine/cons/
55215.cc: Likewise.
* testsuite/26_numerics/random/linear_congruential_engine/cons/
default.cc: Likewise.
* testsuite/26_numerics/random/linear_congruential_engine/operators/
51795.cc: Likewise.
* testsuite/26_numerics/random/linear_congruential_engine/operators/
equal.cc: Likewise.
* testsuite/26_numerics/random/linear_congruential_engine/operators/
inequal.cc: Likewise.
* testsuite/26_numerics/random/linear_congruential_engine/operators/
serialize.cc: Likewise.
* testsuite/26_numerics/random/lognormal_distribution/cons/default.cc:
Likewise.
* testsuite/26_numerics/random/lognormal_distribution/cons/parms.cc:
Likewise.
* testsuite/26_numerics/random/lognormal_distribution/operators/
equal.cc: Likewise.
* testsuite/26_numerics/random/lognormal_distribution/operators/
inequal.cc: Likewise.
* testsuite/26_numerics/random/mersenne_twister_engine/cons/55215.cc:
Likewise.
* testsuite/26_numerics/random/mersenne_twister_engine/cons/
default.cc: Likewise.
* testsuite/26_numerics/random/mersenne_twister_engine/operators/
equal.cc: Likewise.
* testsuite/26_numerics/random/mersenne_twister_engine/operators/
inequal.cc: Likewise.
* testsuite/26_numerics/random/mersenne_twister_engine/operators/
serialize.cc: Likewise.
* testsuite/26_numerics/random/minstd_rand.cc: Likewise.
* testsuite/26_numerics/random/minstd_rand0.cc: Likewise.
* testsuite/26_numerics/random/mt19937.cc: Likewise.
* testsuite/26_numerics/random/mt19937_64.cc: Likewise.
* testsuite/26_numerics/random/negative_binomial_distribution/cons/
default.cc: Likewise.
* testsuite/26_numerics/random/negative_binomial_distribution/cons/
parms.cc: Likewise.
* testsuite/26_numerics/random/negative_binomial_distribution/
operators/equal.cc: Likewise.
* testsuite/26_numerics/random/negative_binomial_distribution/
operators/inequal.cc: Likewise.
* testsuite/26_numerics/random/normal_distribution/cons/default.cc:
Likewise.
* testsuite/26_numerics/random/normal_distribution/cons/parms.cc:
Likewise.
* testsuite/26_numerics/random/normal_distribution/operators/
equal.cc: Likewise.
* testsuite/26_numerics/random/normal_distribution/operators/
inequal.cc: Likewise.
* testsuite/26_numerics/random/piecewise_constant_distribution/cons/
default.cc: Likewise.
* testsuite/26_numerics/random/piecewise_constant_distribution/cons/
initlist_fun.cc: Likewise.
* testsuite/26_numerics/random/piecewise_constant_distribution/cons/
num_xbound_fun.cc: Likewise.
* testsuite/26_numerics/random/piecewise_constant_distribution/cons/
range.cc: Likewise.
* testsuite/26_numerics/random/piecewise_constant_distribution/
operators/equal.cc: Likewise.
* testsuite/26_numerics/random/piecewise_constant_distribution/
operators/inequal.cc: Likewise.
* testsuite/26_numerics/random/piecewise_linear_distribution/cons/
default.cc: Likewise.
* testsuite/26_numerics/random/piecewise_linear_distribution/cons/
initlist_fun.cc: Likewise.
* testsuite/26_numerics/random/piecewise_linear_distribution/cons/
num_xbound_fun.cc: Likewise.
* testsuite/26_numerics/random/piecewise_linear_distribution/cons/
range.cc: Likewise.
* testsuite/26_numerics/random/piecewise_linear_distribution/
operators/equal.cc: Likewise.
* testsuite/26_numerics/random/piecewise_linear_distribution/
operators/inequal.cc: Likewise.
* testsuite/26_numerics/random/poisson_distribution/cons/default.cc:
Likewise.
* testsuite/26_numerics/random/poisson_distribution/cons/parms.cc:
Likewise.
* testsuite/26_numerics/random/poisson_distribution/operators/
equal.cc: Likewise.
* testsuite/26_numerics/random/poisson_distribution/operators/
inequal.cc: Likewise.
* testsuite/26_numerics/random/random_device/cons/default.cc: Likewise.
* testsuite/26_numerics/random/random_device/cons/token.cc: Likewise.
* testsuite/26_numerics/random/ranlux24.cc: Likewise.
* testsuite/26_numerics/random/ranlux24_base.cc: Likewise.
* testsuite/26_numerics/random/ranlux48.cc: Likewise.
* testsuite/26_numerics/random/ranlux48_base.cc: Likewise.
* testsuite/26_numerics/random/seed_seq/cons/initlist.cc: Likewise.
* testsuite/26_numerics/random/shuffle_order_engine/cons/55215.cc:
Likewise.
* testsuite/26_numerics/random/shuffle_order_engine/operators/
equal.cc: Likewise.
* testsuite/26_numerics/random/shuffle_order_engine/operators/
inequal.cc: Likewise.
* testsuite/26_numerics/random/shuffle_order_engine/operators/
serialize.cc: Likewise.
* testsuite/26_numerics/random/student_t_distribution/cons/
default.cc: Likewise.
* testsuite/26_numerics/random/student_t_distribution/cons/
parms.cc: Likewise.
* testsuite/26_numerics/random/student_t_distribution/operators/
equal.cc: Likewise.
* testsuite/26_numerics/random/student_t_distribution/operators/
inequal.cc: Likewise.
* testsuite/26_numerics/random/subtract_with_carry_engine/cons/
55215.cc: Likewise.
* testsuite/26_numerics/random/subtract_with_carry_engine/cons/
default.cc: Likewise.
* testsuite/26_numerics/random/subtract_with_carry_engine/operators/
equal.cc: Likewise.
* testsuite/26_numerics/random/subtract_with_carry_engine/operators/
inequal.cc: Likewise.
* testsuite/26_numerics/random/subtract_with_carry_engine/operators/
serialize.cc: Likewise.
* testsuite/26_numerics/random/uniform_int_distribution/cons/
default.cc: Likewise.
* testsuite/26_numerics/random/uniform_int_distribution/cons/
parms.cc: Likewise.
* testsuite/26_numerics/random/uniform_int_distribution/operators/
equal.cc: Likewise.
* testsuite/26_numerics/random/uniform_int_distribution/operators/
inequal.cc: Likewise.
* testsuite/26_numerics/random/uniform_real_distribution/cons/
default.cc: Likewise.
* testsuite/26_numerics/random/uniform_real_distribution/cons/
parms.cc: Likewise.
* testsuite/26_numerics/random/uniform_real_distribution/operators/
equal.cc: Likewise.
* testsuite/26_numerics/random/uniform_real_distribution/operators/
inequal.cc: Likewise.
* testsuite/26_numerics/random/weibull_distribution/cons/default.cc:
Likewise.
* testsuite/26_numerics/random/weibull_distribution/cons/parms.cc:
Likewise.
* testsuite/26_numerics/random/weibull_distribution/operators/
equal.cc: Likewise.
* testsuite/26_numerics/random/weibull_distribution/operators/
inequal.cc: Likewise.
* testsuite/26_numerics/slice/1.cc: Likewise.
* testsuite/26_numerics/slice_array/array_assignment.cc: Likewise.
* testsuite/26_numerics/valarray/27867.cc: Likewise.
* testsuite/26_numerics/valarray/28277.cc: Likewise.
* testsuite/26_numerics/valarray/30416.cc: Likewise.
* testsuite/26_numerics/valarray/dr543.cc: Likewise.
* testsuite/26_numerics/valarray/dr630-1.cc: Likewise.
* testsuite/26_numerics/valarray/dr630-2.cc: Likewise.
* testsuite/26_numerics/valarray/dr630-3.C: Likewise.
* testsuite/26_numerics/valarray/init-list.cc: Likewise.
* testsuite/26_numerics/valarray/moveable.cc: Likewise.
* testsuite/26_numerics/valarray/operators.cc: Likewise.
* testsuite/26_numerics/valarray/swap.cc: Likewise.
* testsuite/experimental/deque/erasure.cc: Likewise.
* testsuite/experimental/filesystem/iterators/directory_iterator.cc:
Likewise.
* testsuite/experimental/filesystem/iterators/
recursive_directory_iterator.cc: Likewise.
* testsuite/experimental/filesystem/operations/absolute.cc: Likewise.
* testsuite/experimental/filesystem/operations/canonical.cc: Likewise.
* testsuite/experimental/filesystem/operations/copy.cc: Likewise.
* testsuite/experimental/filesystem/operations/copy_file.cc: Likewise.
* testsuite/experimental/filesystem/operations/create_directories.cc:
Likewise.
* testsuite/experimental/filesystem/operations/create_directory.cc:
Likewise.
* testsuite/experimental/filesystem/operations/current_path.cc:
Likewise.
* testsuite/experimental/filesystem/operations/exists.cc: Likewise.
* testsuite/experimental/filesystem/operations/file_size.cc: Likewise.
* testsuite/experimental/filesystem/operations/last_write_time.cc:
Likewise.
* testsuite/experimental/filesystem/operations/permissions.cc: Likewise.
* testsuite/experimental/filesystem/operations/status.cc: Likewise.
* testsuite/experimental/filesystem/operations/temp_directory_path.cc:
Likewise.
* testsuite/experimental/filesystem/path/native/string.cc: Likewise.
* testsuite/experimental/forward_list/erasure.cc: Likewise.
* testsuite/experimental/list/erasure.cc: Likewise.
* testsuite/experimental/map/erasure.cc: Likewise.
* testsuite/experimental/memory/shared_ptr/assign/assign.cc: Likewise.
* testsuite/experimental/memory/shared_ptr/comparison/comparison.cc:
Likewise.
* testsuite/experimental/memory/shared_ptr/cons/alias_ctor.cc: Likewise.
* testsuite/experimental/memory/shared_ptr/cons/alloc_ctor.cc: Likewise.
* testsuite/experimental/memory/shared_ptr/cons/copy_ctor.cc: Likewise.
* testsuite/experimental/memory/shared_ptr/cons/default_ctor.cc:
Likewise.
* testsuite/experimental/memory/shared_ptr/cons/move_ctor.cc: Likewise.
* testsuite/experimental/memory/shared_ptr/cons/pointer_ctor.cc:
Likewise.
* testsuite/experimental/memory/shared_ptr/cons/unique_ptr_ctor.cc:
Likewise.
* testsuite/experimental/memory/shared_ptr/cons/weak_ptr_ctor.cc:
Likewise.
* testsuite/experimental/memory/shared_ptr/dest/dest.cc: Likewise.
* testsuite/experimental/memory/shared_ptr/modifiers/reset.cc: Likewise.
* testsuite/experimental/memory/shared_ptr/modifiers/swap.cc: Likewise.
* testsuite/experimental/memory/shared_ptr/observers/bool_conv.cc:
Likewise.
* testsuite/experimental/memory/shared_ptr/observers/operators.cc:
Likewise.
* testsuite/experimental/memory/shared_ptr/observers/owner_before.cc:
Likewise.
* testsuite/experimental/memory/shared_ptr/observers/use_count.cc:
Likewise.
* testsuite/experimental/memory_resource/1.cc: Likewise.
* testsuite/experimental/memory_resource/null_memory_resource.cc:
Likewise.
* testsuite/experimental/memory_resource/resource_adaptor.cc: Likewise.
* testsuite/experimental/set/erasure.cc: Likewise.
* testsuite/experimental/string/erasure.cc: Likewise.
* testsuite/experimental/string_view/capacity/1.cc: Likewise.
* testsuite/experimental/string_view/cons/char/1.cc: Likewise.
* testsuite/experimental/string_view/cons/char/2.cc: Likewise.
* testsuite/experimental/string_view/cons/char/3.cc: Likewise.
* testsuite/experimental/string_view/cons/wchar_t/1.cc: Likewise.
* testsuite/experimental/string_view/cons/wchar_t/2.cc: Likewise.
* testsuite/experimental/string_view/cons/wchar_t/3.cc: Likewise.
* testsuite/experimental/string_view/element_access/char/1.cc: Likewise.
* testsuite/experimental/string_view/element_access/char/empty.cc:
Likewise.
* testsuite/experimental/string_view/element_access/char/
front_back.cc: Likewise.
* testsuite/experimental/string_view/element_access/wchar_t/1.cc:
Likewise.
* testsuite/experimental/string_view/element_access/wchar_t/empty.cc:
Likewise.
* testsuite/experimental/string_view/element_access/wchar_t/
front_back.cc: Likewise.
* testsuite/experimental/string_view/inserters/char/1.cc: Likewise.
* testsuite/experimental/string_view/inserters/char/2.cc: Likewise.
* testsuite/experimental/string_view/inserters/char/3.cc: Likewise.
* testsuite/experimental/string_view/inserters/pod/10081-out.cc:
Likewise.
* testsuite/experimental/string_view/inserters/wchar_t/1.cc: Likewise.
* testsuite/experimental/string_view/inserters/wchar_t/2.cc: Likewise.
* testsuite/experimental/string_view/inserters/wchar_t/3.cc: Likewise.
* testsuite/experimental/string_view/modifiers/remove_prefix/char/
1.cc: Likewise.
* testsuite/experimental/string_view/modifiers/remove_prefix/wchar_t/
1.cc: Likewise.
* testsuite/experimental/string_view/modifiers/remove_suffix/char/
1.cc: Likewise.
* testsuite/experimental/string_view/modifiers/remove_suffix/wchar_t/
1.cc: Likewise.
* testsuite/experimental/string_view/operations/compare/char/1.cc:
Likewise.
* testsuite/experimental/string_view/operations/compare/char/
13650.cc: Likewise.
* testsuite/experimental/string_view/operations/compare/wchar_t/
1.cc: Likewise.
* testsuite/experimental/string_view/operations/compare/wchar_t/
13650.cc: Likewise.
* testsuite/experimental/string_view/operations/copy/char/1.cc:
Likewise.
* testsuite/experimental/string_view/operations/copy/wchar_t/1.cc:
Likewise.
* testsuite/experimental/string_view/operations/data/char/1.cc:
Likewise.
* testsuite/experimental/string_view/operations/data/wchar_t/1.cc:
Likewise.
* testsuite/experimental/string_view/operations/find/char/1.cc:
Likewise.
* testsuite/experimental/string_view/operations/find/char/2.cc:
Likewise.
* testsuite/experimental/string_view/operations/find/char/3.cc:
Likewise.
* testsuite/experimental/string_view/operations/find/char/4.cc:
Likewise.
* testsuite/experimental/string_view/operations/find/wchar_t/1.cc:
Likewise.
* testsuite/experimental/string_view/operations/find/wchar_t/2.cc:
Likewise.
* testsuite/experimental/string_view/operations/find/wchar_t/3.cc:
Likewise.
* testsuite/experimental/string_view/operations/find/wchar_t/4.cc:
Likewise.
* testsuite/experimental/string_view/operations/rfind/char/1.cc:
Likewise.
* testsuite/experimental/string_view/operations/rfind/char/2.cc:
Likewise.
* testsuite/experimental/string_view/operations/rfind/char/3.cc:
Likewise.
* testsuite/experimental/string_view/operations/rfind/wchar_t/1.cc:
Likewise.
* testsuite/experimental/string_view/operations/rfind/wchar_t/2.cc:
Likewise.
* testsuite/experimental/string_view/operations/rfind/wchar_t/3.cc:
Likewise.
* testsuite/experimental/string_view/operations/substr/char/1.cc:
Likewise.
* testsuite/experimental/string_view/operations/substr/wchar_t/1.cc:
Likewise.
* testsuite/experimental/string_view/operations/to_string/1.cc:
Likewise.
* testsuite/experimental/string_view/operators/char/2.cc: Likewise.
* testsuite/experimental/string_view/operators/wchar_t/2.cc: Likewise.
* testsuite/experimental/unordered_map/erasure.cc: Likewise.
* testsuite/experimental/unordered_set/erasure.cc: Likewise.
* testsuite/experimental/vector/erasure.cc: Likewise.
* testsuite/ext/array_allocator/1.cc: Likewise.
* testsuite/ext/array_allocator/2.cc: Likewise.
* testsuite/ext/array_allocator/3.cc: Likewise.
* testsuite/ext/array_allocator/variadic_construct.cc: Likewise.
* testsuite/ext/bitmap_allocator/variadic_construct.cc: Likewise.
* testsuite/ext/codecvt/1.cc: Likewise.
* testsuite/ext/codecvt/char-1.cc: Likewise.
* testsuite/ext/codecvt/char-2.cc: Likewise.
* testsuite/ext/codecvt/wchar_t.cc: Likewise.
* testsuite/ext/enc_filebuf/char/13189.cc: Likewise.
* testsuite/ext/enc_filebuf/char/13598.cc: Likewise.
* testsuite/ext/enc_filebuf/wchar_t/13189.cc: Likewise.
* testsuite/ext/ext_pointer/1.cc: Likewise.
* testsuite/ext/ext_pointer/1_neg.cc: Likewise.
* testsuite/ext/malloc_allocator/variadic_construct.cc: Likewise.
* testsuite/ext/mt_allocator/check_allocate_big_per_type.cc: Likewise.
* testsuite/ext/mt_allocator/tune-1.cc: Likewise.
* testsuite/ext/mt_allocator/tune-2.cc: Likewise.
* testsuite/ext/mt_allocator/tune-3.cc: Likewise.
* testsuite/ext/mt_allocator/tune-4.cc: Likewise.
* testsuite/ext/mt_allocator/variadic_construct.cc: Likewise.
* testsuite/ext/new_allocator/variadic_construct.cc: Likewise.
* testsuite/ext/pod_char_traits.cc: Likewise.
* testsuite/ext/pool_allocator/variadic_construct.cc: Likewise.
* testsuite/ext/random/arcsine_distribution/cons/default.cc: Likewise.
* testsuite/ext/random/arcsine_distribution/cons/parms.cc: Likewise.
* testsuite/ext/random/arcsine_distribution/operators/equal.cc:
Likewise.
* testsuite/ext/random/arcsine_distribution/operators/inequal.cc:
Likewise.
* testsuite/ext/random/arcsine_distribution/operators/serialize.cc:
Likewise.
* testsuite/ext/random/beta_distribution/cons/default.cc: Likewise.
* testsuite/ext/random/beta_distribution/cons/parms.cc: Likewise.
* testsuite/ext/random/beta_distribution/operators/equal.cc: Likewise.
* testsuite/ext/random/beta_distribution/operators/inequal.cc: Likewise.
* testsuite/ext/random/hoyt_distribution/cons/default.cc: Likewise.
* testsuite/ext/random/hoyt_distribution/cons/parms.cc: Likewise.
* testsuite/ext/random/hoyt_distribution/operators/equal.cc: Likewise.
* testsuite/ext/random/hoyt_distribution/operators/inequal.cc: Likewise.
* testsuite/ext/random/hoyt_distribution/operators/serialize.cc:
Likewise.
* testsuite/ext/random/hypergeometric_distribution/cons/default.cc:
Likewise.
* testsuite/ext/random/hypergeometric_distribution/cons/parms.cc:
Likewise.
* testsuite/ext/random/hypergeometric_distribution/operators/
equal.cc: Likewise.
* testsuite/ext/random/hypergeometric_distribution/operators/
inequal.cc: Likewise.
* testsuite/ext/random/hypergeometric_distribution/operators/
serialize.cc: Likewise.
* testsuite/ext/random/k_distribution/cons/default.cc: Likewise.
* testsuite/ext/random/k_distribution/cons/parms.cc: Likewise.
* testsuite/ext/random/k_distribution/operators/equal.cc: Likewise.
* testsuite/ext/random/k_distribution/operators/inequal.cc: Likewise.
* testsuite/ext/random/k_distribution/operators/serialize.cc: Likewise.
* testsuite/ext/random/logistic_distribution/cons/default.cc: Likewise.
* testsuite/ext/random/logistic_distribution/cons/parms.cc: Likewise.
* testsuite/ext/random/logistic_distribution/operators/equal.cc:
Likewise.
* testsuite/ext/random/logistic_distribution/operators/inequal.cc:
Likewise.
* testsuite/ext/random/logistic_distribution/operators/serialize.cc:
Likewise.
* testsuite/ext/random/nakagami_distribution/cons/default.cc: Likewise.
* testsuite/ext/random/nakagami_distribution/cons/parms.cc: Likewise.
* testsuite/ext/random/nakagami_distribution/operators/equal.cc:
Likewise.
* testsuite/ext/random/nakagami_distribution/operators/inequal.cc:
Likewise.
* testsuite/ext/random/nakagami_distribution/operators/serialize.cc:
Likewise.
* testsuite/ext/random/normal_mv_distribution/cons/default.cc: Likewise.
* testsuite/ext/random/normal_mv_distribution/cons/parms.cc: Likewise.
* testsuite/ext/random/normal_mv_distribution/operators/equal.cc:
Likewise.
* testsuite/ext/random/normal_mv_distribution/operators/inequal.cc:
Likewise.
* testsuite/ext/random/pareto_distribution/cons/default.cc: Likewise.
* testsuite/ext/random/pareto_distribution/cons/parms.cc: Likewise.
* testsuite/ext/random/pareto_distribution/operators/equal.cc: Likewise.
* testsuite/ext/random/pareto_distribution/operators/inequal.cc:
Likewise.
* testsuite/ext/random/pareto_distribution/operators/serialize.cc:
Likewise.
* testsuite/ext/random/rice_distribution/cons/default.cc: Likewise.
* testsuite/ext/random/rice_distribution/cons/parms.cc: Likewise.
* testsuite/ext/random/rice_distribution/operators/equal.cc: Likewise.
* testsuite/ext/random/rice_distribution/operators/inequal.cc: Likewise.
* testsuite/ext/random/rice_distribution/operators/serialize.cc:
Likewise.
* testsuite/ext/random/simd_fast_mersenne_twister_engine/cons/
default.cc: Likewise.
* testsuite/ext/random/simd_fast_mersenne_twister_engine/operators/
equal.cc: Likewise.
* testsuite/ext/random/simd_fast_mersenne_twister_engine/operators/
inequal.cc: Likewise.
* testsuite/ext/random/simd_fast_mersenne_twister_engine/operators/
serialize.cc: Likewise.
* testsuite/ext/random/triangular_distribution/cons/default.cc:
Likewise.
* testsuite/ext/random/triangular_distribution/cons/parms.cc: Likewise.
* testsuite/ext/random/triangular_distribution/operators/equal.cc:
Likewise.
* testsuite/ext/random/triangular_distribution/operators/inequal.cc:
Likewise.
* testsuite/ext/random/uniform_on_sphere_distribution/cons/default.cc:
Likewise.
* testsuite/ext/random/uniform_on_sphere_distribution/operators/
equal.cc: Likewise.
* testsuite/ext/random/uniform_on_sphere_distribution/operators/
generate.cc: Likewise.
* testsuite/ext/random/uniform_on_sphere_distribution/operators/
inequal.cc: Likewise.
* testsuite/ext/random/uniform_on_sphere_distribution/operators/
serialize.cc: Likewise.
* testsuite/ext/random/von_mises_distribution/cons/default.cc: Likewise.
* testsuite/ext/random/von_mises_distribution/cons/parms.cc: Likewise.
* testsuite/ext/random/von_mises_distribution/operators/equal.cc:
Likewise.
* testsuite/ext/random/von_mises_distribution/operators/inequal.cc:
Likewise.
* testsuite/ext/rope/2.cc: Likewise.
* testsuite/ext/rope/3.cc: Likewise.
* testsuite/ext/rope/4.cc: Likewise.
* testsuite/ext/rope/pthread7-rope.cc: Likewise.
* testsuite/ext/special_functions/conf_hyperg/check_nan.cc: Likewise.
* testsuite/ext/special_functions/conf_hyperg/check_value.cc: Likewise.
* testsuite/ext/special_functions/hyperg/check_nan.cc: Likewise.
* testsuite/ext/special_functions/hyperg/check_value.cc: Likewise.
* testsuite/ext/stdio_filebuf/char/10063-1.cc: Likewise.
* testsuite/ext/stdio_filebuf/char/10063-2.cc: Likewise.
* testsuite/ext/stdio_filebuf/char/10063-3.cc: Likewise.
* testsuite/ext/stdio_filebuf/char/2.cc: Likewise.
* testsuite/ext/stdio_sync_filebuf/char/1.cc: Likewise.
* testsuite/ext/stdio_sync_filebuf/char/12048-1.cc: Likewise.
* testsuite/ext/stdio_sync_filebuf/char/12048-2.cc: Likewise.
* testsuite/ext/stdio_sync_filebuf/char/12048-3.cc: Likewise.
* testsuite/ext/stdio_sync_filebuf/char/12048-4.cc: Likewise.
* testsuite/ext/stdio_sync_filebuf/wchar_t/1.cc: Likewise.
* testsuite/ext/stdio_sync_filebuf/wchar_t/12077.cc: Likewise.
* testsuite/ext/stdio_sync_filebuf/wchar_t/12948-1.cc: Likewise.
* testsuite/ext/stdio_sync_filebuf/wchar_t/12948-2.cc: Likewise.
* testsuite/ext/stdio_sync_filebuf/wchar_t/12948-3.cc: Likewise.
* testsuite/ext/stdio_sync_filebuf/wchar_t/12948-4.cc: Likewise.
* testsuite/ext/throw_allocator/variadic_construct.cc: Likewise.
* testsuite/ext/type_traits/add_unsigned.cc: Likewise.
* testsuite/ext/type_traits/remove_unsigned.cc: Likewise.
* testsuite/ext/vstring/capacity/29134.cc: Likewise.
* testsuite/ext/vstring/capacity/shrink_to_fit.cc: Likewise.
* testsuite/ext/vstring/cons/58415-1.cc: Likewise.
* testsuite/ext/vstring/cons/moveable.cc: Likewise.
* testsuite/ext/vstring/element_access/char/58163.cc: Likewise.
* testsuite/ext/vstring/element_access/char/front_back.cc: Likewise.
* testsuite/ext/vstring/element_access/wchar_t/58163.cc: Likewise.
* testsuite/ext/vstring/element_access/wchar_t/front_back.cc: Likewise.
* testsuite/ext/vstring/hash/char/1.cc: Likewise.
* testsuite/ext/vstring/hash/wchar_t/1.cc: Likewise.
* testsuite/ext/vstring/init-list.cc: Likewise.
* testsuite/ext/vstring/inserters_extractors/char/28277.cc: Likewise.
* testsuite/ext/vstring/inserters_extractors/wchar_t/28277.cc: Likewise.
* testsuite/ext/vstring/modifiers/assign/move_assign.cc: Likewise.
* testsuite/ext/vstring/modifiers/pop_back/char/1.cc: Likewise.
* testsuite/ext/vstring/modifiers/pop_back/wchar_t/1.cc: Likewise.
* testsuite/ext/vstring/operators/1.cc: Likewise.
* testsuite/ext/vstring/operators/2.cc: Likewise.
From-SVN: r241164
2016-10-14 13:50:24 +00:00
Ian Lance Taylor
238fc3441c
runtime: copy cpuprof code from Go 1.7 runtime
...
This replaces runtime/cpuprof.goc with go/runtime/cpuprof.go and adjusts
the supporting code in runtime/proc.c.
This adds another case where the compiler needs to avoid heap allocation
in the runtime package: when evaluating a method expression into a
closure. Implementing this required moving the relevant code from
do_get_backend to do_flatten, so that I could easily add a temporary
variable. Doing that let me get rid of Bound_method_expression::do_lower.
Reviewed-on: https://go-review.googlesource.com/31050
From-SVN: r241163
2016-10-14 13:36:35 +00:00
Richard Biener
6d59425df7
re PR tree-optimization/77979 (ICE on valid code at -Os and above on x86_64-linux-gnu: Segmentation fault)
...
2016-10-14 Richard Biener <rguenther@suse.de>
PR tree-optimization/77979
* tree-vrp.c (compare_name_with_value): Handle released SSA names
in the equivalency sets.
(compare_names): Likewise.
* gcc.dg/torture/pr77979.c: New testcase.
From-SVN: r241162
2016-10-14 12:58:18 +00:00
Martin Liska
43f66d6e1e
Test folding of str{n}{case}cmp and memchr
...
* gcc.dg/tree-ssa/builtins-folding-generic.c: New test.
* gcc.dg/tree-ssa/builtins-folding-gimple.c: Likewise.
* gcc.dg/tree-ssa/builtins-folding-gimple-ub.c: Likewise.
From-SVN: r241161
2016-10-14 12:10:16 +00:00
Martin Liska
488c624747
Fold __builtin_memchr function
...
* builtins.h(target_char_cst_p): Declare the function.
* builtins.c (fold_builtin_memchr): Remove.
(target_char_cst_p): Move the function from gimple-fold.c.
(fold_builtin_3): Do not call the function.
* gimple-fold.c (gimple_fold_builtin_memchr): New function.
(gimple_fold_builtin): Call the function.
* fold-const-call.c (fold_const_call_1): Handle CFN_BUILT_IN_MEMCHR.
From-SVN: r241160
2016-10-14 12:09:51 +00:00
Martin Liska
a918bfbf3c
Fold __builtin_str{n}{case}cmp functions
...
* builtins.c (fold_builtin_strcmp): Remove function.
(fold_builtin_strncmp): Likewise.
(fold_builtin_2): Remove call of the function.
(fold_builtin_3): Likewise.
* fold-const-call.c (fold_const_call): Add constant folding
for CFN_BUILT_IN_STRCASECMP and CFN_BUILT_IN_STRNCASECMP.
* fold-const-call.h (build_cmp_result): Declare the function.
* gimple-fold.c (gimple_load_first_char): New function.
(gimple_fold_builtin_string_compare): Likewise.
(gimple_fold_builtin): Call the function.
From-SVN: r241159
2016-10-14 12:08:27 +00:00
Jonathan Wakely
ace4c2f060
PR65122 extended alignment support in allocators
...
PR libstdc++/65122
* include/ext/malloc_allocator.h (malloc_allocator::allocate): Use
aligned_alloc for types with extended alignment if available,
otherwise throw bad_alloc if malloc doesn't return a suitable value.
* include/ext/bitmap_allocator.h (bitmap_allocator::allocate)
(bitmap_allocator::deallocate): Use aligned new/delete for types with
extended alignment.
* include/ext/mt_allocator.h (__mt_alloc::allocate)
(__mt_alloc::deallocate): Likewise.
* include/ext/new_allocator.h (new_allocator::allocate)
(new_allocator::deallocate): Likewise.
* include/ext/pool_allocator.h (__pool_alloc::allocate)
(__pool_alloc::deallocate): Likewise.
* testsuite/20_util/allocator/overaligned.cc: New test.
* testsuite/ext/bitmap_allocator/overaligned.cc: New test.
* testsuite/ext/malloc_allocator/overaligned.cc: New test.
* testsuite/ext/mt_allocator/overaligned.cc: New test.
* testsuite/ext/new_allocator/overaligned.cc: New test.
* testsuite/ext/pool_allocator/overaligned.cc: New test.
From-SVN: r241158
2016-10-14 13:03:47 +01:00
Uros Bizjak
cb3ac86754
Fix gcc.dg/torture/pr77937-[12].c for real.
...
2016-10-14 Uros Bizjak <ubizjak@gmail.com>
* gcc.dg/torture/pr77937-1.c: Move -O3 to dg-options.
Pass -march=amdfam10 for both i?86-?-* and x86_64-*-*.
* gcc.dg/torture/pr77937-2.c: Likewise.
From-SVN: r241157
2016-10-14 11:24:41 +00:00
Markus Trippelsdorf
2c3e40f590
Fix pr77937-1.c and pr77937-2.c testcases
...
From-SVN: r241156
2016-10-14 11:07:13 +00:00
Nathan Sidwell
74d2b9071b
* gcov-io.c (gcov_open): Deconstify 'mode'.
...
From-SVN: r241155
2016-10-14 10:51:58 +00:00
Eric Botcazou
14cf71a0df
re PR ada/77968 (ICEs with -flto on gnat.dg)
...
PR ada/77968
* gcc-interface/utils.c (create_var_decl): Do not clear TREE_READONLY
in LTO mode for an external variable.
(can_materialize_object_renaming_p): Move up.
From-SVN: r241154
2016-10-14 10:28:27 +00:00
Tim Shen
45b510b370
re PR libstdc++/77944 (FAIL: 20_util/variant/compile.cc (test for excess errors))
...
PR libstdc++/77944
* include/std/variant: include <bits/funcexcept.h> for __try and __catch.
From-SVN: r241153
2016-10-14 09:58:05 +00:00
Martin Liska
a766d4d74d
Support only \0-terminated string in c_getstr and return
...
* fold-const.c (c_getstr): Support of properly \0-terminated
string constants. New argument is added.
* fold-const.h: New argument is added.
From-SVN: r241152
2016-10-14 09:54:32 +00:00
Jonathan Wakely
57c4fbc64b
Simplify reference_wrapper nested typedefs
...
* include/std/functional (_Reference_wrapper_base_impl): Remove.
(_Refwrap_base_arg1, _Refwrap_base_arg2): New helpers using __void_t.
(_Reference_wrapper_base): Inherit from new helpers.
From-SVN: r241151
2016-10-14 10:12:49 +01:00
Andre Vehreschild
6fd9c6f4c5
coarray_38.f90: Expect error message.
...
gcc/testsuite/ChangeLog:
2016-10-14 Andre Vehreschild <vehre@gcc.gnu.org>
* gfortran.dg/coarray_38.f90: Expect error message.
gcc/fortran/ChangeLog:
2016-10-14 Andre Vehreschild <vehre@gcc.gnu.org>
* resolve.c (resolve_symbol): Add unimplemented message for
polymorphic types with allocatable/pointer components and coarray=lib.
From-SVN: r241150
2016-10-14 10:52:10 +02:00
Kyrylo Tkachov
01f440383c
[AArch64] Add spellchecking hints for -march,-mcpu,-mtune and their attributes
...
* config/aarch64/aarch64.c (aarch64_print_hint_for_core_or_arch):
New function.
(aarch64_print_hint_for_core): Likewise.
(aarch64_print_hint_for_arch): Likewise.
(aarch64_validate_march): Use it. Fix indentation in type signature.
(aarch64_validate_mcpu): Use aarch64_print_hint_for_core_or_arch.
(aarch64_validate_mtune): Likewise.
(aarch64_handle_attr_arch): Likewise.
(aarch64_handle_attr_cpu): Likewise.
(aarch64_handle_attr_tune): Likewise.
* gcc.target/aarch64/spellcheck_1.c: New test.
* gcc.target/aarch64/spellcheck_2.c: Likewise.
* gcc.target/aarch64/spellcheck_3.c: Likewise.
* gcc.target/aarch64/spellcheck_4.c: Likewise.
* gcc.target/aarch64/spellcheck_5.c: Likewise.
* gcc.target/aarch64/spellcheck_6.c: Likewise.
From-SVN: r241149
2016-10-14 08:40:04 +00:00
Eric Botcazou
4827fd102c
Fix long line
...
From-SVN: r241148
2016-10-14 06:14:15 +00:00
Prathamesh Kulkarni
b0057783c7
optabs.def: Remove optab function gen_int_libfunc for sdivmod_optab and udivmod_optab.
...
2016-10-14 Prathamesh Kulkarni <prathamesh.kulkarni@linaro.org>
* optabs.def: Remove optab function gen_int_libfunc for sdivmod_optab and
udivmod_optab.
From-SVN: r241147
2016-10-14 05:57:33 +00:00
GCC Administrator
7ca95f505b
Daily bump.
...
From-SVN: r241146
2016-10-14 00:16:15 +00:00
Martin Sebor
9603204722
PR c++/71912 - [6/7 regression] flexible array in struct in union rejected
...
gcc/cp/ChangeLog:
PR c++/71912
* class.c (struct flexmems_t): Add members.
(find_flexarrays): Add arguments. Correct handling of anonymous
structs.
(diagnose_flexarrays): Adjust to issue warnings in addition to errors.
(check_flexarrays): Add argument.
(diagnose_invalid_flexarray): New functions.
gcc/testsuite/ChangeLog:
PR c++/71912
* g++.dg/ext/flexary4.C: Adjust.
* g++.dg/ext/flexary5.C: Same.
* g++.dg/ext/flexary9.C: Same.
* g++.dg/ext/flexary19.C: New test.
* g++.dg/ext/flexary18.C: New test.
* g++.dg/torture/pr64312.C: Add a dg-error directive to an ill-formed
regression test.
* g++.dg/compat/struct-layout-1_generate.c (subfield): Add argument.
Avoid generating a flexible array member in an array.
From-SVN: r241143
2016-10-13 16:26:36 -06:00
Andreas Schwab
253abb2a15
m68k.c (m68k_option_override): Check opt_fstack_limit_symbol_arg and opt_fstack_limit_register_no instead of...
...
gcc/
* config/m68k/m68k.c (m68k_option_override): Check
opt_fstack_limit_symbol_arg and opt_fstack_limit_register_no
instead of stack_limit_rtx.
gcc/testsuite/
* gcc.target/m68k/stack-limit-1.c: Expect warning on line 0.
From-SVN: r241140
2016-10-13 20:19:42 +00:00
Bill Schmidt
a269531973
re PR tree-optimization/77937 (ICE: in replace_one_candidate, at gimple-ssa-strength-reduction.c:3370)
...
2016-10-13 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
PR tree-optimization/77937
* gcc.dg/torture/pr77937-1.c: New.
* gcc.dg/torture/pr77937-2.c: New.
From-SVN: r241139
2016-10-13 19:50:41 +00:00
Paolo Carlini
2437d31d0e
container_access.cc: Remove 'test' variables.
...
2016-10-13 Paolo Carlini <paolo.carlini@oracle.com>
* testsuite/24_iterators/container_access.cc: Remove 'test' variables.
* testsuite/24_iterators/istream_iterator/2.cc: Likewise.
* testsuite/24_iterators/istreambuf_iterator/2.cc: Likewise.
* testsuite/24_iterators/istreambuf_iterator/2627.cc: Likewise.
* testsuite/24_iterators/operations/next.cc: Likewise.
* testsuite/24_iterators/operations/prev.cc: Likewise.
* testsuite/24_iterators/ostreambuf_iterator/2.cc: Likewise.
* testsuite/24_iterators/random_access_iterator/26020.cc: Likewise.
* testsuite/24_iterators/range_access_cpp14.cc: Likewise.
* testsuite/24_iterators/reverse_iterator/11729.cc: Likewise.
* testsuite/24_iterators/reverse_iterator/3.cc: Likewise.
* testsuite/25_algorithms/adjacent_find/vectorbool.cc: Likewise.
* testsuite/25_algorithms/all_of/1.cc: Likewise.
* testsuite/25_algorithms/any_of/1.cc: Likewise.
* testsuite/25_algorithms/binary_search/2.cc: Likewise.
* testsuite/25_algorithms/binary_search/partitioned.cc: Likewise.
* testsuite/25_algorithms/clamp/1.cc: Likewise.
* testsuite/25_algorithms/clamp/2.cc: Likewise.
* testsuite/25_algorithms/copy/1.cc: Likewise.
* testsuite/25_algorithms/copy/2.cc: Likewise.
* testsuite/25_algorithms/copy/3.cc: Likewise.
* testsuite/25_algorithms/copy/34595.cc: Likewise.
* testsuite/25_algorithms/copy/4.cc: Likewise.
* testsuite/25_algorithms/copy/deque_iterators/1.cc: Likewise.
* testsuite/25_algorithms/copy/move_iterators/1.cc: Likewise.
* testsuite/25_algorithms/copy/streambuf_iterators/char/1.cc: Likewise.
* testsuite/25_algorithms/copy/streambuf_iterators/char/2.cc: Likewise.
* testsuite/25_algorithms/copy/streambuf_iterators/char/3.cc: Likewise.
* testsuite/25_algorithms/copy/streambuf_iterators/char/4.cc: Likewise.
* testsuite/25_algorithms/copy/streambuf_iterators/wchar_t/1.cc:
Likewise.
* testsuite/25_algorithms/copy/streambuf_iterators/wchar_t/2.cc:
Likewise.
* testsuite/25_algorithms/copy/streambuf_iterators/wchar_t/3.cc:
Likewise.
* testsuite/25_algorithms/copy/streambuf_iterators/wchar_t/4.cc:
Likewise.
* testsuite/25_algorithms/copy_backward/deque_iterators/1.cc: Likewise.
* testsuite/25_algorithms/copy_backward/move_iterators/1.cc: Likewise.
* testsuite/25_algorithms/copy_n/1.cc: Likewise.
* testsuite/25_algorithms/copy_n/2.cc: Likewise.
* testsuite/25_algorithms/copy_n/3.cc: Likewise.
* testsuite/25_algorithms/copy_n/4.cc: Likewise.
* testsuite/25_algorithms/copy_n/50119.cc: Likewise.
* testsuite/25_algorithms/copy_n/move_iterators/1.cc: Likewise.
* testsuite/25_algorithms/equal_range/2.cc: Likewise.
* testsuite/25_algorithms/equal_range/partitioned.cc: Likewise.
* testsuite/25_algorithms/fill/1.cc: Likewise.
* testsuite/25_algorithms/fill/2.cc: Likewise.
* testsuite/25_algorithms/fill/3.cc: Likewise.
* testsuite/25_algorithms/fill/4.cc: Likewise.
* testsuite/25_algorithms/fill_n/1.cc: Likewise.
* testsuite/25_algorithms/find/39546.cc: Likewise.
* testsuite/25_algorithms/find/istreambuf_iterators/char/1.cc: Likewise.
* testsuite/25_algorithms/find/istreambuf_iterators/char/2.cc: Likewise.
* testsuite/25_algorithms/find/istreambuf_iterators/wchar_t/1.cc:
Likewise.
* testsuite/25_algorithms/find/istreambuf_iterators/wchar_t/2.cc:
Likewise.
* testsuite/25_algorithms/find_if/1.cc: Likewise.
* testsuite/25_algorithms/find_if_not/1.cc: Likewise.
* testsuite/25_algorithms/for_each/1.cc: Likewise.
* testsuite/25_algorithms/heap/1.cc: Likewise.
* testsuite/25_algorithms/heap/moveable.cc: Likewise.
* testsuite/25_algorithms/heap/moveable2.cc: Likewise.
* testsuite/25_algorithms/heap/vectorbool.cc: Likewise.
* testsuite/25_algorithms/includes/1.cc: Likewise.
* testsuite/25_algorithms/inplace_merge/1.cc: Likewise.
* testsuite/25_algorithms/inplace_merge/49559.cc: Likewise.
* testsuite/25_algorithms/inplace_merge/moveable.cc: Likewise.
* testsuite/25_algorithms/inplace_merge/moveable2.cc: Likewise.
* testsuite/25_algorithms/is_heap/1.cc: Likewise.
* testsuite/25_algorithms/is_heap_until/1.cc: Likewise.
* testsuite/25_algorithms/is_partitioned/1.cc: Likewise.
* testsuite/25_algorithms/is_permutation/1.cc: Likewise.
* testsuite/25_algorithms/is_permutation/2.cc: Likewise.
* testsuite/25_algorithms/is_permutation/vectorbool.cc: Likewise.
* testsuite/25_algorithms/is_sorted/1.cc: Likewise.
* testsuite/25_algorithms/is_sorted_until/1.cc: Likewise.
* testsuite/25_algorithms/iter_swap/20577.cc: Likewise.
* testsuite/25_algorithms/lower_bound/2.cc: Likewise.
* testsuite/25_algorithms/lower_bound/partitioned.cc: Likewise.
* testsuite/25_algorithms/make_heap/complexity.cc: Likewise.
* testsuite/25_algorithms/max/1.cc: Likewise.
* testsuite/25_algorithms/max/2.cc: Likewise.
* testsuite/25_algorithms/max/3.cc: Likewise.
* testsuite/25_algorithms/max/37547.cc: Likewise.
* testsuite/25_algorithms/max/4.cc: Likewise.
* testsuite/25_algorithms/min/1.cc: Likewise.
* testsuite/25_algorithms/min/2.cc: Likewise.
* testsuite/25_algorithms/min/3.cc: Likewise.
* testsuite/25_algorithms/min/37547.cc: Likewise.
* testsuite/25_algorithms/min/4.cc: Likewise.
* testsuite/25_algorithms/minmax/1.cc: Likewise.
* testsuite/25_algorithms/minmax/2.cc: Likewise.
* testsuite/25_algorithms/minmax/3.cc: Likewise.
* testsuite/25_algorithms/minmax/37547.cc: Likewise.
* testsuite/25_algorithms/minmax_element/1.cc: Likewise.
* testsuite/25_algorithms/move/1.cc: Likewise.
* testsuite/25_algorithms/move/deque_iterators/1.cc: Likewise.
* testsuite/25_algorithms/move_backward/1.cc: Likewise.
* testsuite/25_algorithms/move_backward/deque_iterators/1.cc: Likewise.
* testsuite/25_algorithms/next_permutation/moveable.cc: Likewise.
* testsuite/25_algorithms/none_of/1.cc: Likewise.
* testsuite/25_algorithms/nth_element/1.cc: Likewise.
* testsuite/25_algorithms/nth_element/2.cc: Likewise.
* testsuite/25_algorithms/nth_element/3.cc: Likewise.
* testsuite/25_algorithms/nth_element/moveable.cc: Likewise.
* testsuite/25_algorithms/nth_element/random_test.cc: Likewise.
* testsuite/25_algorithms/partial_sort/2.cc: Likewise.
* testsuite/25_algorithms/partial_sort/check_compare_by_value.cc:
Likewise.
* testsuite/25_algorithms/partial_sort/moveable.cc: Likewise.
* testsuite/25_algorithms/partial_sort/random_test.cc: Likewise.
* testsuite/25_algorithms/partial_sort_copy/2.cc: Likewise.
* testsuite/25_algorithms/partial_sort_copy/random_test.cc: Likewise.
* testsuite/25_algorithms/partition/1.cc: Likewise.
* testsuite/25_algorithms/partition/moveable.cc: Likewise.
* testsuite/25_algorithms/partition_copy/1.cc: Likewise.
* testsuite/25_algorithms/partition_point/1.cc: Likewise.
* testsuite/25_algorithms/pop_heap/complexity.cc: Likewise.
* testsuite/25_algorithms/prev_permutation/moveable.cc: Likewise.
* testsuite/25_algorithms/push_heap/complexity.cc: Likewise.
* testsuite/25_algorithms/random_shuffle/1.cc: Likewise.
* testsuite/25_algorithms/random_shuffle/moveable.cc: Likewise.
* testsuite/25_algorithms/rotate/1.cc: Likewise.
* testsuite/25_algorithms/rotate/moveable.cc: Likewise.
* testsuite/25_algorithms/rotate/moveable2.cc: Likewise.
* testsuite/25_algorithms/rotate/rotate.cc: Likewise.
* testsuite/25_algorithms/search/1.cc: Likewise.
* testsuite/25_algorithms/search_n/58358.cc: Likewise.
* testsuite/25_algorithms/shuffle/1.cc: Likewise.
* testsuite/25_algorithms/sort/1.cc: Likewise.
* testsuite/25_algorithms/sort/check_compare_by_value.cc: Likewise.
* testsuite/25_algorithms/sort/moveable.cc: Likewise.
* testsuite/25_algorithms/sort/random_test.cc: Likewise.
* testsuite/25_algorithms/sort/vectorbool.cc: Likewise.
* testsuite/25_algorithms/sort_heap/check_compare_by_value.cc: Likewise.
* testsuite/25_algorithms/sort_heap/complexity.cc: Likewise.
* testsuite/25_algorithms/stable_partition/1.cc: Likewise.
* testsuite/25_algorithms/stable_partition/mem_check.cc: Likewise.
* testsuite/25_algorithms/stable_partition/moveable.cc: Likewise.
* testsuite/25_algorithms/stable_sort/2.cc: Likewise.
* testsuite/25_algorithms/stable_sort/3.cc: Likewise.
* testsuite/25_algorithms/stable_sort/49559.cc: Likewise.
* testsuite/25_algorithms/stable_sort/check_compare_by_value.cc:
Likewise.
* testsuite/25_algorithms/stable_sort/mem_check.cc: Likewise.
* testsuite/25_algorithms/stable_sort/moveable.cc: Likewise.
* testsuite/25_algorithms/stable_sort/moveable2.cc: Likewise.
* testsuite/25_algorithms/swap_ranges/1.cc: Likewise.
* testsuite/25_algorithms/unique/11480.cc: Likewise.
* testsuite/25_algorithms/unique/2.cc: Likewise.
* testsuite/25_algorithms/unique/moveable.cc: Likewise.
* testsuite/25_algorithms/unique_copy/1.cc: Likewise.
* testsuite/25_algorithms/unique_copy/2.cc: Likewise.
* testsuite/25_algorithms/unique_copy/26133.cc: Likewise.
* testsuite/25_algorithms/upper_bound/2.cc: Likewise.
* testsuite/25_algorithms/upper_bound/partitioned.cc: Likewise.
* testsuite/28_regex/algorithms/regex_match/awk/cstring_01.cc: Likewise.
* testsuite/28_regex/algorithms/regex_match/basic/empty_range.cc:
Likewise.
* testsuite/28_regex/algorithms/regex_match/basic/string_01.cc:
Likewise.
* testsuite/28_regex/algorithms/regex_match/basic/
string_range_00_03.cc: Likewise.
* testsuite/28_regex/algorithms/regex_match/basic/
string_range_01_03.cc: Likewise.
* testsuite/28_regex/algorithms/regex_match/basic/
string_range_02_03.cc: Likewise.
* testsuite/28_regex/algorithms/regex_match/cstring_bracket_01.cc:
Likewise.
* testsuite/28_regex/algorithms/regex_match/ecma/char/53622.cc:
Likewise.
* testsuite/28_regex/algorithms/regex_match/ecma/char/57173.cc:
Likewise.
* testsuite/28_regex/algorithms/regex_match/ecma/char/58576.cc:
Likewise.
* testsuite/28_regex/algorithms/regex_match/ecma/char/68863.cc:
Likewise.
* testsuite/28_regex/algorithms/regex_match/ecma/char/anymatcher.cc:
Likewise.
* testsuite/28_regex/algorithms/regex_match/ecma/char/backref.cc:
Likewise.
* testsuite/28_regex/algorithms/regex_match/ecma/char/empty_range.cc:
Likewise.
* testsuite/28_regex/algorithms/regex_match/ecma/char/emptygroup.cc:
Likewise.
* testsuite/28_regex/algorithms/regex_match/ecma/char/hex.cc: Likewise.
* testsuite/28_regex/algorithms/regex_match/ecma/char/quoted_char.cc:
Likewise.
* testsuite/28_regex/algorithms/regex_match/ecma/char/ungreedy.cc:
Likewise.
* testsuite/28_regex/algorithms/regex_match/ecma/wchar_t/63199.cc:
Likewise.
* testsuite/28_regex/algorithms/regex_match/ecma/wchar_t/
anymatcher.cc: Likewise.
* testsuite/28_regex/algorithms/regex_match/ecma/wchar_t/cjk_match.cc:
Likewise.
* testsuite/28_regex/algorithms/regex_match/ecma/wchar_t/hex.cc:
Likewise.
* testsuite/28_regex/algorithms/regex_match/extended/cstring_plus.cc:
Likewise.
* testsuite/28_regex/algorithms/regex_match/extended/
cstring_questionmark.cc: Likewise.
* testsuite/28_regex/algorithms/regex_match/extended/
cstring_range.cc: Likewise.
* testsuite/28_regex/algorithms/regex_match/extended/string_any.cc:
Likewise.
* testsuite/28_regex/algorithms/regex_match/extended/
string_range_00_03.cc: Likewise.
* testsuite/28_regex/algorithms/regex_match/extended/
string_range_01_03.cc: Likewise.
* testsuite/28_regex/algorithms/regex_match/extended/
string_range_02_03.cc: Likewise.
* testsuite/28_regex/algorithms/regex_match/extended/
wstring_locale.cc: Likewise.
* testsuite/28_regex/algorithms/regex_replace/char/basic_replace.cc:
Likewise.
* testsuite/28_regex/algorithms/regex_replace/char/dr2213.cc: Likewise.
* testsuite/28_regex/algorithms/regex_search/61720.cc: Likewise.
* testsuite/28_regex/algorithms/regex_search/basic/string_01.cc:
Likewise.
* testsuite/28_regex/algorithms/regex_search/ecma/assertion.cc:
Likewise.
* testsuite/28_regex/algorithms/regex_search/ecma/flags.cc: Likewise.
* testsuite/28_regex/algorithms/regex_search/ecma/greedy.cc: Likewise.
* testsuite/28_regex/algorithms/regex_search/ecma/string_01.cc:
Likewise.
* testsuite/28_regex/basic_regex/assign/char/cstring.cc: Likewise.
* testsuite/28_regex/basic_regex/assign/char/cstring_op.cc: Likewise.
* testsuite/28_regex/basic_regex/assign/char/moveable.cc: Likewise.
* testsuite/28_regex/basic_regex/assign/char/pstring.cc: Likewise.
* testsuite/28_regex/basic_regex/assign/char/range.cc: Likewise.
* testsuite/28_regex/basic_regex/assign/char/string.cc: Likewise.
* testsuite/28_regex/basic_regex/assign/char/string_op.cc: Likewise.
* testsuite/28_regex/basic_regex/assign/wchar_t/cstring.cc: Likewise.
* testsuite/28_regex/basic_regex/assign/wchar_t/cstring_op.cc: Likewise.
* testsuite/28_regex/basic_regex/assign/wchar_t/pstring.cc: Likewise.
* testsuite/28_regex/basic_regex/assign/wchar_t/range.cc: Likewise.
* testsuite/28_regex/basic_regex/assign/wchar_t/string.cc: Likewise.
* testsuite/28_regex/basic_regex/assign/wchar_t/string_op.cc: Likewise.
* testsuite/28_regex/basic_regex/ctors/basic/pstring_wchar_t.cc:
Likewise.
* testsuite/28_regex/basic_regex/ctors/basic/string_range_01_02_03.cc:
Likewise.
* testsuite/28_regex/basic_regex/ctors/extended/cstring.cc: Likewise.
* testsuite/28_regex/basic_regex/ctors/extended/
string_range_01_02_03.cc: Likewise.
* testsuite/28_regex/basic_regex/ctors/move_char.cc: Likewise.
* testsuite/28_regex/basic_regex/ctors/string_wchar_t.cc: Likewise.
* testsuite/28_regex/basic_regex/ctors/wchar_t/cstring.cc: Likewise.
* testsuite/28_regex/basic_regex/ctors/wchar_t/default.cc: Likewise.
* testsuite/28_regex/basic_regex/ctors/wchar_t/range.cc: Likewise.
* testsuite/28_regex/basic_regex/imbue/string.cc: Likewise.
* testsuite/28_regex/constants/error_type.cc: Likewise.
* testsuite/28_regex/constants/match_flag_type.cc: Likewise.
* testsuite/28_regex/init-list.cc: Likewise.
* testsuite/28_regex/iterators/regex_iterator/char/64140.cc: Likewise.
* testsuite/28_regex/iterators/regex_iterator/char/string_01.cc:
Likewise.
* testsuite/28_regex/iterators/regex_iterator/char/
string_position_01.cc
* testsuite/28_regex/iterators/regex_iterator/ctors/char/default.cc:
Likewise.
* testsuite/28_regex/iterators/regex_iterator/ctors/wchar_t/
default.cc: Likewise.
* testsuite/28_regex/iterators/regex_iterator/typedefs.cc: Likewise.
* testsuite/28_regex/iterators/regex_iterator/wchar_t/string_01.cc:
Likewise.
* testsuite/28_regex/iterators/regex_iterator/wchar_t/string_02.cc:
Likewise.
* testsuite/28_regex/iterators/regex_token_iterator/64303.cc: Likewise.
* testsuite/28_regex/iterators/regex_token_iterator/char/string_01.cc:
Likewise.
* testsuite/28_regex/iterators/regex_token_iterator/ctors/char/
default.cc: Likewise.
* testsuite/28_regex/iterators/regex_token_iterator/ctors/wchar_t/
default.cc: Likewise.
* testsuite/28_regex/iterators/regex_token_iterator/typedefs.cc:
Likewise.
* testsuite/28_regex/iterators/regex_token_iterator/wchar_t/
string_01.cc: Likewise.
* testsuite/28_regex/iterators/regex_token_iterator/wchar_t/
wstring_02.cc: Likewise.
* testsuite/28_regex/match_results/ctors/char/default.cc: Likewise.
* testsuite/28_regex/match_results/ctors/wchar_t/default.cc: Likewise.
* testsuite/28_regex/match_results/format.cc: Likewise.
* testsuite/28_regex/match_results/out_of_range_submatches.cc: Likewise.
* testsuite/28_regex/match_results/swap.cc: Likewise.
* testsuite/28_regex/match_results/typedefs.cc: Likewise.
* testsuite/28_regex/regex_error/regex_error.cc: Likewise.
* testsuite/28_regex/regression.cc: Likewise.
* testsuite/28_regex/sub_match/cast_char.cc: Likewise.
* testsuite/28_regex/sub_match/cast_wchar_t.cc: Likewise.
* testsuite/28_regex/sub_match/embedded_zeros_cmp.cc: Likewise.
* testsuite/28_regex/sub_match/length.cc: Likewise.
* testsuite/28_regex/traits/char/ctor.cc: Likewise.
* testsuite/28_regex/traits/char/isctype.cc: Likewise.
* testsuite/28_regex/traits/char/length.cc: Likewise.
* testsuite/28_regex/traits/char/lookup_classname.cc: Likewise.
* testsuite/28_regex/traits/char/lookup_collatename.cc: Likewise.
* testsuite/28_regex/traits/char/transform.cc: Likewise.
* testsuite/28_regex/traits/char/transform_primary.cc: Likewise.
* testsuite/28_regex/traits/char/translate.cc: Likewise.
* testsuite/28_regex/traits/char/translate_nocase.cc: Likewise.
* testsuite/28_regex/traits/char/user_defined.cc: Likewise.
* testsuite/28_regex/traits/char/value.cc: Likewise.
* testsuite/28_regex/traits/wchar_t/ctor.cc: Likewise.
* testsuite/28_regex/traits/wchar_t/isctype.cc: Likewise.
* testsuite/28_regex/traits/wchar_t/length.cc: Likewise.
* testsuite/28_regex/traits/wchar_t/lookup_classname.cc: Likewise.
* testsuite/28_regex/traits/wchar_t/lookup_collatename.cc: Likewise.
* testsuite/28_regex/traits/wchar_t/transform.cc: Likewise.
* testsuite/28_regex/traits/wchar_t/transform_primary.cc: Likewise.
* testsuite/28_regex/traits/wchar_t/translate.cc: Likewise.
* testsuite/28_regex/traits/wchar_t/translate_nocase.cc: Likewise.
* testsuite/28_regex/traits/wchar_t/user_defined.cc: Likewise.
* testsuite/28_regex/traits/wchar_t/value.cc: Likewise.
* testsuite/29_atomics/atomic/60658.cc: Likewise.
* testsuite/29_atomics/atomic/operators/51811.cc: Likewise.
* testsuite/29_atomics/atomic_flag/clear/1.cc: Likewise.
* testsuite/backward/11460.cc: Likewise.
* testsuite/backward/hash_map/1.cc: Likewise.
* testsuite/backward/hash_map/25896.cc: Likewise.
* testsuite/backward/hash_set/1.cc: Likewise.
* testsuite/backward/hash_set/25896.cc: Likewise.
* testsuite/decimal/binary-arith.cc: Likewise.
* testsuite/decimal/comparison.cc: Likewise.
* testsuite/decimal/compound-assignment-memfunc.cc: Likewise.
* testsuite/decimal/compound-assignment.cc: Likewise.
* testsuite/decimal/conversion-from-float.cc: Likewise.
* testsuite/decimal/conversion-from-integral.cc: Likewise.
* testsuite/decimal/conversion-to-generic-float.cc: Likewise.
* testsuite/decimal/conversion-to-integral.cc: Likewise.
* testsuite/decimal/ctor.cc: Likewise.
* testsuite/decimal/incdec-memfunc.cc: Likewise.
* testsuite/decimal/incdec.cc: Likewise.
* testsuite/decimal/make-decimal.cc: Likewise.
* testsuite/decimal/pr54036-1.cc: Likewise.
* testsuite/decimal/pr54036-2.cc: Likewise.
* testsuite/decimal/pr54036-3.cc: Likewise.
* testsuite/decimal/unary-arith.cc: Likewise.
* testsuite/special_functions/01_assoc_laguerre/check_nan.cc: Likewise.
* testsuite/special_functions/01_assoc_laguerre/check_value.cc:
Likewise.
* testsuite/special_functions/02_assoc_legendre/check_nan.cc: Likewise.
* testsuite/special_functions/02_assoc_legendre/check_value.cc:
Likewise.
* testsuite/special_functions/03_beta/check_nan.cc: Likewise.
* testsuite/special_functions/03_beta/check_value.cc: Likewise.
* testsuite/special_functions/04_comp_ellint_1/check_nan.cc: Likewise.
* testsuite/special_functions/04_comp_ellint_1/check_value.cc: Likewise.
* testsuite/special_functions/05_comp_ellint_2/check_nan.cc: Likewise.
* testsuite/special_functions/05_comp_ellint_2/check_value.cc: Likewise.
* testsuite/special_functions/06_comp_ellint_3/check_nan.cc: Likewise.
* testsuite/special_functions/06_comp_ellint_3/check_value.cc: Likewise.
* testsuite/special_functions/07_cyl_bessel_i/check_nan.cc: Likewise.
* testsuite/special_functions/07_cyl_bessel_i/check_value.cc: Likewise.
* testsuite/special_functions/07_cyl_bessel_i/pr56216.cc: Likewise.
* testsuite/special_functions/08_cyl_bessel_j/check_nan.cc: Likewise.
* testsuite/special_functions/08_cyl_bessel_j/check_value.cc: Likewise.
* testsuite/special_functions/09_cyl_bessel_k/check_nan.cc: Likewise.
* testsuite/special_functions/09_cyl_bessel_k/check_value.cc: Likewise.
* testsuite/special_functions/10_cyl_neumann/check_nan.cc: Likewise.
* testsuite/special_functions/10_cyl_neumann/check_value.cc: Likewise.
* testsuite/special_functions/11_ellint_1/check_nan.cc: Likewise.
* testsuite/special_functions/11_ellint_1/check_value.cc: Likewise.
* testsuite/special_functions/12_ellint_2/check_nan.cc: Likewise.
* testsuite/special_functions/12_ellint_2/check_value.cc: Likewise.
* testsuite/special_functions/13_ellint_3/check_nan.cc: Likewise.
* testsuite/special_functions/13_ellint_3/check_value.cc: Likewise.
* testsuite/special_functions/14_expint/check_nan.cc: Likewise.
* testsuite/special_functions/14_expint/check_value.cc: Likewise.
* testsuite/special_functions/15_hermite/check_nan.cc: Likewise.
* testsuite/special_functions/15_hermite/check_value.cc: Likewise.
* testsuite/special_functions/16_laguerre/check_nan.cc: Likewise.
* testsuite/special_functions/16_laguerre/check_value.cc: Likewise.
* testsuite/special_functions/17_legendre/check_nan.cc: Likewise.
* testsuite/special_functions/17_legendre/check_value.cc: Likewise.
* testsuite/special_functions/18_riemann_zeta/check_nan.cc: Likewise.
* testsuite/special_functions/18_riemann_zeta/check_value.cc: Likewise.
* testsuite/special_functions/19_sph_bessel/check_nan.cc: Likewise.
* testsuite/special_functions/19_sph_bessel/check_value.cc: Likewise.
* testsuite/special_functions/20_sph_legendre/check_nan.cc: Likewise.
* testsuite/special_functions/20_sph_legendre/check_value.cc: Likewise.
* testsuite/special_functions/21_sph_neumann/check_nan.cc: Likewise.
* testsuite/special_functions/21_sph_neumann/check_value.cc: Likewise.
* testsuite/tr2/bases/value.cc: Likewise.
* testsuite/tr2/direct_bases/value.cc: Likewise.
* testsuite/util/debug/checks.h: Likewise.
* testsuite/util/debug/unordered_checks.h: Likewise.
* testsuite/util/testsuite_allocator.h: Likewise.
* testsuite/util/testsuite_api.h: Likewise.
* testsuite/util/testsuite_common_types.h: Likewise.
* testsuite/util/testsuite_random.h: Likewise.
* testsuite/util/testsuite_rvalref.h: Likewise.
From-SVN: r241138
2016-10-13 19:37:45 +00:00
Jason Merrill
14a2c9aac0
Implement P0386R2 - C++17 inline variables
...
2016-10-11 Jakub Jelinek <jakub@redhat.com>
* dwarf2out.c (gen_member_die): Handle inline static data member
definitions.
c-family/
* c-cppbuiltin.c (c_cpp_builtins): Add __cpp_inline_variables.
cp/
* cp-tree.h (struct lang_type): Shrink language field to 1 bit
from 4. Add var_declared_inline_p field. Mention 2 spare bits.
(DECL_VAR_DECLARED_INLINE_P): Define.
(SET_DECL_VAR_DECLARED_INLINE_P): Define.
(DECL_INLINE_VAR_P): Define.
(diagnose_inline_vars_for_namespace): Declare.
* decl.c (diagnose_inline_vars_for_namespace): New function.
(duplicate_decls): For static data members copy
DECL_DECLARED_CONSTEXPR_P.
(redeclaration_error_message): Handle C++17 redundant redeclaration
of constexpr static data member outside of class.
(maybe_commonize_var): Handle inline variables.
(check_initializer): Ignore inline variables for diagnostics.
Adjust diagnostic wording for C++17.
(make_rtl_for_nonlocal_decl): Allow in-class definition of
inline static data members.
(bad_specifiers): Don't diagnose inline on variables here.
(grokvardecl): Add inlinep argument, non-static const inline variables
are TREE_PUBLIC.
(check_static_variable_definition): Return early also for inline
variables.
(grokdeclarator): Handle inline variables and inline static data
members.
* typeck2.c (store_init_value): Don't diagnose non-constant
initializers for non-constexpr inline static data members.
* decl2.c (vague_linkage_p): Return true for inline variables.
(c_parse_final_cleanups): In-class declaration of inline static
data members is a definition. Call diagnose_inline_vars_for_namespace
through walk_namespaces.
* pt.c (instantiate_decl): Set pattern_defined for in-class definitions
of inline static data members.
From-SVN: r241137
2016-10-13 15:26:54 -04:00
Nathan Sidwell
fc0911e0b8
gcov-io.c (gcov_open): Fix documentation.
...
* gcov-io.c (gcov_open): Fix documentation. Simplify setting
gcov_var.mode. Remove unnecessary fstat.
From-SVN: r241136
2016-10-13 18:36:31 +00:00
Segher Boessenkool
7dca85bf15
Create the *logue in the same order as before (PR77962)
...
PR77962 shows Go failing on 32-bit x86. This happens because the i386
port requires the split stack prologue to be created before the normal
prologue, and my previous patch changed it to be the other way around.
This patch changes it back. Things will be exactly as before for targets
that do not do shrink-wrapping for separate components. For targets
that *do* support it, all three prologue/epilogue creation functions
will now be called twice for functions that have anything wrapped
separately (instead of just the prologue created twice).
PR bootstrap/77962
* function.c (thread_prologue_and_epilogue_insns): Call all
make_*logue_seq in the same order as traditional. Call them
all a second time if shrink_wrapped-separate.
From-SVN: r241135
2016-10-13 20:25:15 +02:00