1. 24 Jun, 2018 3 commits
  2. 23 Jun, 2018 5 commits
  3. 22 Jun, 2018 24 commits
    • re PR fortran/86281 (SEGV in fortran/resolve.c:resolve_function) · 474f2530
      2018-06-22  Paul Thomas  <pault@gcc.gnu.org>
      	    Rainer Orth  <ro@gcc.gnu.org>
      
      	PR fortran/86281
      	* resolve.c (resolve_contained_fntype): Check for the charlen
      	before testing the length.
      
      2018-06-22  Paul Thomas  <pault@gcc.gnu.org>
      
      	PR fortran/86281
      	* gfortran.dg/assumed_charlen_function_7.f90: Add -std=legacy.
      
      
      Co-Authored-By: Rainer Orth <ro@gcc.gnu.org>
      
      From-SVN: r261975
      Paul Thomas committed
    • rs6000-c.c (altivec_overloaded_builtins): Change behavior of vec_pack (vector double... · 9395b1d9
      gcc/ChangeLog:
      
      2018-06-22  Kelvin Nilsen  <kelvin@gcc.gnu.org>
      
      	* config/rs6000/rs6000-c.c (altivec_overloaded_builtins): Change
      	behavior of vec_pack (vector double, vector double) to match
      	behavior of vec_float2 (vector double, vector double).
      
      gcc/testsuite/ChangeLog:
      
      2018-06-22  Kelvin Nilsen  <kelvin@gcc.gnu.org>
      
      	* gcc.target/powerpc/builtins-3-p8.c (test_pack_float): Remove
      	this test.
      	* gcc.target/powerpc/builtins-9.c: New test.
      	* gcc.target/powerpc/fold-vec-pack-double.c: Modify dg directives
      	to expect different code generation on big-endian vs.
      	little-endian targets.
      
      From-SVN: r261974
      Kelvin Nilsen committed
    • PR c++/86219 - ICE with erroneous initializer in template. · e56f6629
      	* constexpr.c (fold_non_dependent_expr): Add complain parm.
      	* call.c, expr.c, init.c, pt.c, semantics.c, typeck.c, typeck2.c:
      	Pass it.
      	* call.c (build_cxx_call): Don't mess with builtins in a template.
      	* typeck2.c (store_init_value): If fold_non_dependent_expr didn't
      	produce a constant value, go back to the uninstantiated form.
      
      From-SVN: r261972
      Jason Merrill committed
    • Avoid taking the address of something just because it's in parens. · e4511ca2
      	* constexpr.c (same_type_ignoring_tlq_and_bounds_p): New.
      	(cxx_fold_indirect_ref): Use it.
      	(cxx_eval_constant_expression) [VIEW_CONVERT_EXPR]: Use it.
      	* cp-tree.h (REF_PARENTHESIZED_P): Allow VIEW_CONVERT_EXPR.
      	* semantics.c (force_paren_expr): Use VIEW_CONVERT_EXPR instead of
      	static_cast to reference type.
      	(maybe_undo_parenthesized_ref): Handle VIEW_CONVERT_EXPR.
      
      From-SVN: r261971
      Jason Merrill committed
    • [testsuite/guality] Use buildarea gdb by default in combined build · 73607ff9
      2018-06-22  Tom de Vries  <tdevries@suse.de>
      
      	* g++.dg/guality/guality.exp (guality_gdb_name): Default to
      	$rootme/../gdb/gdb, if available.
      	* gcc.dg/guality/guality.exp (guality_gdb_name): Same.
      	* gfortran.dg/guality/guality.exp (guality_gdb_name): Same.
      
      From-SVN: r261935
      Tom de Vries committed
    • [testsuite/guality] Be verbose about gdb version used · be56f2c4
      2018-06-22  Tom de Vries  <tdevries@suse.de>
      
      	* lib/gcc-gdb-test.exp (report_gdb): New proc.
      	* g++.dg/guality/guality.exp: Use report_gdb.
      	* gcc.dg/guality/guality.exp: Same.
      	* gfortran.dg/guality/guality.exp: Same.
      
      From-SVN: r261911
      Tom de Vries committed
    • re PR c++/85662 ("error: non-constant condition for static assertion" from… · 7017d4a2
      re PR c++/85662 ("error: non-constant condition for static assertion" from __builtin_offsetof in C++)
      
      	PR c++/85662
      	* g++.dg/ext/offsetof3.C: New test.
      
      From-SVN: r261909
      Jakub Jelinek committed
    • Improve entry/exit instrumentation for nested functions · 0fb6181e
      2018-06-22  Olivier Hainque  <hainque@adacore.com>
      
      	* gimplify.c (gimplify_function_tree): Prevent creation
      	of a trampoline for the address of the current function
      	passed to entry/exit instrumentation hooks.
      
      From-SVN: r261908
      Olivier Hainque committed
    • Forgot PR target/86222 in ChangeLog · 3f14cdf8
      From-SVN: r261906
      Aaron Sawdey committed
    • rs6000-string.c (expand_strn_compare): Handle -m32 correctly. · e9727bda
      2018-06-22  Aaron Sawdey  <acsawdey@linux.ibm.com>
      
      	* config/rs6000/rs6000-string.c (expand_strn_compare): Handle -m32
      	correctly.
      
      From-SVN: r261905
      Aaron Sawdey committed
    • altivec-7.c: Add qualifiers for counts on AIX versus Linux. · 84ee4321
      
      gcc/testsuite/ChangeLog:
      
      2018-06-22  Carl Love  <cel@us.ibm.com>
      
       	* gcc.target/powerpc/altivec-7.c: Add qualifiers for counts on AIX
      	versus Linux.  Change checks for xxlnor, xxland and xxlxor to also look
      	for the vnor, vand and vxor instructions.
      	* gcc.target/powerpc/builtins-1.c: Move vec_or tests to a new file.
      	Remove counts for xxlor. Fix match on bl __divdi3 and bl __udivdi3.
      	* gcc.target/powerpc/builtins-4.c: Fix matching for vsl instructions.
      	* gcc.target/powerpc/builtins-5.c: New test file for vec_or test cases.
       	* gcc.target/powerpc/vsx-vector-6.p7.c: Fix xxlnor BE expected count.
      	Add -dp to dg-options, update expected counts.
      
      From-SVN: r261904
      Carl Love committed
    • Fix test case failures for pdp11 target. · 7393e5de
      	* gcc.c-torture/execute/builtins/lib/chk.c: Use smaller alignment
      	if pdp11.
      	* gcc.c-torture/compile/20010518-2.c: Skip if pdp11 -mint32.
      	* gcc.c-torture/compile/20040101-1.c: Ditto.
      	* gcc.c-torture/compile/20050622-1.c: Ditto.
      	* gcc.c-torture/compile/20080625-1.c: Ditto.
      	* gcc.c-torture/compile/20090107-1.c: Ditto.
      	* gcc.c-torture/compile/920501-12.c: Ditto.
      	* gcc.c-torture/compile/920501-4.c: Ditto.
      	* gcc.c-torture/compile/961203-1.c: Ditto.
      	* gcc.c-torture/compile/limits-externdecl.c: Ditto.
      	* gcc.c-torture/compile/pr25310.c: Ditto.
      
      From-SVN: r261897
      Paul Koning committed
    • syscall: remove Ustat · 38a4d6da
          
          glibc 2.28 removes ustat.h and the ustat function entirely, which
          breaks syscall.Ustat.
          
          Updates golang/go#25990
          
          Reviewed-on: https://go-review.googlesource.com/120535
      
      From-SVN: r261896
      Ian Lance Taylor committed
    • Fix unexported basic_string symbols for 32-bit targets · 626d407b
      	* config/abi/pre/gnu.ver: Fix __cxx11::basic_string patterns for
      	different size_t mangling on 32-bit targets.
      
      From-SVN: r261892
      Jonathan Wakely committed
    • PR libstdc++/86280 fix undefined left shift on 32-bit targets · 0b4bc9a1
      	PR libstdc++/86280
      	* include/experimental/memory_resource
      	(__resource_adaptor_common::_AlignMgr::_M_token_size): Use type large
      	enough for result of left shift.
      
      From-SVN: r261888
      Jonathan Wakely committed
    • Fix emission of jump tables (PR tree-optimization/86263). · 5885a1bd
      2018-06-22  Martin Liska  <mliska@suse.cz>
      
              PR tree-optimization/86263
      	* tree-switch-conversion.c (jump_table_cluster::find_jump_tables):
              Bail out if is_enabled is false.
      	* tree-switch-conversion.h (jump_table_cluster::is_enabled):
              New declaration.
      	(jump_table_cluster::is_enabled): New function.
      
      From-SVN: r261886
      Martin Liska committed
    • lto-streamer-out.c (DFS::DFS_write_tree_body): Do not stream BINFO_BASE_ACCESSES… · 0c172706
      lto-streamer-out.c (DFS::DFS_write_tree_body): Do not stream BINFO_BASE_ACCESSES and BINFO_VPTR_FIELD.
      
      
      	* lto-streamer-out.c (DFS::DFS_write_tree_body): Do not stream
      	BINFO_BASE_ACCESSES and BINFO_VPTR_FIELD.
      	* tree-streamer-in.c (streamer_read_tree_bitfields): Likewise.
      	(lto_input_ts_binfo_tree_pointers): Likewise.
      	* tree-streamer-out.c (streamer_write_tree_bitfields,
      	write_ts_binfo_tree_pointers): Likewise.
      	* tree.c (free_lang_data_in_binfo): Clear BINFO_VPTR_FIELD.
      
      From-SVN: r261885
      Jan Hubicka committed
    • Update OpenACC testcases · 31dd69b7
      	gcc/testsuite/
      	* c-c++-common/goacc/deviceptr-4.c: New file.
      	* c-c++-common/goacc/kernels-counter-var-redundant-load.c:
      	Likewise.
      	* c-c++-common/goacc/kernels-loop-data-2.c: Likewise.
      	* c-c++-common/goacc/kernels-loop-data-enter-exit-2.c: Likewise.
      	* c-c++-common/goacc/kernels-loop-data-enter-exit.c: Likewise.
      	* c-c++-common/goacc/kernels-loop-data-update.c: Likewise.
      	* c-c++-common/goacc/kernels-loop-data.c: Likewise.
      	* c-c++-common/goacc/kernels-parallel-loop-data-enter-exit.c:
      	Likewise.
      	* c-c++-common/goacc/parallel-reduction.c: Likewise.
      	* c-c++-common/goacc/private-reduction-1.c: Likewise.
      	* gfortran.dg/goacc/kernels-parallel-loop-data-enter-exit.f95:
      	Likewise.
      	* gfortran.dg/goacc/modules.f95: Likewise.
      	* gfortran.dg/goacc/routine-8.f90: Likewise.
      	* gfortran.dg/goacc/routine-level-of-parallelism-1.f90: Likewise.
      	libgomp/
      	* testsuite/libgomp.oacc-c-c++-common/loop-red-wv-1.c: Don't force "-O2".
      	* testsuite/libgomp.oacc-c-c++-common/data-2.c: Update.
      	* testsuite/libgomp.oacc-c-c++-common/host_data-1.c: Likewise.
      	* testsuite/libgomp.oacc-c-c++-common/mode-transitions.c: Likewise.
      	* testsuite/libgomp.oacc-fortran/data-1.f90: Likewise.
      	* testsuite/libgomp.oacc-fortran/data-2.f90: Likewise.
      	* testsuite/libgomp.oacc-c++/non-scalar-data.C: New file.
      	* testsuite/libgomp.oacc-c-c++-common/declare-3.c: Likewise.
      	* testsuite/libgomp.oacc-c-c++-common/enter-data.c: Likewise.
      	* testsuite/libgomp.oacc-c-c++-common/kernels-loop-data-2.c:
      	Likewise.
      	* testsuite/libgomp.oacc-c-c++-common/kernels-loop-data-enter-exit-2.c:
      	Likewise.
      	* testsuite/libgomp.oacc-c-c++-common/kernels-loop-data-enter-exit.c:
      	Likewise.
      	* testsuite/libgomp.oacc-c-c++-common/kernels-loop-data-update.c:
      	Likewise.
      	* testsuite/libgomp.oacc-c-c++-common/kernels-loop-data.c:
      	Likewise.
      	* testsuite/libgomp.oacc-c-c++-common/kernels-parallel-loop-data-enter-exit.c:
      	Likewise.
      	* testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-1.c:
      	Likewise.
      	* testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-2.c:
      	Likewise.
      	* testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-3.c:
      	Likewise.
      	* testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-4.c:
      	Likewise.
      	* testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-5.c:
      	Likewise.
      	* testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-1.c:
      	Likewise.
      	* testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-2.c:
      	Likewise.
      	* testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-3.c:
      	Likewise.
      	* testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-4.c:
      	Likewise.
      	* testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-5.c:
      	Likewise.
      	* testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-6.c:
      	Likewise.
      	* testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-vector-1.c:
      	Likewise.
      	* testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-vector-2.c:
      	Likewise.
      	* testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-1.c:
      	Likewise.
      	* testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-2.c:
      	Likewise.
      	* testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-3.c:
      	Likewise.
      	* testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-4.c:
      	Likewise.
      	* testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-5.c:
      	Likewise.
      	* testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-6.c:
      	Likewise.
      	* testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-7.c:
      	Likewise.
      	* testsuite/libgomp.oacc-c-c++-common/kernels-reduction-1.c:
      	Likewise.
      	* testsuite/libgomp.oacc-c-c++-common/parallel-loop-1.c: Likewise.
      	* testsuite/libgomp.oacc-c-c++-common/parallel-loop-1.h: Likewise.
      	* testsuite/libgomp.oacc-c-c++-common/parallel-loop-2.h: Likewise.
      	* testsuite/libgomp.oacc-fortran/cublas-fixed.h: Likewise.
      	* testsuite/libgomp.oacc-fortran/dummy-array.f90: Likewise.
      	* testsuite/libgomp.oacc-fortran/host_data-2.f90: Likewise.
      	* testsuite/libgomp.oacc-fortran/host_data-3.f: Likewise.
      	* testsuite/libgomp.oacc-fortran/host_data-4.f90: Likewise.
      	* testsuite/libgomp.oacc-fortran/kernels-acc-loop-reduction-2.f90:
      	Likewise.
      	* testsuite/libgomp.oacc-fortran/kernels-acc-loop-reduction.f90:
      	Likewise.
      	* testsuite/libgomp.oacc-fortran/kernels-collapse-3.f90: Likewise.
      	* testsuite/libgomp.oacc-fortran/kernels-collapse-4.f90: Likewise.
      	* testsuite/libgomp.oacc-fortran/kernels-independent.f90:
      	Likewise.
      	* testsuite/libgomp.oacc-fortran/kernels-loop-1.f90: Likewise.
      	* testsuite/libgomp.oacc-fortran/kernels-map-1.f90: Likewise.
      	* testsuite/libgomp.oacc-fortran/kernels-parallel-loop-data-enter-exit.f95:
      	Likewise.
      	* testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-gang-1.f90:
      	Likewise.
      	* testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-gang-2.f90:
      	Likewise.
      	* testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-gang-3.f90:
      	Likewise.
      	* testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-gang-6.f90:
      	Likewise.
      	* testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-vector-1.f90:
      	Likewise.
      	* testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-vector-2.f90:
      	Likewise.
      	* testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-1.f90:
      	Likewise.
      	* testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-2.f90:
      	Likewise.
      	* testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-3.f90:
      	Likewise.
      	* testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-4.f90:
      	Likewise.
      	* testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-5.f90:
      	Likewise.
      	* testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-6.f90:
      	Likewise.
      	* testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-7.f90:
      	Likewise.
      	* testsuite/libgomp.oacc-fortran/kernels-reduction-1.f90:
      	Likewise.
      	* testsuite/libgomp.oacc-fortran/lib-12.f90: Likewise.
      	* testsuite/libgomp.oacc-fortran/lib-13.f90: Likewise.
      	* testsuite/libgomp.oacc-fortran/lib-14.f90: Likewise.
      	* testsuite/libgomp.oacc-fortran/lib-15.f90: Likewise.
      	* testsuite/libgomp.oacc-fortran/parallel-loop-1.f90: Likewise.
      	* testsuite/libgomp.oacc-fortran/reference-reductions.f90: Likewise.
      	* testsuite/libgomp.oacc-fortran/vector-routine.f90: Likewise.
      
      Co-Authored-By: James Norris <jnorris@codesourcery.com>
      Co-Authored-By: Julian Brown <julian@codesourcery.com>
      Co-Authored-By: Thomas Schwinge <thomas@codesourcery.com>
      Co-Authored-By: Tom de Vries <tom@codesourcery.com>
      
      From-SVN: r261884
      Cesar Philippidis committed
    • * tree.c (free_lang_data_in_type): Free all TYPE_VFIELDs. · ebbb1168
      From-SVN: r261883
      Jan Hubicka committed
    • Make symbol_summary::get and call_summary::get pure. · e08bf125
      2018-06-22  Martin Liska  <mliska@suse.cz>
      
      	* symbol-summary.h (get): Make it pure and inline move
              functionality from ::get function.
              (get): Remove and inline into ::get and ::get_create.
              (get_create): Move code from ::get function.
      
      From-SVN: r261882
      Martin Liska committed
    • Don't preprocess .S files with -P on Solaris/x86 (PR target/85994) · 635b7382
      	PR target/85994
      	* config/i386/sol2.h (CPP_SPEC): Don't pass -P for
      	-x assembler-with-cpp.
      
      From-SVN: r261880
      Rainer Orth committed
    • Have g++ define _FILE_OFFSET_BITS=64 on Solaris · a634048e
      	* config/sol2.h (TARGET_OS_CPP_BUILTINS): Define
      	_FILE_OFFSET_BITS=64 for C++.
      
      From-SVN: r261879
      Rainer Orth committed
    • 2018-06-21 François Dumont <fdumont@gcc.gnu.org> · 89de39a9
      Fix this ChangeLog entry.
      
      From-SVN: r261878
      François Dumont committed
    • Daily bump. · f76e0768
      From-SVN: r261877
      GCC Administrator committed
  4. 21 Jun, 2018 8 commits
    • PR libstdc++/86138 prevent implicit instantiation of COW empty rep · d72888d3
      The explicit instantiation declarations for std::basic_string are
      disabled for C++17 (and later) so that basic_string symbols get
      implicitly instantiated in every translation unit that needs them.  On
      targets that don't support STB_GNU_UNIQUE this leads to multiple copies
      of the empty rep symbol for COW strings. In order to detect whether a
      COW string needs to deallocate its storage it compares the address with
      the empty rep.  When there are multiple copies of the empty rep object
      the address is not unique, and so string destructors try to delete the
      empty rep, which crashes.
      
      In order to guarantee uniqueness of the _S_empty_rep_storage symbol this
      patch adds an explicit instantiation declaration for just that symbol.
      This means the other symbols are still implicitly instantiated in C++17
      code, but for the empty rep the definition in the library gets used.
      
      Separately, there is no need for C++17 code to implicitly instantiate
      the I/O functions for strings, so this also restores the explicit
      instantiation declarations for those functions.
      
      	PR libstdc++/86138
      	* include/bits/basic_string.tcc:
      	[__cplusplus > 201402 && !_GLIBCXX_USE_CXX11_ABI]
      	(basic_string<char>::_Rep::_S_empty_rep_storage)
      	(basic_string<wchar_t>::_Rep::_S_empty_rep_storage): Add explicit
      	instantiation declarations.
      	[__cplusplus > 201402] (operator>>, operator<<, getline): Re-enable
      	explicit instantiation declarations.
      	* testsuite/21_strings/basic_string/cons/char/86138.cc: New.
      	* testsuite/21_strings/basic_string/cons/wchar_t/86138.cc: New.
      
      From-SVN: r261873
      Jonathan Wakely committed
    • pack02.c: Use __ibm128 instead of long double if the long double format is IEEE 128-bit... · 30043df9
      2018-06-21  Michael Meissner  <meissner@linux.ibm.com>
      
      	* gcc.target/powerpc/pack02.c: Use __ibm128 instead of long double
      	if the long double format is IEEE 128-bit for tests that are
      	explicitly testing IBM extended double support.  Use the
      	appropriate pack and unpack built-in functions.  Change calls from
      	__builtin_isinfl to __builtin_isinf since the later supports all
      	floating point types.
      	* gcc.target/powerpc/pr57150.c: Likewise.
      	* gcc.target/powerpc/pr60203.c: Likewise.
      	* gcc.target/powerpc/pr67808.c: Likewise.
      	* gcc.target/powerpc/pr70117.c: Likewise.
      	* gcc.target/powerpc/tfmode_off.c: Likewise.
      
      From-SVN: r261872
      Michael Meissner committed
    • cmd/go: re-enable a couple of tests of gccgo · 27fbc519
          
          Port https://golang.org/cl/120375 over to the gofrontend repo so that
          it gets more reliable testing.
          
          Updates golang/go#22472
          
          Reviewed-on: https://go-review.googlesource.com/120395
      
      From-SVN: r261871
      Ian Lance Taylor committed
    • rs6000.c (init_float128_ieee): Prevent complex multiply and divide external… · ed044066
      rs6000.c (init_float128_ieee): Prevent complex multiply and divide external functions from being created more...
      
      2018-06-23  Michael Meissner  <meissner@linux.ibm.com>
      
      	* config/rs6000/rs6000.c (init_float128_ieee): Prevent complex
      	multiply and divide external functions from being created more
      	than once.
      
      From-SVN: r261870
      Michael Meissner committed
    • rs6000.md (neg<mode>2_internal): Use the correct mode to check whether the mode is IBM extended. · e8ccf824
      2018-06-21  Michael Meissner  <meissner@linux.ibm.com>
      
      	* config/rs6000/rs6000.md (neg<mode>2_internal): Use the correct
      	mode to check whether the mode is IBM extended.
      
      From-SVN: r261869
      Michael Meissner committed
    • re PR fortran/49630 ([OOP] ICE on obsolescent deferred-length type bound character function) · 77f72c95
      2018-06-21  Paul Thomas  <pault@gcc.gnu.org>
      
      	PR fortran/49630
      	* resolve.c (resolve_contained_fntype): Change standard ref.
      	from F95 to F2003: C418. Correct a spelling error in a comment.
      	It is an error for an abstract interface to have an assumed
      	character length result.
      	* trans-expr.c (gfc_conv_procedure_call): Likewise change the
      	standard reference.
      
      2018-06-21  Paul Thomas  <pault@gcc.gnu.org>
      
      	PR fortran/49630
      	* gfortran.dg/assumed_charlen_function_7.f90: New test.
      
      From-SVN: r261868
      Paul Thomas committed
    • rs6000.md (extendtfif2): Add missing 128-bit conversion insn that shows up when... · fe5309c5
      2018-06-21  Michael Meissner  <meissner@linux.ibm.com>
      
      	* config/rs6000/rs6000.md (extendtfif2): Add missing 128-bit
      	conversion insn that shows up when pr85657-3.c is compiled using
      	IEEE 128-bit long double.
      
      From-SVN: r261867
      Michael Meissner committed
    • PR libstdc++/83328 add correct basic_string::insert for initializer_list · cda121ac
      The SSO basic_string has a non-standard insert(iterator, initializer_list)
      overload, from a C++0x draft. This adds the correct overload, while also
      preserving the old one so that the old symbol is still exported from the
      library.
      
      The COW basic_string doesn't have any of the C++11 changes to the insert
      overloads (they all still have non-const iterator parameters and the
      ones that should return an iterator still return void). This doesn't
      make any change to the COW string.
      
      	PR libstdc++/83328
      	* acinclude.m4 (libtool_VERSION): Bump to 6:26:0.
      	* config/abi/pre/gnu.ver: Add GLIBCXX_3.4.26 and export new symbol.
      	* configure: Regenerate.
      	* include/bits/basic_string.h [_GLIBCXX_USE_CXX11_ABI]
      	(basic_string::insert(const_iterator, initializer_list<C>)): Add.
      	[_GLIBCXX_USE_CXX11_ABI && !_GLIBCXX_DEFINING_STRING_INSTANTIATIONS]
      	(basic_string::insert(iterator, initializer_list<C>)): Suppress
      	definition.
      	* include/debug/string (basic_string::insert(iterator, C)): Change
      	first parameter to const_iterator.
      	(basic_string::insert(iterator, size_type, C)): Likewise. Change
      	return type to iterator.
      	(basic_string::insert(iterator, InputIterator, InputIterator)):
      	Likewise.
      	(basic_string::insert(iterator, initializer_list<C>)): Change first
      	parameter to const_iterator and return type to iterator.
      	* src/c++11/string-inst.cc: Extend comment.
      	* testsuite/21_strings/basic_string/modifiers/insert/char/83328.cc:
      	New.
      	* testsuite/21_strings/basic_string/modifiers/insert/wchar_t/83328.cc:
      	New.
      	* testsuite/util/testsuite_abi.cc: Add new symbol version.
      
      From-SVN: r261866
      Jonathan Wakely committed