Commit Graph

166410 Commits

Author SHA1 Message Date
Jerry DeLisle
9c5f89006f re PR libfortran/88776 (Namelist read from stdin: loss of data)
2019-01-13  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

	PR libfortran/88776
	* io/open.c (newunit): Free format buffer if the unit specified is for
	stdin, stdout, or stderr.

	* gfortran.dg/namelist_96.f90: New test.

From-SVN: r267910
2019-01-14 00:22:00 +00:00
GCC Administrator
bff1a7315d Daily bump.
From-SVN: r267909
2019-01-14 00:16:12 +00:00
Dominique d'Humieres
2054522fc8 re PR fortran/88803 (gfortran documentation warning: '.' or ',' must follow @xref)
2019-01-13  Dominique d'Humieres  <dominiq@gcc.gnu.org>

	PR fortran/88803
	* gfortran.texi: Replace @xref with @ref and adjust the sentence.

From-SVN: r267906
2019-01-13 20:18:46 +01:00
Thomas Koenig
8ef8fa9a4d re PR fortran/57992 (Pointless packing of contiguous arrays for simply contiguous functions results as actual arguments)
2019-01-13  Thomas Koenig  <tkoenig@gcc.gnu.org>

	PR fortran/57992
	* trans-array.c (gfc_conv_array_parameter):  Do not pack/unpack
	functions with contiguous results.

2019-01-13  Thomas Koenig  <tkoenig@gcc.gnu.org>

	PR fortran/59345
	* gfortran.dg/internal_pack_18.f90: New test.

From-SVN: r267905
2019-01-13 14:57:39 +00:00
H.J. Lu
234c38181a C-family: Replace "may may" with "may" in warning message
gcc/c-family/

	* c-warn.c (warn_for_address_or_pointer_of_packed_member):
	Replace "may may" with "may" in warning message.

gcc/testsuite/

	* gcc.dg/pr51628-20.c: Updated.
	* gcc.dg/pr51628-21.c: Likewise.
	* gcc.dg/pr51628-25.c: Likewise.

From-SVN: r267904
2019-01-13 04:53:47 -08:00
Thomas Koenig
5f8865c358 re PR fortran/59345 (_gfortran_internal_pack on compiler generated temps)
2019-01-13  Thomas Koenig  <tkoenig@gcc.gnu.org>

	PR fortran/59345
	* trans-array.c (gfc_conv_array_parameter): Remove TODO.  Do not
	pack/unpack results of functions which return an explicit-shaped
	or allocatable array.

2019-01-13  Thomas Koenig  <tkoenig@gcc.gnu.org>

	PR fortran/59345
	* gfortran.dg/internal_pack_17.f90: New test.
	* gfortran.dg/alloc_comp_auto_array_3.f90: Adjust number of calls
	to builtin_free.

From-SVN: r267903
2019-01-13 11:06:03 +00:00
Steven G. Kargl
2642012168 re PR fortran/61765 ([F03] Rejects valid BIND(C) ENTRY)
2019-01-12  Steven G. Kargl  <kargl@gcc.gnu.org>

	PR fortran/61765
	* resolve.c (gfc_verify_binding_labels): Break if-elseif-elseif
	structure into independent if's with a return to simplify logic.
	Avoid a check for ENTRY name with bind(c).

2019-01-12  Steven G. Kargl  <kargl@gcc.gnu.org>

	PR fortran/61765
	* gfortran.dg/pr61765.f90: New test.

From-SVN: r267902
2019-01-13 04:02:46 +00:00
GCC Administrator
d6072c195d Daily bump.
From-SVN: r267901
2019-01-13 00:16:28 +00:00
Jerry DeLisle
9443a1859f re PR libfortran/88776 (Namelist read from stdin: loss of data)
2019-01-12  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

	PR libfortran/88776
	* io/list_read.c (namelist_read): Use nml_err_ret path on read error
	not based on stdin_unit.

From-SVN: r267898
2019-01-12 23:06:47 +00:00
Tom de Vries
efb56ae82b [nvptx] Enable setting vector length using -fopenacc-dim -- testcases
Add some test-cases that set vector length using -fopenacc-dim.

2019-01-12  Tom de Vries  <tdevries@suse.de>

	* testsuite/libgomp.oacc-c-c++-common/pr85486-2.c: New test.
	* testsuite/libgomp.oacc-c-c++-common/vector-length-128-2.c: New test.
	* testsuite/libgomp.oacc-c-c++-common/vector-length-128-5.c: New test.
	* testsuite/libgomp.oacc-fortran/gemm-2.f90: New test.

From-SVN: r267897
2019-01-12 22:19:31 +00:00
Tom de Vries
2c2ff1684d [nvptx] Enable setting vector length using -fopenacc-dim
Enable setting vector length using -fopenacc-dim, f.i. -fopenacc-dim=::128.

2019-01-12  Tom de Vries  <tdevries@suse.de>

	* config/nvptx/nvptx.c (nvptx_goacc_validate_dims_1): Alow setting
	vector length using -fopenacc-dim.

	* plugin/plugin-nvptx.c (nvptx_exec): Update error message.

From-SVN: r267896
2019-01-12 22:19:15 +00:00
Tom de Vries
a105775825 [nvptx] Add vector_length 64 test-cases
Add some test-cases using vector_length 64.

2019-01-12  Tom de Vries  <tdevries@suse.de>

	* testsuite/libgomp.oacc-c-c++-common/vector-length-64-1.c: New test.
	* testsuite/libgomp.oacc-c-c++-common/vector-length-64-2.c: New test.
	* testsuite/libgomp.oacc-c-c++-common/vector-length-64-3.c: New test.

From-SVN: r267895
2019-01-12 22:19:02 +00:00
Tom de Vries
56314b772f [nvptx] Force vl32 if calling vector-partitionable routines -- test-cases
Add test-cases for "[nvptx] Force vl32 if calling vector-partitionable
routines".

2019-01-12  Tom de Vries  <tdevries@suse.de>

	PR target/85486
	* testsuite/libgomp.oacc-c-c++-common/pr85486-3.c: New test.
	* testsuite/libgomp.oacc-c-c++-common/pr85486.c: New test.

From-SVN: r267894
2019-01-12 22:18:50 +00:00
Tom de Vries
b39e4366a2 [nvptx] Don't emit barriers for empty loops -- test-cases
Add test-cases for PR85381.

2019-01-12  Tom de Vries  <tdevries@suse.de>

	PR target/85381
	* testsuite/libgomp.oacc-c-c++-common/pr85381-5.c: New test.
	* testsuite/libgomp.oacc-c-c++-common/pr85381.c: New test.

From-SVN: r267893
2019-01-12 22:18:39 +00:00
Tom de Vries
2cb7a501ab [nvptx] Enable large vectors -- reduction testcases
Add various reduction test-cases with vector length 128.

2019-01-12  Tom de Vries  <tdevries@suse.de>

	* testsuite/libgomp.oacc-c-c++-common/vred2d-128.c: New test.
	* testsuite/libgomp.oacc-fortran/gemm.f90: New test.
	* testsuite/libgomp.oacc-c-c++-common/vector-length-128-10.c: New test.

From-SVN: r267892
2019-01-12 22:18:27 +00:00
Tom de Vries
8e77f71eda [nvptx] Enable large vectors -- test-cases
Add various test-cases with vector length 128.

2019-01-12  Tom de Vries  <tdevries@suse.de>

	* testsuite/libgomp.oacc-c-c++-common/vector-length-128-7.c: New test.
	* testsuite/libgomp.oacc-c-c++-common/vector-length-128-4.c: New test.
	* testsuite/libgomp.oacc-c-c++-common/vector-length-128-6.c: New test.

From-SVN: r267891
2019-01-12 22:18:11 +00:00
Tom de Vries
52d22ece49 [nvptx] Update insufficient launch message for variable vector_length
Update message in nvptx libgomp plugin about insufficient resources to launch
kernel, to accommodate for the fact the vector_length can now be variable.

2019-01-12  Tom de Vries  <tdevries@suse.de>

	* plugin/plugin-nvptx.c (nvptx_exec): Update insufficient hardware
	resources diagnostic.

From-SVN: r267890
2019-01-12 22:18:00 +00:00
Tom de Vries
2b9d9e3937 [nvptx] Enable large vectors
Allow vector_length clauses to accept values larger than warp size.  Note that
this does not enable setting vector_length to values larger than warp size using
-fopenacc-dim.

2019-01-12  Tom de Vries  <tdevries@suse.de>

	* config/nvptx/nvptx.c (nvptx_goacc_validate_dims): Take larger vector
	lengths into account.

	* testsuite/libgomp.oacc-c-c++-common/vector-length-128-1.c: Expect
	vector length to be 128.
	* testsuite/libgomp.oacc-c-c++-common/parallel-dims.c: Expect vector
	length 2097152 to be reduced to 1024 instead of 32.

From-SVN: r267889
2019-01-12 22:17:42 +00:00
Paolo Carlini
6f7814d08f decl.c (cp_finish_decl): Improve error location.
/cp
2019-01-12  Paolo Carlini  <paolo.carlini@oracle.com>

	* decl.c (cp_finish_decl): Improve error location.
	* decl2.c (grokfield): Likewise, improve two locations.

/testsuite
2019-01-12  Paolo Carlini  <paolo.carlini@oracle.com>

	* g++.dg/cpp0x/pr62101.C: Test locations too.
	* g++.dg/inherit/pure1.C: Likewise.

From-SVN: r267888
2019-01-12 21:59:50 +00:00
Paolo Carlini
062ab4596d decl.c (cp_finish_decl): Improve error location.
/cp
2019-01-12  Paolo Carlini  <paolo.carlini@oracle.com>

	* decl.c (cp_finish_decl): Improve error location.
	* decl2.c (grokfield): Likewise, improve two locations.

/testsuite
2019-01-12  Paolo Carlini  <paolo.carlini@oracle.com>

	* g++.dg/cpp0x/pr62101.C: Test locations too.
	* g++.dg/inherit/pure1.C: Likewise.

From-SVN: r267887
2019-01-12 21:59:03 +00:00
Svante Signell
8d5d3edddf gnu.h (TARGET_THREAD_SSP_OFFSET): Define.
* config/i386/gnu.h (TARGET_THREAD_SSP_OFFSET): Define.
	(TARGET_CAN_SPLIT_STACK): Define.
	(TARGET_THREAD_SPLIT_STACK_OFFSET): Define.

From-SVN: r267886
2019-01-12 21:17:56 +00:00
Iain Buclaw
865f11b619 Document merge process for dmd, druntime and phobos.
gcc/d/ChangeLog:

	* README.gcc: New file.

libphobos/ChangeLog:

	* README.gcc: New file.

From-SVN: r267885
2019-01-12 19:50:41 +00:00
Paul Thomas
fd253dbf3e ISO_Fortran_binding_2.f90: Remove because of reports of ICEs.
2019-01-12  Paul Thomas  <pault@gcc.gnu.org>

	* gfortran.dg/ISO_Fortran_binding_2.f90 : Remove because of
	reports of ICEs.
	* gfortran.dg/ISO_Fortran_binding_2.c : Ditto.

From-SVN: r267884
2019-01-12 18:34:30 +00:00
Jan Hubicka
43d168a46e * params.def (inline-unit-growth): Set to 40.
From-SVN: r267883
2019-01-12 18:18:23 +00:00
Jakub Jelinek
5f07d78a13 tree-ssa-loop-ivopts.c (find_inv_vars): Fix a comment typo.
* tree-ssa-loop-ivopts.c (find_inv_vars): Fix a comment typo.

	* c-typeck.c (convert_for_assignment): Fix a comment typo.

From-SVN: r267882
2019-01-12 17:55:45 +01:00
Paul Thomas
bbf18dc5d2 gfortran.texi: Add description in sections on TS 29113 and further interoperability with C.
2019-01-12  Paul Thomas  <pault@gcc.gnu.org>

	* gfortran.texi : Add description in sections on TS 29113 and
	further interoperability with C.
	* trans-array.c (gfc_conv_descriptor_attribute): New function.
	(gfc_get_dataptr_offset): Remove static function attribute.
	* trans-array.h : Add prototypes for above functions.
	* trans-decl.c : Add declarations for the library functions
	cfi_desc_to_gfc_desc and gfc_desc_to_cfi_desc.
	* trans-expr.c (gfc_conv_gfc_desc_to_cfi_desc): New function.
	(gfc_conv_procedure_call): Call it for scalar and array actual
	arguments, when the formal arguments are bind_c with assumed
	shape or assumed rank.
	* trans.h : External declarations for gfor_fndecl_cfi_to_gfc
	and gfor_fndecl_gfc_to_cfi.

2019-01-12  Paul Thomas  <pault@gcc.gnu.org>

	* gfortran.dg/ISO_Fortran_binding_1.f90 : New test.
	* gfortran.dg/ISO_Fortran_binding_1.c : Auxilliary file for test.
	* gfortran.dg/ISO_Fortran_binding_2.f90 : New test.
	* gfortran.dg/ISO_Fortran_binding_2.c : Auxilliary file for test.
	* gfortran.dg/bind_c_array_params_2.f90 : Change search string
	for dump tree scan.

2019-01-12  Paul Thomas  <pault@gcc.gnu.org>

	* ISO_Fortran_binding.h : New file.
	* Makefile.am : Include ISO_Fortran_binding.c in the list of
	files to compile.
	* Makefile.in : Regenerated.
	* gfortran.map : Add _gfortran_cfi_desc_to_gfc_desc,
	_gfortran_gfc_desc_to_cfi_desc and the CFI API functions.
	* runtime/ISO_Fortran_binding.c : New file containing the new
	functions added to the map.

From-SVN: r267881
2019-01-12 15:25:52 +00:00
Tom de Vries
af79605ec2 [nvptx] Apply vector-partitionable routines workaround to default vl
Make "[nvptx] Force vl32 if calling vector-partitionable routines" work as well
if vector length is set by modifying PTX_DEFAULT_VECTOR_LENGTH.

2019-01-12  Tom de Vries  <tdevries@suse.de>

	* config/nvptx/nvptx.c (nvptx_goacc_validate_dims_1): In offloading
	region calling vector-partitionable routine, set default_vector_length
	to WARP_SIZE.

From-SVN: r267879
2019-01-12 10:27:34 +00:00
Tom de Vries
d6f528e70a [nvptx] Allow default vl to be overridden in nvptx_goacc_validate_dims_1
In nvptx_goacc_validate_dims_1, allow oacc_default_dims[DIM_VECTOR] to be
overridden, by assigning it to a new variable default_vector_length at the
start, and using it at the end.

2019-01-12  Tom de Vries  <tdevries@suse.de>

	* config/nvptx/nvptx.c (nvptx_goacc_validate_dims_1): Add an use new
	variable default_vector_length.

From-SVN: r267878
2019-01-12 10:27:23 +00:00
Tom de Vries
980af7cd8f [nvptx] Verify dimension limits after applying defaults
There's a problem in oacc_validate_dims that when f.i. the worker dimension
is set using -fopenacc-dim=:32, and the vector_length is set using a
"vector_length (128)" clause, the compiler combines, accepts and emits the
values, while the combination of the two is invalid.

The reason for this is that while oacc_validate_dims validates the dimensions
using targetm.goacc.validate_dims before applying default or minimum values,
it does not do so afterwards.

Work around this in the nvptx port by applying the defaults from
oacc_default_dims at the end of nvptx_goacc_validate_dims_1, as
oacc_validate_dims would do it, and then apply the dimensions limits.

2019-01-12  Tom de Vries  <tdevries@suse.de>

	PR middle-end/88703
	* config/nvptx/nvptx.c (nvptx_goacc_validate_dims_1): Apply defaults
	from oacc_default_dims, as oacc_validate_dims would do it, and apply
	dimensions limits.

From-SVN: r267877
2019-01-12 10:27:12 +00:00
Tom de Vries
46dedae6a8 [openacc] Add used parameter to TARGET_GOACC_VALIDATE_DIMS
Add a used parameter to TARGET_GOACC_VALIDATE_DIMS, allowing a target to make
decisions in the hook implementation based on whether a dimension is used or
not.

2019-01-12  Tom de Vries  <tdevries@suse.de>

	* config/nvptx/nvptx.c (nvptx_goacc_validate_dims_1)
	(nvptx_goacc_validate_dims): Add used parameter.
	* doc/tm.texi: Regenerate.
	* omp-offload.c (oacc_parse_default_dims, oacc_validate_dims): Add
	argument to call to targetm.goacc.validate_dims.
	(default_goacc_validate_dims): Add used
	parameter.
	* target.def (validate_dims): Add used parameter in DEFHOOK.
	* targhooks.h (default_goacc_validate_dims): Add used parameter.

From-SVN: r267876
2019-01-12 10:27:00 +00:00
Jakub Jelinek
fc560ecd49 re PR libfortran/88807 (misleading indentation warnings building libgfortran)
PR libfortran/88807
	* m4/minloc0.m4: Reindent to avoid -Wmisleading-indentation warnings.
	* generated/minloc0_4_i1.c: Regenerated.
	* generated/minloc0_4_i2.c: Regenerated.
	* generated/minloc0_4_i4.c: Regenerated.
	* generated/minloc0_4_i8.c: Regenerated.
	* generated/minloc0_4_i16.c: Regenerated.
	* generated/minloc0_4_r4.c: Regenerated.
	* generated/minloc0_4_r8.c: Regenerated.
	* generated/minloc0_4_r10.c: Regenerated.
	* generated/minloc0_4_r16.c: Regenerated.
	* generated/minloc0_8_i1.c: Regenerated.
	* generated/minloc0_8_i2.c: Regenerated.
	* generated/minloc0_8_i4.c: Regenerated.
	* generated/minloc0_8_i8.c: Regenerated.
	* generated/minloc0_8_i16.c: Regenerated.
	* generated/minloc0_8_r4.c: Regenerated.
	* generated/minloc0_8_r8.c: Regenerated.
	* generated/minloc0_8_r10.c: Regenerated.
	* generated/minloc0_8_r16.c: Regenerated.
	* generated/minloc0_16_i1.c: Regenerated.
	* generated/minloc0_16_i2.c: Regenerated.
	* generated/minloc0_16_i4.c: Regenerated.
	* generated/minloc0_16_i8.c: Regenerated.
	* generated/minloc0_16_i16.c: Regenerated.
	* generated/minloc0_16_r4.c: Regenerated.
	* generated/minloc0_16_r8.c: Regenerated.
	* generated/minloc0_16_r10.c: Regenerated.
	* generated/minloc0_16_r16.c: Regenerated.

From-SVN: r267875
2019-01-12 10:15:54 +01:00
Jakub Jelinek
831a2e2f86 Remove svn:executable property from a couple of text files
which shouldn't be executable.

From-SVN: r267873
2019-01-12 01:20:04 +01:00
GCC Administrator
939fd818f0 Daily bump.
From-SVN: r267872
2019-01-12 00:16:18 +00:00
Jonathan Wakely
7f00fdb285 PR libstdc++/88811 fix typo introduced in r266569
PR libstdc++/88811
	PR libstdc++/83306
	* src/filesystem/path.cc: Fix typo. If first path is empty, show []
	before second path.
	* testsuite/experimental/filesystem/filesystem_error/cons.cc: New
	test.

From-SVN: r267868
2019-01-12 00:12:20 +00:00
Jonathan Wakely
66dc59e24f Document C++20 library status
* doc/xml/manual/intro.xml: Include new section.
	* doc/xml/manual/status_cxx2017.xml: Document more
	implementation-defined properties of the library.
	* doc/xml/manual/status_cxx2020.xml: Document C++2a status.
	* doc/html/*: Regenerate.

From-SVN: r267867
2019-01-11 23:41:15 +00:00
Jonathan Wakely
aaeac1568d P0357R3 reference_wrapper for incomplete types
This patch implements the C++2a proposal to allow incomplete types in
std::reference_wrapper, which was previously undefined.

The change cannot be implemented for earlier standards, because prior to
C++2a std::reference_wrapper has a weak result type, so must inspect the
template argument to see if it defines a nested result_type member. That
is deprecated (but still required) in C++17, and removed from C++2a.

The removal of the base class from reference_wrapper is a potential ABI
change, as it could alter the layout of a type which derives from
reference_wrapper<T> and from an empty type with _Weak_result_type<T> as
a base class.  Previously the repeated _Weak_result_type<T> base class
would have prevented the empty base-class optimization, but if
reference_wrapper<T> no longer derives from it, the empty class could be
placed at the same address as the reference_wrapper<T> base.  In
practice, the only types which derive from _Weak_result_type or from
_Reference_wrapper_base_memfun or any of its base classes are non-empty
types defined in libstdc++: std::reference_wrapper, std::function, and
std::_Bind. As they are non-empty types, they are not eligible for EBO
anyway.

	* include/bits/refwrap.h [__cplusplus > 201703L]
	(_Refwrap_base_arg1, _Refwrap_base_arg2, _Reference_wrapper_base)
	(_Reference_wrapper_base_memfun): Do not define for C++2a.
	(reference_wrapper): Do not derive from _Reference_wrapper_base_memfun
	for C++2a.
	(reference_wrapper::operator()): Add static assertion.
	* testsuite/20_util/reference_wrapper/incomplete.cc: New test.

From-SVN: r267866
2019-01-11 23:41:11 +00:00
Jonathan Wakely
5e9aed14dc P0972R0 <chrono> zero(), min(), and max() should be noexcept
This paper has been included in the C++20 draft, but the changes to add
noexcept can be made unconditionally, to apply for C++11 too.

	* include/std/chrono (duration_values::zero(), duration_values::min())
	(duration_values::max()): Add noexcept.
	(duration::zero(), duration::min(), duration::max()): Likewise.
	(time_point::zero(), time_point::min(), time_point::max()): Likewise.
	* testsuite/20_util/duration/requirements/noexcept.cc: New test.
	* testsuite/20_util/time_point/requirements/noexcept.cc: New test.

From-SVN: r267865
2019-01-11 23:41:05 +00:00
Steven G. Kargl
89508a3fc6 re PR fortran/35031 (ELEMENTAL procedure with BIND(C))
2019-01-11  Steven G. Kargl  <kargl@gcc.gnu.org>

	PR fortran/35031
	* decl.c (gfc_match_entry): Check for F2018:C1546.  Fix nearby
	mis-indentation.
 
2019-01-11  Steven G. Kargl  <kargl@gcc.gnu.org>

	PR fortran/35031
	* gfortran.dg/pr35031.f90: new test.

From-SVN: r267864
2019-01-11 23:41:04 +00:00
Jonathan Wakely
e334d7a702 Fix location of __cpp_lib_erase_if macro
This macro should only be defined for C++2a, not C++17.

	* include/std/version (__cpp_lib_erase_if): Move to C++20 group.

From-SVN: r267863
2019-01-11 23:40:58 +00:00
Marek Polacek
1439f35553 PR c++/88692, c++/87882 - -Wredundant-move false positive with *this.
* typeck.c (maybe_warn_pessimizing_move): Return if ARG isn't
	ADDR_EXPR.

	* g++.dg/cpp0x/Wredundant-move5.C: New test.
	* g++.dg/cpp0x/Wredundant-move6.C: New test.

From-SVN: r267862
2019-01-11 23:21:40 +00:00
Ian Lance Taylor
378b9abe56 compiler: pad structs ending with zero-sized field
For a struct with zero-sized last field, the address of the
    field falls out of the object boundary, which confuses the
    garbage collector. Pad an extra byte in this case.
    
    Reviewed-on: https://go-review.googlesource.com/c/157557

From-SVN: r267861
2019-01-11 23:16:38 +00:00
Jason Merrill
3ddf08b3b8 PR c++/88312 - pack expansion of decltype.
The standard doesn't really talk about an expression depending on the number
of elements of a pack, but that's definitely an important form of template
argument dependence.

	* pt.c (instantiation_dependent_r): A template non-type parameter
	pack is instantiation-dependent.

From-SVN: r267860
2019-01-11 17:37:01 -05:00
Jason Merrill
f43e0585fa PR c++/88613 - ICE with use of const var in lambda.
The issue here was that we were cp_folding a location wrapper around a
lambda capture proxy before it had been mark_rvalue_used.  I considered
adding mark_rvalue_use calls to build_new_op_1, but it seems appropriate to
have them in cp_fold_maybe_rvalue when we know we're trying to produce an
rvalue.

The change to mark_use is for a related issue: when we change the operand of
the location wrapper from VAR_DECL to INTEGER_CST, we need the TREE_CODE of
the location wrapper to change as well, from VIEW_CONVERT_EXPR to
NON_LVALUE_EXPR.

	* expr.c (mark_use): Fix location wrapper handling.
	* cp-gimplify.c (cp_fold_maybe_rvalue): Call mark_rvalue_use.

From-SVN: r267859
2019-01-11 17:36:20 -05:00
Jakub Jelinek
da972c05f4 re PR middle-end/85956 (ICE in wide_int_to_tree_1, at tree.c:1549)
PR middle-end/85956
	PR lto/88733
	* tree-inline.h (struct copy_body_data): Add adjust_array_error_bounds
	field.
	* tree-inline.c (remap_type_1): Formatting fix.  If TYPE_MAX_VALUE of
	ARRAY_TYPE's TYPE_DOMAIN is newly error_mark_node, replace it with
	a dummy "omp dummy var" variable if id->adjust_array_error_bounds.
	* omp-low.c (new_omp_context): Set cb.adjust_array_error_bounds.
fortran/
	* trans-openmp.c: Include attribs.h.
	(gfc_walk_alloc_comps, gfc_omp_clause_linear_ctor): Handle
	VAR_DECL max bound with "omp dummy var" attribute like NULL or
	error_mark_node - recompute number of elts independently.
testsuite/
	* c-c++-common/gomp/pr85956.c: New test.
	* g++.dg/gomp/pr88733.C: New test.

From-SVN: r267858
2019-01-11 22:03:53 +01:00
Tobias Burnus
b13091dd9d PR C++/88114 Gen destructor of an abstract class
PR C++/8811
        * decl2.c (maybe_emit_vtables): If needed, generate code for
        the destructor of an abstract class.
        (mark_used): Update comment for older function-name change.

        PR C++/88114
        * g++.dg/cpp0x/defaulted61.C: New.
        * g++.dg/cpp0x/defaulted62.C: New.

From-SVN: r267855
2019-01-11 20:40:13 +01:00
Vladimir Makarov
4321da7b93 re PR rtl-optimization/87305 (Segfault in end_hard_regno in setup_live_pseudos_and_spill_after_risky_transforms on aarch64 big-endian)
2019-01-11  Vladimir Makarov  <vmakarov@redhat.com>

	PR rtl-optimization/87305
	* lra-assigns.c
	(setup_live_pseudos_and_spill_after_risky_transforms): Add code
	for little endian pseudos used as paradoxical subreg.

From-SVN: r267854
2019-01-11 19:25:31 +00:00
Jakub Jelinek
e17fa93eca re PR tree-optimization/88693 (Wrong code since r263018)
PR tree-optimization/88693
	* tree-ssa-strlen.c (get_min_string_length): Don't set *full_string_p
	for STRING_CSTs that don't contain any NUL characters in the first
	TREE_STRING_LENGTH bytes.

	* gcc.c-torture/execute/pr88693.c: New test.

From-SVN: r267852
2019-01-11 20:04:32 +01:00
Alan Modra
0f64d96d93 re PR target/88777 (Out-of-range offsets building glibc test-tgmath2.c for hppa-linux-gnu)
PR 88777
	PR 88614
	* genattrtab.c (min_fn): Don't translate values.
	(min_attr_value): Return INT_MAX when the value can't be calculated.
	Return minimum among any values that can be calculated.
	(max_attr_value): Adjust.

From-SVN: r267851
2019-01-11 11:44:00 -07:00
Jakub Jelinek
e173500e53 * Makefile.in (PLUGIN_HEADERS): Add $(INSN_ATTR_H).
From-SVN: r267850
2019-01-11 18:01:25 +01:00
Jakub Jelinek
8aa1550e23 Remove trailing whitespace from latest commit.
From-SVN: r267849
2019-01-11 17:55:13 +01:00