1. 12 Feb, 2019 15 commits
    • syscall: don't assume that WIFCONTINUED is defined · 2faf2a30
          
          It's not defined on the Hurd.
          
          Reviewed-on: https://go-review.googlesource.com/c/161963
      
      From-SVN: r268828
      Ian Lance Taylor committed
    • PR c++/89144 - link error with constexpr initializer_list. · d950b005
      In this PR, we were unnecessarily rejecting a constexpr initializer_list
      with no elements.  This seems like a fairly useless degenerate case, but it
      makes sense to avoid allocating an underlying array at all if there are no
      elements and instead use a null pointer, like the initializer_list default
      constructor.
      
      If the (automatic storage duration) list does have initializer elements, we
      continue to reject the declaration, because the initializer_list ends up
      referring to an automatic storage duration temporary array, which is not a
      suitable constant initializer.  If we make it static, it should be OK
      because we refer to a static array.  The second hunk fixes that case.  It
      also means we won't diagnose some real errors in templates, but those
      diagnostics aren't required, and we'll get them when the template is
      instantiated.
      
      	* call.c (convert_like_real) [ck_list]: Don't allocate a temporary
      	array for an empty list.
      	* typeck2.c (store_init_value): Don't use cxx_constant_init in a
      	template.
      
      From-SVN: r268827
      Jason Merrill committed
    • i386: Revert revision 268678 and revision 268657 · 705c92a2
      i386 backend has
      
      INT_MODE (OI, 32);
      INT_MODE (XI, 64);
      
      So, XI_MODE represents 64 INTEGER bytes = 64 * 8 = 512 bit operation,
      in case of const_1, all 512 bits set.
      
      We can load zeros with narrower instruction, (e.g. 256 bit by inherent
      zeroing of highpart in case of 128 bit xor), so TImode in this case.
      
      Some targets prefer V4SF mode, so they will emit float xorps for zeroing
      
      Then the introduction of AVX512F fubared everything by overloading the
      meaning of insn mode.
      
      How should we use INSN mode,  MODE_XI, in standard_sse_constant_opcode
      and patterns which use standard_sse_constant_opcode? 2 options:
      
      1.  MODE_XI should only used to check if EXT_REX_SSE_REG_P is true
      in any register operand.  The operand size must be determined by operand
      itself , not by MODE_XI.  The operand encoding size should be determined
      by the operand size, EXT_REX_SSE_REG_P and AVX512VL.
      2. MODE_XI should be used to determine the operand encoding size.
      EXT_REX_SSE_REG_P and AVX512VL should be checked for encoding
      instructions.
      
      gcc/
      
      	PR target/89229
      	* config/i386/i386.md (*movoi_internal_avx): Revert revision
      	268678 and revision 268657.
      	(*movti_internal): Likewise.
      
      gcc/testsuite/
      
      	PR target/89229
      	* gcc.target/i386/pr89229-1.c: New test.
      
      From-SVN: r268811
      H.J. Lu committed
    • libphobos: Merge upstream phobos 791c5d240 · ec696cae
      Adds missing HPPA support in std.experimental.allocator.
      
      Reviewed-on: https://github.com/dlang/phobos/pull/6838
      
      From-SVN: r268810
      Iain Buclaw committed
    • S/390: Reject invalid Q/R/S/T addresses after LRA · dd0df136
      The following insn:
      
      (insn (set (reg:DI %r2)
                 (sign_extend:DI (mem:SI
                  (const:DI (plus:DI (symbol_ref:DI ("*.LC0"))
                                     (const_int 16)))))))
      
      is correctly recognized by LRA as RIL alternative of extendsidi2
      define_insn.  However, when recognition runs after LRA, it returns RXY
      alternative, which is incorrect, since the offset 16 points past the
      end of of *.LC0 literal pool entry.  Such addresses are normally
      rejected by s390_decompose_address ().
      
      This inconsistency confuses annotate_constant_pool_refs: the selected
      alternative makes it proceed with annotation, only to find that the
      annotated address is invalid, causing ICE.
      
      This patch fixes the root cause, namely, that s390_check_qrst_address ()
      behaves differently during and after LRA.
      
      gcc/ChangeLog:
      
      2019-02-12  Ilya Leoshkevich  <iii@linux.ibm.com>
      
      	PR target/89233
      	* config/s390/s390.c (s390_decompose_address): Update comment.
      	(s390_check_qrst_address): Reject invalid address forms after
      	LRA.
      
      gcc/testsuite/ChangeLog:
      
      2019-02-12  Ilya Leoshkevich  <iii@linux.ibm.com>
      
      	PR target/89233
      	* gcc.target/s390/pr89233.c: New test.
      
      From-SVN: r268798
      Ilya Leoshkevich committed
    • vec-sld-modulo.c: Require p8vector_hw. · 8ced0660
      2018-01-12  Bill Schmidt  <wschmidt@linux.ibm.com>
      
      	* gcc.target/powerpc/vec-sld-modulo.c: Require p8vector_hw.
      	* gcc.target/powerpc/vec-srad-modulo.c: Likewise.
      	* gcc.target/powerpc/vec-srd-modulo.c: Likewise.
      
      From-SVN: r268797
      Bill Schmidt committed
    • [libbacktrace] Handle bsearch with NULL base in dwarf_lookup_pc · 68641fb7
      The call to bsearch in dwarf_lookup_pc can have NULL as base argument when
      the nmemb argument is 0.  The base argument is required to be pointing to the
      initial member of an array of nmemb objects.  It is not specified what
      constitutes a valid pointer to an array of 0 objects, but glibc declares base
      with attribute non-null, so the NULL will trigger a sanitizer runtime error.
      
      Fix this by only calling bsearch if nmemb != 0.
      
      2019-02-12  Tom de Vries  <tdevries@suse.de>
      
      	PR libbacktrace/81983
      	* dwarf.c (dwarf_lookup_pc): Don't call bsearch if nmemb == 0.
      
      From-SVN: r268796
      Tom de Vries committed
    • Revert a hunk from r261322 (PR lto/88876). · b3f2b048
      2019-02-12  Martin Liska  <mliska@suse.cz>
      
      	PR lto/88876
      	* ipa-pure-const.c (propagate_pure_const): Revert hunk as
      	we need default values of funct_state for a function that
      	is not optimized.
      
      From-SVN: r268795
      Martin Liska committed
    • Fix splay tree KEY leak detected in GDB test gdb.base/macscp.exp · f9f75f8d
      When a node is removed from a splay tree, the splay tree was
      not using the function splay_tree_delete_key_fn to release the key.
      This was causing a leak, fixed by Tom Tromey.
      
      This patch fixes another key leak, that happens when a key equal to
      a key already present is inserted.  In such a case, we have to release
      the old KEY.
      Note that this is based on the assumption that the caller always
      allocates a new KEY when doing an insert.
      
      Also, clarify the documentation about when the release functions are
      called.
      
      2019-02-11  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
      
      	* splay-tree.h (splay_tree_delete_key_fn): Update comment.
      	(splay_tree_delete_value_fn): Likewise.
      
      libiberty/ChangeLog
      2019-02-11  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
      
      	* splay-tree.c (splay_tree_insert): Also release old KEY in case
      	of insertion of a key equal to an already present key.
      	(splay_tree_new_typed_alloc): Update comment.
      
      From-SVN: r268793
      Philippe Waroquiers committed
    • asan.c (asan_expand_mark_ifn): Take into account the alignment of the object to… · c4d57632
      asan.c (asan_expand_mark_ifn): Take into account the alignment of the object to pick the size of stores on...
      
      	* asan.c (asan_expand_mark_ifn): Take into account the alignment of
      	the object to pick the size of stores on strict-alignment platforms.
      
      	* config/sparc/sparc.md (*movsi_insn): Minor tweak.
      	(*movdi_insn_sp32): Likewise.
      	(*movdi_insn_sp64): Likewise.
      
      From-SVN: r268792
      Eric Botcazou committed
    • re PR target/88777 (Out-of-range offsets building glibc test-tgmath2.c for hppa-linux-gnu) · baaf860b
      
      	PR lto/88777
      	* cgraphunit.c (analyze_functions): Clear READONLY flag for external
      	types that needs constructiong.
      	* tree.h (may_be_aliased): Do not check TYPE_NEEDS_CONSTRUCTING.
      
      From-SVN: r268791
      Jan Hubicka committed
    • re PR tree-optimization/89253 (ICE in split_loop, at tree-ssa-loop-split.c:566) · 0dcbc6dd
      2019-02-12  Richard Biener  <rguenther@suse.de>
      
      	PR tree-optimization/89253
      	* tree-ssa-loop-split.c (tree_ssa_split_loops): Check we can
      	duplicate the loop.
      
      	* gfortran.dg/pr89253.f: New testcase.
      
      From-SVN: r268790
      Richard Biener committed
    • linemap_line_start: protect against location_t overflow (PR lto/88147) · a4553534
      PR lto/88147 reports an assertion failure due to a bogus location_t value
      when adding a line to a pre-existing line map, when there's a large
      difference between the two line numbers.
      
      For some "large differences", this leads to a location_t value that exceeds
      LINE_MAP_MAX_LOCATION, in which case linemap_line_start returns 0.  This
      isn't ideal, but at least should lead to safe degradation of location
      information.
      
      However, if the difference is very large, it's possible for the line
      number offset (relative to the start of the map) to be sufficiently large
      that overflow occurs when left-shifted by the column-bits, and hence
      the check against the LINE_MAP_MAX_LOCATION limit fails, leading to
      a seemingly-valid location_t value, but encoding the wrong location.  This
      triggers the assertion failure:
        linemap_assert (SOURCE_LINE (map, r) == to_line);
      
      The fix (thanks to Martin) is to check for overflow when determining
      whether to reuse an existing map, and to not reuse it if it would occur.
      
      gcc/ChangeLog: David Malcolm  <dmalcolm@redhat.com>
      	PR lto/88147
      	* input.c (selftest::test_line_offset_overflow): New selftest.
      	(selftest::input_c_tests): Call it.
      
      libcpp/ChangeLog: Martin Liska  <mliska@suse.cz>
      	PR lto/88147
      	* line-map.c (linemap_line_start): Don't reuse the existing line
      	map if the line offset is sufficiently large to cause overflow
      	when computing location_t values.
      
      From-SVN: r268789
      David Malcolm committed
    • Daily bump. · f11bb310
      From-SVN: r268788
      GCC Administrator committed
    • mksysinfo: remove incorrect quotes in st_fsid handling for Hurd · 42ee8204
          
          Also stop converting st_dev on Hurd; it shouldn't appear, but if it
          somehow does we don't want to convert it.
          
          Reviewed-on: https://go-review.googlesource.com/c/161961
      
      From-SVN: r268785
      Ian Lance Taylor committed
  2. 11 Feb, 2019 22 commits
    • PR c++/89241 - ICE with __func__ in lambda in template. · 0df9962a
      When we're instantiating a generic lambda, its enclosing context will
      have already been instantiated, so we need to look for that as well.
      
      	* pt.c (enclosing_instantiation_of): Also check
      	instantiated_lambda_fn_p for the template context.
      
      From-SVN: r268784
      Jason Merrill committed
    • PR c++/89212 - ICE converting nullptr to pointer-to-member-function. · ab97c3cd
      	* pt.c (tsubst_copy_and_build) <case CONSTRUCTOR>: Return early for
      	null member pointer value.
      
      	* g++.dg/cpp0x/nullptr40.C: New test.
      	* g++.dg/cpp0x/nullptr41.C: New test.
      
      From-SVN: r268781
      Marek Polacek committed
    • re PR c++/88977 (__builtin_is_constant_evaluated() as function template argument… · 75c5639d
      re PR c++/88977 (__builtin_is_constant_evaluated() as function template argument causes substitution failure)
      
      	PR c++/88977
      	* pt.c (convert_nontype_argument): Pass true as manifestly_const_eval
      	to maybe_constant_value calls.
      
      	* g++.dg/cpp2a/is-constant-evaluated7.C: New test.
      
      From-SVN: r268780
      Jakub Jelinek committed
    • * typeck2.c (digest_init_r): Remove commented code. · f9fb2d27
      From-SVN: r268779
      Marek Polacek committed
    • * fi.po, fr.po: Update. · 62b835cd
      From-SVN: r268778
      Joseph Myers committed
    • [COMMITTED] Fix pthread errors in pr86637-2.c · 7009c55e
      Fix test errors on targets which do not support pthreads.
      
      Committed as obvious.
      
          testsuite/
      	PR tree-optimization/86637
      	* gcc.c-torture/compile/pr86637-2.c: Test pthread and graphite target.
      
      From-SVN: r268777
      Wilco Dijkstra committed
    • PR tree-optimization/88771 - Misleading -Werror=array-bounds error · 287ef129
      gcc/ChangeLog:
      
      	PR tree-optimization/88771
      	* gimple-ssa-warn-restrict.c (pass_wrestrict::gate): Also enable
      	when -Wstringop-overflow is set.
      	(builtin_memref::builtin_memref): Adjust excessive upper bound
      	only when lower bound is not excessive.
      	(maybe_diag_overlap): Detect and diagnose excessive bounds via
      	-Wstringop-ovefflow.
      	(maybe_diag_offset_bounds): Rename...
      	(maybe_diag_access_bounds): ...to this.
      	(check_bounds_or_overlap): Adjust for name change above.
      
      gcc/testsuite/ChangeLog:
      
      	PR tree-optimization/88771
      	* gcc.dg/Wstringop-overflow-8.c: New test.
      	* gcc.dg/Wstringop-overflow-9.c: New test.
      	* gcc.dg/Warray-bounds-40.c: New test.
      	* gcc.dg/builtin-stpncpy.c: Adjust.
      	* gcc.dg/builtin-stringop-chk-4.c: Adjust.
      	* g++.dg/opt/memcpy1.C: Adjust.
      
      From-SVN: r268775
      Martin Sebor committed
    • PR c++/87996 - size of array is negative error when SIZE_MAX/2 < sizeof(array) <= SIZE_MAX · 28a8cef1
      gcc/ChangeLog:
      
      	PR c++/87996
      	* builtins.c (max_object_size): Move from here...
      	* builtins.h (max_object_size): ...and here...
      	* tree.c (max_object_size): ...to here...
      	* tree.h (max_object_size): ...and here.
      
      gcc/c-family/ChangeLog:
      
      	PR c++/87996
      	* c-common.c (invalid_array_size_error): New function.
      	(valid_array_size_p): Call it.  Handle size as well as type.
      	* c-common.h (valid_constant_size_p): New function.
      	(enum cst_size_error): New type.
      
      gcc/cp/ChangeLog:
      
      	PR c++/87996
      	* decl.c (compute_array_index_type_loc): Preserve signed sizes
      	for diagnostics.  Call valid_array_size_p instead of error.
      	* init.c (build_new_1): Compute size for diagnostic.  Call
      	invalid_array_size_error
      	(build_new): Call valid_array_size_p instead of error.
      
      gcc/testsuite/ChangeLog:
      
      	PR c++/87996
      	* c-c++-common/array-5.c: New test.
      	* c-c++-common/pr68107.c: Adjust text of diagnostics.
      	* g++.dg/init/new38.C: Same.
      	* g++.dg/init/new43.C: Same.
      	* g++.dg/init/new44.C: Same.
      	* g++.dg/init/new46.C: Same.
      	* g++.dg/other/large-size-array.C: Same.
      	* g++.dg/other/new-size-type.C: Same.
      	* g++.dg/template/array30.C: Same.
      	* g++.dg/template/array32.C: New test.
      	* g++.dg/template/dependent-name3.C: Adjust.
      	* gcc.dg/large-size-array-3.c: Same.
      	* gcc.dg/large-size-array-5.c: Same.
      	* gcc.dg/large-size-array.c: Same.
      	* g++.old-deja/g++.brendan/array1.C: Same.
      	* g++.old-deja/g++.mike/p6149.C: Same.
      
      From-SVN: r268774
      Martin Sebor committed
    • inliner-1.c: Correct comments. · 3c4860e3
      gcc/testsuite/ChangeLog:
      
      	* gcc.dg/tree-prof/inliner-1.c: Correct comments.
      
      From-SVN: r268773
      Martin Sebor committed
    • Arm: Update tests after register allocation changes. (PR/target 88560) · e43a0139
      
      After the register allocator changes of r268705 we need to update a few tests
      with new output.
      
      In all cases the compiler is now generating the expected code, since the tests
      are all float16 testcases using a hard-floar abi, we expect that actual fp16
      instructions are used rather than using integer loads and stores.  Because of
      we also save on some mov.f16s that were being emitted before to move between
      the two.
      
      The aapcs cases now match the f32 cases in using floating point operations.
      
      gcc/testsuite/Changelog
      
      	PR middle-end/88560
      	* gcc.target/arm/armv8_2-fp16-move-1.c: Update assembler scans.
      	* gcc.target/arm/fp16-aapcs-1.c: Likewise.
      	* gcc.target/arm/fp16-aapcs-3.c: Likewise.
      
      From-SVN: r268772
      Tamar Christina committed
    • rs6000.c (rs6000_gimple_fold_builtin): Shift-right and shift-left vector… · 09e0c98b
      rs6000.c (rs6000_gimple_fold_builtin): Shift-right and shift-left vector built-ins need to include a TRUNC_MOD_EXPR...
      
      [gcc]
      
      2019-02-11  Bill Schmidt  <wschmidt@linux.ibm.com>
      
      	* config/rs6000/rs6000.c (rs6000_gimple_fold_builtin): Shift-right
      	and shift-left vector built-ins need to include a TRUNC_MOD_EXPR
      	for correct semantics.
      
      [gcc/testsuite]
      
      2019-02-11  Bill Schmidt  <wschmidt@linux.ibm.com>
      
      	* gcc.target/powerpc/vec-sld-modulo.c: New.
      	* gcc.target/powerpc/vec-srad-modulo.c: New.
      	* gcc.target/powerpc/vec-srd-modulo.c: New.
      
      From-SVN: r268771
      Bill Schmidt committed
    • [RS6000] No inline PLT for V4 bss-plt, implement -mno-pltseq · ff7fa488
      Inline PLT calls need PLT to be an array of addresses.  PowerPC 32-bit
      bss-plt works differently, so this patch disables inline PLT calls
      when -mbss-plt.  The patch also adds support for a new -mno-pltseq
      option, which may be required when linking with -mbss-plt code.
      
      	* doc/invoke.texi (man page RS/6000 and PowerPC Options): Mention
      	-mlongcall and -mpltseq.
      	(RS/6000 and PowerPC Options <-mlongcall>): Mention inline PLT calls.
      	(RS/6000 and PowerPC Options <-mpltseq>): Document.
      	* config/rs6000/rs6000.h (TARGET_PLTSEQ): Define.
      	* config/rs6000/sysv4.opt (mpltseq): New option.
      	* config/rs6000/sysv4.h (TARGET_PLTSEQ): Redefine.
      	(SUBTARGET_OVERRIDE_OPTIONS): Error if given -mpltseq when assembler
      	support is lacking.  Don't allow -mpltseq with -mbss-plt.
      	* config/rs6000/linux64.h (SUBSUBTARGET_OVERRIDE_OPTIONS): Warn if
      	-mpltseq given for ELFv1.
      	* config/rs6000/rs6000.c (rs6000_call_aix): Comment on UNSPEC_PLTSEQ.
      	Only use UNSPEC_PLTSEQ for inline PLT calls.
      	(rs6000_call_sysv, rs6000_sibcall_sysv): Expand comments.  Only
      	use UNSPEC_PLTSEQ for inline PLT calls.
      	(rs6000_indirect_call_template_1, rs6000_longcall_ref),
      	(rs6000_call_aix, rs6000_call_sysv, rs6000_sibcall_sysv): Replace
      	uses of HAVE_AS_PLTSEQ with TARGET_PLTSEQ, simplifying.
      	* config/rs6000/rs6000.md (pltseq_tocsave_<mode>),
      	(pltseq_plt16_ha_<mode>, pltseq_plt16_lo_<mode>),
      	(pltseq_mtctr_<mode>): Likewise.
      
      From-SVN: r268770
      Alan Modra committed
    • PR libstdc++/89023 fix test that fails when <omp.h> not available · 271ad97b
      Instead of a single test that only checks whether <regex> can be
      included in Parallel Mode, add tests for each of C++11/C++14/C++17 that
      check whether <bits/extc++.h> is compatible with _GLIBCXX_PARALLEL.
      This increases the coverage to (almost) all headers.
      
      If <omp.h> is not available then the tests will trivially pass, because
      we don't care about compatibility with _GLIBCXX_PARALLEL in that case.
      
      	PR libstdc++/89023
      	* testsuite/17_intro/headers/c++2011/parallel_mode.cc: New test.
      	* testsuite/17_intro/headers/c++2014/parallel_mode.cc: New test.
      	* testsuite/17_intro/headers/c++2017/parallel_mode.cc: New test.
      	* testsuite/28_regex/headers/regex/parallel_mode.cc: Remove.
      
      From-SVN: r268769
      Jonathan Wakely committed
    • Restore .init_array etc. detection on 64-bit Solaris · e66084a4
      	* acinclude.m4 (gcc_AC_INITFINI_ARRAY): Use 8-byte strings with
      	Solaris ld.
      	* configure: Regenerate.
      
      From-SVN: r268768
      Rainer Orth committed
    • Add AMD GCN maintainers · 60f32352
      2019-02-11  Andrew Stubbs  <ams@codesourcery.com>
      
      	* MAINTAINERS (amdgcn port): Add myself and Julian Brown.
      	(Write After Approval): Remove myself and Julian.
      
      From-SVN: r268767
      Andrew Stubbs committed
    • re PR bootstrap/88714 (bootstrap comparison failure on armv7l since r265398) · 85fef82f
      	PR bootstrap/88714
      	* config/arm/ldrdstrd.md (*arm_ldrd, *arm_strd): Use q constraint
      	instead of r.
      
      From-SVN: r268766
      Jakub Jelinek committed
    • function.c (assign_parm_setup_block): Use the stored size... · 9fb117e8
      	* function.c (assign_parm_setup_block): Use the stored
      	size, not the passed size, when allocating stack-space,
      	also for a parameter with alignment larger than
      	MAX_SUPPORTED_STACK_ALIGNMENT.
      
      From-SVN: r268763
      Hans-Peter Nilsson committed
    • Construct ipa_reduced_postorder always for overwritable (PR ipa/89009). · 45272fd2
      2019-02-11  Martin Liska  <mliska@suse.cz>
      
      	PR ipa/89009
      	* ipa-cp.c (build_toporder_info): Remove usage of a param.
      	* ipa-inline.c (inline_small_functions): Likewise.
      	* ipa-pure-const.c (propagate_pure_const): Likewise.
      	(propagate_nothrow): Likewise.
      	* ipa-reference.c (propagate): Likewise.
      	* ipa-utils.c (struct searchc_env): Remove unused field.
      	(searchc): Always search across AVAIL_INTERPOSABLE.
      	(ipa_reduced_postorder): Always allow AVAIL_INTERPOSABLE as
      	the only called IPA pure const can properly not propagate
      	across interposable boundary.
      	* ipa-utils.h (ipa_reduced_postorder): Remove param.
      2019-02-11  Martin Liska  <mliska@suse.cz>
      
      	PR ipa/89009
      	* g++.dg/ipa/pr89009.C: New test.
      
      From-SVN: r268762
      Martin Liska committed
    • [NDS32] Add memory mode in call pattern. · d29cce74
      gcc/
      	* config/nds32/nds32.md (call_internal, call_value_internal,
      	sibcall_internal, sibcall_value_internal): Use SImode for mem rtx.
      
      From-SVN: r268761
      Chung-Ju Wu committed
    • cris.c (cris_preferred_minimum_alignment): Fix name typo. · bfb31c3d
      	* config/cris/cris.c (cris_preferred_minimum_alignment): Fix name
      	typo.
      
      From-SVN: r268760
      Hans-Peter Nilsson committed
    • i386: Fix a typo in comments for for "Yd" · 8d75ab4d
      config/i386/constraints.md has
      
      (define_register_constraint "Yd"
       "TARGET_AVX512DQ ? ALL_SSE_REGS : TARGET_SSE4_1 ? SSE_REGS : NO_REGS"
       "@internal Any EVEX encodable SSE register (@code{%xmm0-%xmm31}) for AVX512DQ target or any SSE register for SSE4_1 target.")
      
      Comments for "Yd" should mention AVX512DQ, not AVX512BW.
      
      	* config/i386/constraints.md (Yd): Replace AVX512BW with AVX512DQ
      	in comments
      
      From-SVN: r268759
      H.J. Lu committed
    • Daily bump. · 05eca511
      From-SVN: r268758
      GCC Administrator committed
  3. 10 Feb, 2019 3 commits
    • libphobos: Merge upstream druntime 2f764ab6 · d8b1f499
      Fixes hashing of complex reals, enabling testing of rt.util.typeinfo and
      core.internal.hash.
      
      Reviewed-on: https://github.com/dlang/druntime/pull/6837
      
      libphobos/ChangeLog:
      
      	* Makefile.in: Rebuild.
      	* configure: Rebuild.
      	* libdruntime/Makefile.am: Test rt.util.typeinfo and
      	core.internal.convert.
      	* libdruntime/Makefile.in: Rebuild.
      	* src/Makefile.in: Rebuild.
      	* testsuite/Makefile.in: Rebuild.
      	* testsuite/libphobos.hash/test_hash.d: Update test.
      
      From-SVN: r268755
      Iain Buclaw committed
    • libphobos: Apply core.internal.hash updates from druntime · e613d992
      Backported from upstream druntime 2.084
      
      Reviewed-on: https://github.com/dlang/druntime/pull/2469
      
      libphobos/ChangeLog:
      
      	* libdruntime/Makefile.am (DRUNTIME_DSOURCES): Remove rt/util/hash.d
      	* libdruntime/Makefile.in: Rebuild.
      	* testsuite/libphobos.aa/aa.exp: New file.
      	* testsuite/libphobos.aa/test_aa.d: New test.
      	* testsuite/libphobos.hash/hash.exp: New file.
      	* testsuite/libphobos.hash/test_hash.d: New test.
      
      From-SVN: r268754
      Iain Buclaw committed
    • re PR fortran/71723 ([F08] ICE on invalid pointer initialization) · f1b7b50a
      2019-02-10  Thomas Koenig  <tkoenig@gcc.gnu.org>
      
      	PR fortran/71723
      	* expr.c (gfc_check_assign): Add argument is_init_expr.  If we are
      	looking at an init expression, issue error if the target is not a
      	TARGET and we are not looking at a procedure pointer.
      	* gfortran.h (gfc_check_assign): Add optional argument
      	is_init_expr.
      
      2019-02-10  Thomas Koenig  <tkoenig@gcc.gnu.org>
      
      	PR fortran/71723
      	* gfortran.dg/pointer_init_2.f90: Adjust error messages.
      	* gfortran.dg/pointer_init_6.f90: Likewise.
      	* gfortran.dg/pointer_init_9.f90: New test.
      
      From-SVN: r268749
      Thomas Koenig committed