This is an automated email from the git hooks/post-receive script.
unknown user pushed a change to branch devel/sphinx in repository gcc.
from 4cba2fa027a Merge branch 'master' into devel/sphinx adds a7fede6704d testsuite: Fix typo in comment in aapcs64 test adds cb137e85720 Also pre-process PHIs in range-of-stmt. adds 1e625a44f6f vect: Tighten check for SLP memory groups [PR103517] adds e9089e4fa9f libstdc++: Avoid unwanted allocations in filesystem::path adds 2b83bc6097f libstdc++: Optimize ref-count updates in COW std::string adds 74d14778e73 libstdc++: Define std::__is_constant_evaluated() for internal use adds 056551414a3 libstdc++: Clear RB tree after moving elements [PR103501] adds 54ebec35abe path solver: Use only one ssa_global_cache. adds d683a1b3e89 rs6000: Mirror fix for PR102347 in new builtins support adds 53caa4723d8 c++: constexpr, fold, weak redecl, fp/0 [PR103310] adds 185b307b03d darwin, d: Support outfile substitution for libphobos adds 5b1ef8b9db9 middle-end: Skip initialization of opaque type variables [P [...] adds de3e5aae6c4 Final value replacement improvements for until-wrap loops. adds 7eb961d83b0 i386: Improve V8HI and V8HF inserts [PR102811] adds 860c56b5bc3 analyzer: fix false leak seen in Juliet 1.3 [PR102471] adds 40fa651e604 Daily bump. adds 12421a36454 d: Prefix object files from the root package with 'root-' adds fa10faa72d8 d: Disable the D runtime garbage collector after initializi [...] adds 1c5317d6214 libphobos: Add missing ControlState variable for AArch64 adds 1ac7a8c9e47 fortran: OpenMP/OpenACC array mapping alignment fix (PR90030) adds 1ea226fad13 fix spelling of -linker-output-auto-nolto-rel adds 70ece2d4ca4 tree-optimization/103527 - always use thruth type forgather mask adds 06b8cdc8d73 middle-end/103271 - avoid VLA init of register adds 6f43a8a0805 c++: ICE with unnamed tparm and concept [PR103408] adds cde87638bf5 Implement -fprofile-prefix-map. adds 9af081003f9 c++: Fix bogus error with __integer_pack [PR94490] adds 7d6c20c06ce testsuite: make bic-bitmask-18.c test more precise [PR103479] adds d47393d0b4d [PR103437] Process multiplication overflow in priority calc [...] adds 9b8830b6f39 AArch64: Optimize right shift rounding narrowing adds a27940feffb libphobos: Push all callee-save registers on the stack befo [...] adds 7d02c8bf759 [PR103437] Use long long multiplication as backup for overf [...] adds 0ef5185a155 [Ada] Minor style fix (no dot on single line comment) adds 261d367a101 [Ada] Fix possible memory corruption for hostnames longer t [...] adds 6df3ec0e7e0 [Ada] Proof of Boolean'Image and Boolean'Value adds 40b180995ab [Ada] Proof of System.Val_Util utilities for 'Value support adds 45be7610383 [Ada] More intuitive names in sanity-checking of derived types adds 7e650bf84bf [Ada] Add contract to Ada.Task_Identification.Activation_Is [...] adds 76bbe3972ba [Ada] Proof of Interfaces.C with SPARK adds 28acd56a7a6 [Ada] vx7r2cert/light-tasking-rtp: undefined refs on ppc/ppc64 adds e2e877266de [Ada] Remove duplicated condition in warnings about read-be [...] adds 1fde9333dc3 [Ada] Refactor nested loops in warning on unassigned out parameter adds ea7f9e05302 [Ada] Simplify iteration over record components adds eccc7c8cbfd [Ada] Don't allow entry in implicit with chain to be ghost adds d43fbe0151b [Ada] Remove extra space after assignment symbol adds a83c4eea271 [Ada] Split spec and body of expression function with Subpr [...] adds 5ae5ba7ab10 [Ada] Separate building of equality from other dispatching [...] adds eca89ac6e73 [Ada] Enable expansion of dispatching equality for GNATprove adds 8decef40009 [Ada] Enhance freezing code for instantiations adds aa937f2cdb8 [Ada] Inline all calls in Ada.Task_Identification adds b045f2f2205 [Ada] Use bracket aggregates in Ada2022 adds ec9c3bd5d2d [Ada] Cleanups related to expansion of dispatching primitives adds e4b5ab01946 [Ada] Cleanup insertion of single freezing actions adds 167be0845e5 [Ada] Cleanup detection of suspension objects adds 3a54dfa801a [Ada] Proof of support units for 'Width on signed integers adds ce79e7e24ac [Ada] Add pragma Annotate for CodePeer analysis adds b3f89a45100 [Ada] Amend proof of System.Arith_Double to remove justifications adds 5a35fe64c7a [Ada] Fix obsolete array aggregate warning being triggered [...] adds 544b30f81e5 [Ada] Reset internal flags for -gnatD and -gnatG adds b5e57389c51 [Ada] Proof of System.Arith_32 for double arithmetic on 32bits adds 298339effd4 [Ada] Fix oversight in minor cleanup adds 9e10b7002ac [Ada] Invalid memory access on finalization of class-wide type adds 5a11ffadf58 [Ada] Fix packing for array component with discriminated part adds 31a6895f4c2 [Ada] Do not back-annotate maximum size for limited types adds 96d9ca7053c [Ada] Remove obsolete a-assert adds c9dd01314d8 [Ada] Add warning in comment about files copied from libgnat adds d08236359eb rs6000: Enable new built-in support, with test suite and al [...] adds b5a568683f7 libstdc++: Restore unconditional atomic load in COW std::string adds e2e98f524fd libstdc++: Remove broken std::allocator base classes [PR103340] adds acf4fe96f12 libstdc++: Allow exception classes to move fully-dynamic strings adds cd47cd4b5eb [PR103437] Make backup code for overflow conditional adds 38a0ee2649e analyzer: add regression test for leak false +ve [PR103526] adds 2835977f846 doc: Remove references to FreeBSD 1 and 2 adds 22a98240932 Darwin: Rewrite host PCH support [PR 55610]. adds 25abbb92496 [PATCH v2] configure: define TARGET_LIBC_GNUSTACK on musl adds c841dc0a4dd Adjust CPP_FOR_BUILD adds ea6ef320b0d Daily bump. adds 711084c9450 build: Implement --with-multilib-list for avr target adds 66e157188bd gcc: Fix "argument list too long" from install-plugins adds d8282345435 [Committed] New testcase for C++/71792, bitfields and auto adds 31c200c6e11 Make sure that we get unique test names if several DejaGnu [...] adds 6262e3a22b3 fortran: Fix setting of array lower bound for named arrays adds fe7c3ecff1f pch: Add support for PCH for relocatable executables [PR71934] adds 7e71909af2c x86: Speed up target attribute handling by using a cache adds 97ffef35532 testsuite: Fix up pr103456.c testcase [PR103456] adds f7854b90897 Add TARGET_IFUNC_REF_LOCAL_OK adds 06f2e7d49fc sve: combine nested if predicates adds add31efdc7b RISC-V: Add option defines for Scalar Cryptography adds 0962bff477a RISC-V: Add implied defines of Zk, Zkn and Zks adds 37fbf9175b2 x86: Scan leal in PR target/83782 tests for x32 adds 987baa7444a rs6000: Fix use of wrong enum for built-in function code adds 654cd743c88 x86: Add -mmove-max=bits and -mstore-max=bits adds abd7712f91c c++: Fix for decltype(auto) and parenthesized expr [PR103403] adds f46d32dd29b Fortran: improve checking of array specifications adds d81722ee16e rs6000: testsuite: Add rop_ok effective-target function adds cff7879a381 rs6000: Fix up flag_shrink_wrap handling in presence of -mr [...] adds 7bfe82e5a85 Fix typos in libstdc++-v3/ChangeLog adds f78eaffd153 c++: avoid redundant scope in diagnostics adds bf548ce3e67 libstdc++: Simplify emplace member functions in _Rb_tree adds 03a9bd059b4 Daily bump. adds e096e2cfe9f testsuite: powerpc/vec_reve_1.c requires VSX. adds daca416fc28 [PR103028] test ifcvt trap_if seq more strictly after reload adds 55dfce4d5cb libcpp: Fix up handling of deferred pragmas [PR102432] adds c57c910c945 c++: Allow indeterminate unsigned char or std::byte in bit_ [...] adds c060e5c49c4 i386, ipa-modref: Comment spelling fix adds b09af56214e libgomp.texi: Update OMP_PLACES adds 87710ec7b21 libstdc++: Initialize member in std::match_results [PR103549] adds 689407ef916 Fortran/OpenMP: Support most of 5.1 atomic extensions adds 066b3258bb1 c++: Add fixed test [PR93614] adds 70e4cb66c1a Daily bump. adds 8d4ef2299cb aix: Move AIX math builtins before new builtin machinery. adds c9419faef0b Objective-C, NeXT: Reorganise meta-data declarations. adds b880d1514c1 Daily bump. adds 45116f34205 RISC-V: jal cannot refer to a default visibility symbol for [...] adds d1011a41efd Prefer INT_SSE_REGS for SSE_FLOAT_MODE_P in preferred_reloa [...] adds c2c843849a3 cse: Make sure duplicate elements are not entered into the [...] adds 4dc6d192225 avr: Fix AVR build [PR71934] adds ee01694151e tree-optimization/103544 - SLP reduction chain as SLP reduc [...] adds 11013814fc8 contrib: Filter out -Wreturn-type in fold-const-call.c. adds 0dc77a0c494 tree-optimization/103581 - fix masked gather on x86 adds 70b043845d7 libsanitizer: Use SSE to save and restore XMM registers adds 2a20407bacb libsanitizer: Update LOCAL_PATCHES adds ed4a5f571bd Add BB option for outgoing_edge_range_p and may_reocmpute_p. adds 14dc5b71d7e Use dominators to reduce cache-flling. adds d27b7e69872 ranger: Optimise irange_union adds 63c59f054a5 ranger: Add shortcuts for single-successor blocks adds bd0a61befcb bpf: mark/remove unused arguments and remove an unused function adds 7754fddd015 MAINTAINERS: Add myself to write after approval and DCO sections. adds 325c6163a33 rs6000: Fix errant "vector" instead of "__vector" adds c9543403c19 analyzer: fix equivalence class state purging [PR103533] adds 3a580f967e5 Daily bump. adds 3d9e6767939 Improve AutoFDO count propagation algorithm adds 30a08286e67 MIPS: R6: load/store can process unaligned address adds ba6bb287f03 Revert "libstdc++: Fix ctype changed after newlib update." adds c93e704b9e0 Fix hash_map::traverse overload adds 6e8a31275fd tree-optimization/103596 - fix missed propagation into switches adds 7ef68c37b3a x86: Check FUNCTION_DECL before calling cgraph_node::get adds 3a2257e6b3f c++: Fix for decltype and bit-fields [PR95009] adds 8e836af61b7 Fix --help -Q output adds f47662204de Fortran: add check for type of upper bound in case range adds 652c2873620 Fortran: catch failed simplification of bad stride expression adds 4394fd67264 testsuite: Fix check_effective_target_rop_ok [PR103556, PR103586] adds cf2cd61dce4 c++: Fix decltype-bitfield1.C on i?86 adds 9eec77c0df9 Fortran: perform array subscript checks only for valid INTE [...] adds 1f6b0003b66 Daily bump. adds 0485ce9128f [PR103149] detach values through mem only if general regs won't do adds 691f05c2197 Add combine splitter to transform vpcmpeqd/vpxor/vblendvps [...] adds 13b6c7639cf dwarf: Multi-register CFI address support. adds dbf8bd3c2f2 libstdc++: Skip atomic instructions in shared_ptr when both [...] adds 0ab29cf0bb6 openmp: Improve OpenMP target support for C++ (PR92120) adds d3d44a00e51 nvptx: Add test-case gcc.target/nvptx/exttrunc-1.c adds 6b49d50a274 nvptx: Use cvt to perform sign-extension of truncation adds 6c0399378e7 OpenMP 5.0: Remove array section base-pointer mapping seman [...] adds 60147c2b7d9 testsuite: Use attribute "noipa" in sibcall tests adds e7fac1e1a58 libstdc++: [_GLIBCXX_DEBUG] Enhance std::erase_if for vector/deque adds df704591a2c Use -fopt-info in unswitch pass. adds 5f7cdea34e1 Fortran: dimensions of an array have to be non-negative adds e4c2b55b4ce bpf: avoid potential NULL pointer dereference adds dda85bc274e pru: Fixup flags for .pru_irq_map section adds 1c1563fb8ff Darwin: Amend pie options when linking mdynamic-no-pic. adds 7add7f7bb3d libgcc, Darwin: Build a libgcc_s.1 for backwards compatibility. adds b77968a7053 Fortran: avoid NULL pointer dereference on missing or bad d [...] adds c15aa46cca0 libstdc++: Fix undefined shift when _Atomic_word is 64-bit adds 0fb57034770 d: Merge upstream dmd 568496d5b, druntime 178c44ff, phobos [...] adds 641ff2196fe Daily bump. adds 2bff91f3b4e [PR103024,PR103530] support throwing compares and non-boole [...] adds 50e8b0c9bca [PR103302] skip multi-word pre-move clobber during lra adds af93386ffc1 [PR103097] tolerate reg-stack cross-block malformed asms adds 5791bf7a0a7 D: fix UBSAN new 7a815907576 Merge branch 'master' into devel/sphinx
The 1 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "adds" were already present in the repository and have only been added to this reference.
Summary of changes: ChangeLog | 10 + MAINTAINERS | 2 + configure | 2 +- configure.ac | 2 +- contrib/ChangeLog | 4 + contrib/filter-clang-warnings.py | 1 + gcc/ChangeLog | 681 ++++++++++++++++++ gcc/DATESTAMP | 2 +- gcc/Makefile.in | 2 +- gcc/ada/ChangeLog | 760 +++++++++++++++++++++ gcc/ada/Makefile.rtl | 2 +- gcc/ada/contracts.adb | 2 - ...ard_and_implementation_defined_restrictions.rst | 2 +- gcc/ada/exp_aggr.adb | 12 +- gcc/ada/exp_ch13.adb | 2 +- gcc/ada/exp_ch13.ads | 3 + gcc/ada/exp_ch3.adb | 374 +++++----- gcc/ada/exp_ch3.ads | 28 + gcc/ada/exp_ch6.adb | 2 +- gcc/ada/exp_imgv.adb | 3 +- gcc/ada/exp_spark.adb | 289 +++++++- gcc/ada/exp_util.adb | 1 - gcc/ada/freeze.adb | 11 +- gcc/ada/gcc-interface/Make-lang.in | 4 + gcc/ada/gcc-interface/a-assert.adb | 52 -- gcc/ada/gcc-interface/a-assert.ads | 50 -- gcc/ada/gcc-interface/decl.c | 26 +- gcc/ada/gcc-interface/gigi.h | 7 +- gcc/ada/gcc-interface/trans.c | 30 +- gcc/ada/gcc-interface/utils.c | 17 +- gcc/ada/gen_il-fields.ads | 2 + gcc/ada/gen_il-gen-gen_nodes.adb | 2 + gcc/ada/gen_il-gen.adb | 6 +- gcc/ada/gnat_rm.texi | 2 +- gcc/ada/libgnarl/a-taside.ads | 2 + gcc/ada/libgnarl/s-interr.adb | 12 +- gcc/ada/libgnarl/s-intman.ads | 4 +- gcc/ada/libgnarl/s-intman__posix.adb | 6 +- gcc/ada/libgnarl/s-mudido__affinity.adb | 6 +- gcc/ada/libgnarl/s-osinte__linux.ads | 8 +- gcc/ada/libgnarl/s-taprop__linux.adb | 8 +- gcc/ada/libgnarl/s-tasdeb.adb | 2 +- gcc/ada/libgnarl/s-tasdeb.ads | 2 +- gcc/ada/libgnarl/s-tasinf__linux.ads | 4 +- gcc/ada/libgnarl/s-taskin.adb | 2 +- gcc/ada/libgnarl/s-taskin.ads | 2 +- gcc/ada/libgnarl/s-tasren.adb | 16 +- gcc/ada/libgnarl/s-tassta.adb | 2 +- gcc/ada/libgnarl/s-tataat.adb | 2 +- gcc/ada/libgnarl/s-tpobop.adb | 12 +- gcc/ada/libgnat/a-calend.adb | 6 +- gcc/ada/libgnat/a-calend.ads | 2 +- gcc/ada/libgnat/a-cfinve.adb | 4 +- gcc/ada/libgnat/a-chahan.adb | 4 +- gcc/ada/libgnat/a-chtgbo.adb | 2 +- gcc/ada/libgnat/a-cobove.adb | 8 +- gcc/ada/libgnat/a-cofove.adb | 4 +- gcc/ada/libgnat/a-cohata.ads | 2 +- gcc/ada/libgnat/a-coinve.adb | 6 +- gcc/ada/libgnat/a-convec.adb | 12 +- gcc/ada/libgnat/a-coprnu.ads | 4 +- gcc/ada/libgnat/a-direct.adb | 14 +- gcc/ada/libgnat/a-direct.ads | 4 +- gcc/ada/libgnat/a-direio.adb | 2 +- gcc/ada/libgnat/a-nbnbre.adb | 10 +- gcc/ada/libgnat/a-ngrear.adb | 4 +- gcc/ada/libgnat/a-stbubo.adb | 6 +- gcc/ada/libgnat/a-stbufo.adb | 2 +- gcc/ada/libgnat/a-stbuun.adb | 6 +- gcc/ada/libgnat/a-stbuut.adb | 8 +- gcc/ada/libgnat/a-stmaco.ads | 44 +- gcc/ada/libgnat/a-strbou.ads | 38 +- gcc/ada/libgnat/a-strfix.ads | 6 +- gcc/ada/libgnat/a-strmap.adb | 4 +- gcc/ada/libgnat/a-strmap.ads | 2 +- gcc/ada/libgnat/a-strsup.adb | 36 +- gcc/ada/libgnat/a-strsup.ads | 36 +- gcc/ada/libgnat/a-sttebu.adb | 4 +- gcc/ada/libgnat/a-stuten.ads | 2 +- gcc/ada/libgnat/a-stwibo.ads | 4 +- gcc/ada/libgnat/a-stwima.ads | 3 +- gcc/ada/libgnat/a-stwisu.adb | 32 +- gcc/ada/libgnat/a-stzbou.ads | 6 +- gcc/ada/libgnat/a-stzmap.ads | 3 +- gcc/ada/libgnat/a-stzsup.adb | 32 +- gcc/ada/libgnat/a-swmwco.ads | 60 +- gcc/ada/libgnat/a-szmzco.ads | 60 +- gcc/ada/libgnat/a-teioed.adb | 4 +- gcc/ada/libgnat/a-wtedit.adb | 4 +- gcc/ada/libgnat/a-ztedit.adb | 4 +- gcc/ada/libgnat/g-arrspl.adb | 16 +- gcc/ada/libgnat/g-catiio.adb | 4 +- gcc/ada/libgnat/g-cgideb.adb | 4 +- gcc/ada/libgnat/g-comlin.adb | 8 +- gcc/ada/libgnat/g-comlin.ads | 4 +- gcc/ada/libgnat/g-debpoo.adb | 4 +- gcc/ada/libgnat/g-expect.adb | 10 +- gcc/ada/libgnat/g-forstr.adb | 6 +- gcc/ada/libgnat/g-memdum.adb | 4 +- gcc/ada/libgnat/g-rannum.adb | 2 +- gcc/ada/libgnat/g-sechas.adb | 6 +- gcc/ada/libgnat/g-sehamd.ads | 2 +- gcc/ada/libgnat/g-sehash.ads | 4 +- gcc/ada/libgnat/g-sercom.ads | 4 +- gcc/ada/libgnat/g-sercom__linux.adb | 12 +- gcc/ada/libgnat/g-shsh32.ads | 12 +- gcc/ada/libgnat/g-shsh64.ads | 12 +- gcc/ada/libgnat/g-socket.adb | 30 +- gcc/ada/libgnat/g-socket.ads | 40 +- gcc/ada/libgnat/g-socpol.adb | 16 +- gcc/ada/libgnat/g-socpol.ads | 8 +- gcc/ada/libgnat/g-sothco.ads | 12 +- gcc/ada/libgnat/g-spipat.adb | 4 +- gcc/ada/libgnat/i-c.adb | 472 ++++++++++++- gcc/ada/libgnat/i-c.ads | 420 +++++++++++- gcc/ada/libgnat/i-cobol.ads | 8 +- gcc/ada/libgnat/i-pacdec.adb | 4 +- gcc/ada/libgnat/i-pacdec.ads | 4 +- gcc/ada/libgnat/s-aridou.adb | 243 +++++-- gcc/ada/libgnat/s-arit32.adb | 449 +++++++++++- gcc/ada/libgnat/s-arit32.ads | 68 +- gcc/ada/libgnat/s-arit64.ads | 3 +- gcc/ada/libgnat/s-bitops.adb | 4 +- gcc/ada/libgnat/s-crc32.adb | 4 +- gcc/ada/libgnat/s-gearop.adb | 4 +- gcc/ada/libgnat/s-genbig.adb | 30 +- gcc/ada/libgnat/s-htable.adb | 2 +- gcc/ada/libgnat/s-imgboo.adb | 12 +- gcc/ada/libgnat/s-imgboo.ads | 26 +- gcc/ada/libgnat/s-imgcha.adb | 8 +- gcc/ada/libgnat/s-os_lib.adb | 2 - gcc/ada/libgnat/s-powflt.ads | 42 +- gcc/ada/libgnat/s-powlfl.ads | 90 +-- gcc/ada/libgnat/s-powllf.ads | 110 +-- gcc/ada/libgnat/s-rannum.adb | 14 +- gcc/ada/libgnat/s-rannum.ads | 2 +- gcc/ada/libgnat/s-regexp.adb | 24 +- gcc/ada/libgnat/s-regpat.adb | 20 +- gcc/ada/libgnat/s-regpat.ads | 4 +- gcc/ada/libgnat/s-scaval__128.adb | 8 +- gcc/ada/libgnat/s-statxd.adb | 22 +- gcc/ada/libgnat/s-stausa.adb | 12 +- gcc/ada/libgnat/s-strops.adb | 2 +- gcc/ada/libgnat/s-valboo.adb | 18 +- gcc/ada/libgnat/s-valboo.ads | 54 +- gcc/ada/libgnat/s-valrea.adb | 12 +- gcc/ada/libgnat/s-valuer.adb | 5 +- gcc/ada/libgnat/s-valueu.adb | 2 +- gcc/ada/libgnat/s-valuti.adb | 166 ++++- gcc/ada/libgnat/s-valuti.ads | 265 ++++++- gcc/ada/libgnat/s-wchcon.ads | 8 +- gcc/ada/libgnat/s-widint.ads | 15 +- gcc/ada/libgnat/s-widlli.ads | 15 +- gcc/ada/libgnat/s-widllli.ads | 15 +- gcc/ada/libgnat/s-widlllu.ads | 11 + gcc/ada/libgnat/s-widllu.ads | 11 + gcc/ada/libgnat/s-widthi.adb | 133 ++++ gcc/ada/libgnat/s-widthi.ads | 7 +- gcc/ada/libgnat/s-widthu.adb | 54 +- gcc/ada/libgnat/s-widthu.ads | 7 +- gcc/ada/libgnat/s-widuns.ads | 11 + gcc/ada/par-ch4.adb | 6 +- gcc/ada/rtsfind.adb | 14 +- gcc/ada/rtsfind.ads | 2 + gcc/ada/scng.adb | 4 +- gcc/ada/sem_aggr.adb | 24 +- gcc/ada/sem_ch12.adb | 276 ++++---- gcc/ada/sem_ch13.adb | 28 +- gcc/ada/sem_ch3.adb | 51 +- gcc/ada/sem_ch6.adb | 4 +- gcc/ada/sem_ch8.adb | 1 - gcc/ada/sem_util.adb | 41 +- gcc/ada/sem_util.ads | 6 +- gcc/ada/sem_warn.adb | 69 +- gcc/ada/snames.ads-tmpl | 1 - gcc/ada/sprint.adb | 5 + ...ink.spec => vxworks7-cert-rtp-link__ppcXX.spec} | 2 +- gcc/analyzer/ChangeLog | 19 + gcc/analyzer/constraint-manager.cc | 149 +++- gcc/analyzer/constraint-manager.h | 2 + gcc/analyzer/region-model-reachability.cc | 13 + gcc/attribs.c | 2 +- gcc/attribs.h | 1 + gcc/auto-profile.c | 20 +- gcc/c-family/ChangeLog | 12 + gcc/c-family/c-pch.c | 15 - gcc/c-family/c.opt | 4 + gcc/c/ChangeLog | 24 + gcc/c/c-parser.c | 57 +- gcc/c/c-typeck.c | 102 ++- gcc/common.opt | 8 + gcc/common/config/riscv/riscv-common.c | 38 +- gcc/config.gcc | 7 + gcc/config/aarch64/aarch64-protos.h | 1 + gcc/config/aarch64/aarch64-simd.md | 65 +- gcc/config/aarch64/aarch64.c | 12 + gcc/config/avr/avr.c | 9 +- gcc/config/avr/genmultilib.awk | 16 + gcc/config/avr/t-avr | 1 + gcc/config/bpf/bpf.c | 27 +- gcc/config/darwin.c | 2 +- gcc/config/darwin.h | 9 +- gcc/config/host-darwin.c | 191 ++++-- gcc/config/i386/i386-expand.c | 15 +- gcc/config/i386/i386-options.c | 101 ++- gcc/config/i386/i386-options.h | 6 +- gcc/config/i386/i386-protos.h | 1 + gcc/config/i386/i386.c | 38 +- gcc/config/i386/i386.h | 20 +- gcc/config/i386/i386.md | 10 +- gcc/config/i386/i386.opt | 8 + gcc/config/i386/sse.md | 197 +++++- gcc/config/i386/x86-tune.def | 14 +- gcc/config/mips/mips.h | 6 +- gcc/config/mips/mips.md | 10 + gcc/config/mips/mips.opt | 4 + gcc/config/nvptx/nvptx.md | 26 + gcc/config/pa/pa.c | 4 +- gcc/config/pru/pru.c | 19 + gcc/config/riscv/arch-canonicalize | 16 +- gcc/config/riscv/riscv-opts.h | 22 + gcc/config/riscv/riscv.opt | 3 + gcc/config/rs6000/altivec.h | 518 ++------------ gcc/config/rs6000/rs6000-builtin-new.def | 30 +- gcc/config/rs6000/rs6000-c.c | 11 +- gcc/config/rs6000/rs6000-call.c | 64 +- gcc/config/rs6000/rs6000-gen-builtins.c | 2 +- gcc/config/rs6000/rs6000-internal.h | 3 + gcc/config/rs6000/rs6000.c | 43 +- gcc/config/rs6000/xmmintrin.h | 2 +- gcc/config/s390/s390.c | 2 +- gcc/config/vxworks.h | 2 +- gcc/configure | 7 +- gcc/configure.ac | 5 +- gcc/coverage.c | 3 +- gcc/cp/ChangeLog | 92 +++ gcc/cp/constexpr.c | 140 +++- gcc/cp/cp-gimplify.c | 3 +- gcc/cp/cp-tree.h | 3 + gcc/cp/cxx-pretty-print.c | 4 +- gcc/cp/error.c | 10 +- gcc/cp/parser.c | 123 ++-- gcc/cp/pt.c | 21 +- gcc/cp/semantics.c | 737 ++++++++++++++++++-- gcc/cp/tree.c | 12 + gcc/cp/typeck.c | 14 +- gcc/cse.c | 7 +- gcc/d/ChangeLog | 74 ++ gcc/d/Make-lang.in | 42 +- gcc/d/d-builtins.cc | 7 +- gcc/d/d-codegen.cc | 36 +- gcc/d/d-frontend.cc | 11 +- gcc/d/d-frontend.h | 2 +- gcc/d/d-gimplify.cc | 65 +- gcc/d/d-lang.cc | 18 +- gcc/d/d-spec.cc | 18 +- gcc/d/d-tree.h | 9 +- gcc/d/decl.cc | 155 ++--- gcc/d/dmd/MERGE | 2 +- gcc/d/dmd/README.md | 18 +- gcc/d/dmd/VERSION | 2 +- gcc/d/dmd/aggregate.d | 81 ++- gcc/d/dmd/aggregate.h | 17 +- gcc/d/dmd/aliasthis.d | 23 +- gcc/d/dmd/arrayop.d | 2 +- gcc/d/dmd/attrib.d | 22 +- gcc/d/dmd/blockexit.d | 4 +- gcc/d/dmd/builtin.d | 2 +- gcc/d/dmd/chkformat.d | 8 +- gcc/d/dmd/clone.d | 139 ++-- gcc/d/dmd/common/README.md | 7 + gcc/d/dmd/{root => common}/file.d | 522 ++++---------- gcc/d/dmd/{root => common}/outbuffer.d | 243 ++++++- gcc/d/dmd/{root => common}/outbuffer.h | 10 +- gcc/d/dmd/common/string.d | 209 ++++++ gcc/d/dmd/cond.d | 3 +- gcc/d/dmd/cparse.d | 225 +++++- gcc/d/dmd/cppmangle.d | 15 +- gcc/d/dmd/ctfeexpr.d | 5 + gcc/d/dmd/dcast.d | 136 +++- gcc/d/dmd/dclass.d | 23 +- gcc/d/dmd/declaration.d | 161 ++++- gcc/d/dmd/declaration.h | 9 +- gcc/d/dmd/dinterpret.d | 46 +- gcc/d/dmd/dmacro.d | 2 +- gcc/d/dmd/dmangle.d | 53 +- gcc/d/dmd/dmodule.d | 142 +--- gcc/d/dmd/doc.d | 28 +- gcc/d/dmd/dscope.d | 15 +- gcc/d/dmd/dstruct.d | 39 +- gcc/d/dmd/dsymbol.d | 110 ++- gcc/d/dmd/dsymbol.h | 20 +- gcc/d/dmd/dsymbolsem.d | 167 +++-- gcc/d/dmd/dtemplate.d | 41 +- gcc/d/dmd/dtoh.d | 31 +- gcc/d/dmd/dversion.d | 2 +- gcc/d/dmd/expression.d | 104 ++- gcc/d/dmd/expression.h | 55 +- gcc/d/dmd/expressionsem.d | 426 ++++++++---- gcc/d/dmd/file_manager.d | 301 ++++++++ gcc/d/dmd/{root/root.h => file_manager.h} | 17 +- gcc/d/dmd/func.d | 76 ++- gcc/d/dmd/globals.d | 27 +- gcc/d/dmd/globals.h | 23 +- gcc/d/dmd/gluelayer.d | 1 + gcc/d/dmd/hdrgen.d | 20 +- gcc/d/dmd/iasmgcc.d | 2 +- gcc/d/dmd/id.d | 11 + gcc/d/dmd/identifier.d | 2 +- gcc/d/dmd/importc.d | 171 +++++ gcc/d/dmd/init.d | 2 +- gcc/d/dmd/initsem.d | 128 +++- gcc/d/dmd/intrange.h | 177 ----- gcc/d/dmd/json.d | 6 +- gcc/d/dmd/lambdacomp.d | 2 +- gcc/d/dmd/lexer.d | 237 ++++++- gcc/d/dmd/lexer.h | 75 -- gcc/d/dmd/macro.h | 38 -- gcc/d/dmd/mars.h | 93 --- gcc/d/dmd/module.h | 2 +- gcc/d/dmd/mtype.d | 211 +++--- gcc/d/dmd/mtype.h | 4 + gcc/d/dmd/ob.d | 2 +- gcc/d/dmd/objc.d | 2 +- gcc/d/dmd/opover.d | 43 +- gcc/d/dmd/optimize.d | 2 + gcc/d/dmd/parse.d | 12 +- gcc/d/dmd/parse.h | 192 ------ gcc/d/dmd/printast.d | 2 +- gcc/d/dmd/root/README.md | 1 - gcc/d/dmd/root/aav.h | 22 - gcc/d/dmd/root/checkedint.h | 30 - gcc/d/dmd/root/file.d | 529 +------------- gcc/d/dmd/root/filename.d | 102 +-- gcc/d/dmd/root/hash.h | 76 --- gcc/d/dmd/root/rootobject.d | 2 +- gcc/d/dmd/root/speller.h | 16 - gcc/d/dmd/root/stringtable.h | 56 -- gcc/d/dmd/safe.d | 2 +- gcc/d/dmd/semantic2.d | 4 +- gcc/d/dmd/semantic3.d | 18 +- gcc/d/dmd/statement.d | 8 +- gcc/d/dmd/statement.h | 6 +- gcc/d/dmd/statement_rewrite_walker.h | 172 ----- gcc/d/dmd/statementsem.d | 160 ++--- gcc/d/dmd/staticcond.d | 2 +- gcc/d/dmd/target.d | 3 +- gcc/d/dmd/target.h | 3 +- gcc/d/dmd/template.h | 10 +- gcc/d/dmd/tokens.d | 2 +- gcc/d/dmd/tokens.h | 1 + gcc/d/dmd/traits.d | 33 +- gcc/d/dmd/typesem.d | 48 +- gcc/d/dmd/typinf.d | 238 ++++++- gcc/d/dmd/utf.h | 117 ---- gcc/d/dmd/utils.d | 2 +- gcc/d/expr.cc | 12 +- gcc/d/gdc.texi | 9 + gcc/d/lang.opt | 4 + gcc/d/modules.cc | 2 +- gcc/d/types.cc | 19 +- gcc/doc/gty.texi | 9 + gcc/doc/install.texi | 4 - gcc/doc/invoke.texi | 51 +- gcc/doc/tm.texi | 5 + gcc/doc/tm.texi.in | 2 + gcc/dwarf2cfi.c | 264 +++++-- gcc/dwarf2out.c | 54 +- gcc/dwarf2out.h | 36 +- gcc/expr.c | 2 +- gcc/file-prefix-map.c | 17 + gcc/file-prefix-map.h | 2 + gcc/fold-const.c | 26 +- gcc/fold-const.h | 1 + gcc/fortran/ChangeLog | 74 ++ gcc/fortran/array.c | 19 +- gcc/fortran/dump-parse-tree.c | 18 + gcc/fortran/expr.c | 25 + gcc/fortran/frontend-passes.c | 4 + gcc/fortran/gfortran.h | 4 +- gcc/fortran/match.c | 9 + gcc/fortran/openmp.c | 578 ++++++++++------ gcc/fortran/parse.c | 19 +- gcc/fortran/resolve.c | 9 +- gcc/fortran/symbol.c | 3 + gcc/fortran/trans-openmp.c | 35 +- gcc/fortran/trans-stmt.c | 17 +- gcc/gcc.c | 6 +- gcc/gengtype-state.c | 32 + gcc/gengtype.c | 39 +- gcc/gengtype.h | 6 + gcc/ggc-common.c | 52 ++ gcc/ggc.h | 4 + gcc/gimple-harden-conditionals.cc | 141 +++- gcc/gimple-range-cache.cc | 73 ++ gcc/gimple-range-cache.h | 1 + gcc/gimple-range-edge.cc | 3 + gcc/gimple-range-gori.cc | 77 ++- gcc/gimple-range-gori.h | 6 +- gcc/gimple-range-path.cc | 23 +- gcc/gimple-range-path.h | 2 - gcc/gimple-range.cc | 29 +- gcc/gimplify.c | 344 ++++++++-- gcc/hash-map.h | 6 +- gcc/ifcvt.c | 4 +- gcc/internal-fn.c | 17 + gcc/ipa-modref-tree.c | 2 +- gcc/ira-color.c | 31 +- gcc/lto-opts.c | 1 + gcc/match.pd | 22 + gcc/objc/ChangeLog | 8 + gcc/objc/objc-next-metadata-tags.h | 2 + gcc/objc/objc-next-runtime-abi-01.c | 9 +- gcc/objc/objc-next-runtime-abi-02.c | 9 +- gcc/objc/objc-runtime-shared-support.c | 9 +- gcc/omp-low.c | 2 + gcc/opt-functions.awk | 2 +- gcc/opts-common.c | 21 +- gcc/opts-global.c | 4 + gcc/opts.c | 2 + gcc/opts.h | 4 +- gcc/output.h | 14 +- gcc/predict.c | 2 +- gcc/profile-count.c | 48 +- gcc/profile-count.h | 6 + gcc/profile.c | 4 + gcc/reg-stack.c | 5 +- gcc/target.def | 8 + gcc/testsuite/ChangeLog | 450 ++++++++++++ .../c-c++-common/goacc/deep-copy-arrayofstruct.c | 5 +- gcc/testsuite/c-c++-common/goacc/pr102432.c | 23 + gcc/testsuite/c-c++-common/gomp/pr102432.c | 23 + .../c-c++-common/gomp/target-enter-data-1.c | 24 + .../c-c++-common/gomp/target-implicit-map-2.c | 52 ++ gcc/testsuite/g++.dg/cpp0x/constexpr-fp-except1.C | 4 + gcc/testsuite/g++.dg/cpp0x/decltype-bitfield1.C | 65 ++ gcc/testsuite/g++.dg/cpp0x/decltype-bitfield2.C | 18 + gcc/testsuite/g++.dg/cpp1y/decltype-auto2.C | 12 + gcc/testsuite/g++.dg/cpp1y/decltype-auto3.C | 12 + gcc/testsuite/g++.dg/cpp1y/decltype-auto4.C | 65 ++ gcc/testsuite/g++.dg/cpp1z/constexpr-if36.C | 19 + gcc/testsuite/g++.dg/cpp1z/decomp-decltype1.C | 28 + gcc/testsuite/g++.dg/cpp23/concepts-err1.C | 6 + gcc/testsuite/g++.dg/cpp2a/bit-cast11.C | 63 ++ gcc/testsuite/g++.dg/cpp2a/bit-cast12.C | 68 ++ gcc/testsuite/g++.dg/cpp2a/bit-cast13.C | 63 ++ gcc/testsuite/g++.dg/cpp2a/bit-cast14.C | 75 ++ gcc/testsuite/g++.dg/diagnostic/scope1.C | 12 + gcc/testsuite/g++.dg/ext/integer-pack5.C | 29 + gcc/testsuite/g++.dg/gomp/target-3.C | 36 + gcc/testsuite/g++.dg/gomp/target-lambda-1.C | 94 +++ gcc/testsuite/g++.dg/gomp/target-lambda-2.C | 35 + gcc/testsuite/g++.dg/gomp/target-this-1.C | 33 + gcc/testsuite/g++.dg/gomp/target-this-2.C | 49 ++ gcc/testsuite/g++.dg/gomp/target-this-3.C | 105 +++ gcc/testsuite/g++.dg/gomp/target-this-4.C | 107 +++ gcc/testsuite/g++.dg/gomp/target-this-5.C | 34 + gcc/testsuite/g++.dg/gomp/this-2.C | 24 +- gcc/testsuite/g++.dg/pr103024.C | 12 + gcc/testsuite/g++.dg/pr103530.C | 27 + gcc/testsuite/g++.dg/template/lookup18.C | 17 + gcc/testsuite/g++.dg/torture/pr71792.C | 42 ++ gcc/testsuite/g++.target/i386/pr100738-1.C | 19 + gcc/testsuite/gcc.dg/analyzer/leak-3.c | 41 ++ gcc/testsuite/gcc.dg/analyzer/pr103526.c | 50 ++ gcc/testsuite/gcc.dg/bic-bitmask-18.c | 2 +- gcc/testsuite/gcc.dg/fold-condneg-1.c | 59 ++ gcc/testsuite/gcc.dg/fold-condneg-2.c | 11 + gcc/testsuite/gcc.dg/fold-condnot-1.c | 84 +++ gcc/testsuite/gcc.dg/gomp/target-3.c | 16 + gcc/testsuite/gcc.dg/loop-unswitch-1.c | 4 +- gcc/testsuite/gcc.dg/loop-unswitch-2.c | 5 +- gcc/testsuite/gcc.dg/loop-unswitch-3.c | 7 +- gcc/testsuite/gcc.dg/loop-unswitch-4.c | 1 - gcc/testsuite/gcc.dg/loop-unswitch-5.c | 2 +- gcc/testsuite/gcc.dg/pr101145-1.c | 12 + gcc/testsuite/gcc.dg/pr101145-2.c | 15 + gcc/testsuite/gcc.dg/pr103028.c | 21 + .../compile/pr37433.c => gcc.dg/pr103594.c} | 3 +- gcc/testsuite/gcc.dg/sibcall-1.c | 2 +- gcc/testsuite/gcc.dg/sibcall-10.c | 6 +- gcc/testsuite/gcc.dg/sibcall-2.c | 2 +- gcc/testsuite/gcc.dg/sibcall-3.c | 6 +- gcc/testsuite/gcc.dg/sibcall-4.c | 6 +- gcc/testsuite/gcc.dg/sibcall-9.c | 6 +- gcc/testsuite/gcc.dg/torture/pr103596.c | 36 + gcc/testsuite/gcc.dg/tree-prof/init-array.c | 43 ++ gcc/testsuite/gcc.dg/tree-ssa/nonzero-1.c | 5 +- gcc/testsuite/gcc.dg/tree-ssa/nonzero-1a.c | 11 + gcc/testsuite/gcc.dg/ubsan/pr103456.c | 2 +- gcc/testsuite/gcc.dg/vect/pr103517.c | 13 + gcc/testsuite/gcc.dg/vect/pr103544.c | 24 + gcc/testsuite/gcc.dg/vect/pr103581.c | 59 ++ .../gcc.target/aarch64/aapcs64/macro-def.h | 2 +- .../gcc.target/aarch64/advsimd-intrinsics/shrn-1.c | 15 + .../gcc.target/aarch64/advsimd-intrinsics/shrn-2.c | 11 + .../gcc.target/aarch64/advsimd-intrinsics/shrn-3.c | 11 + .../gcc.target/aarch64/advsimd-intrinsics/shrn-4.c | 11 + gcc/testsuite/gcc.target/aarch64/pr103149.c | 14 + .../gcc.target/aarch64/sve/pred-combine-and.c | 18 + gcc/testsuite/gcc.target/i386/avx512fp16-1c.c | 9 +- .../{pieces-memcpy-13.c => pieces-memcpy-17.c} | 2 +- .../{pieces-memcpy-13.c => pieces-memcpy-18.c} | 2 +- .../{pieces-memcpy-10.c => pieces-memcpy-19.c} | 6 +- .../{pieces-memcpy-13.c => pieces-memcpy-20.c} | 4 +- .../{pieces-memcpy-13.c => pieces-memcpy-21.c} | 4 +- .../{pieces-memset-12.c => pieces-memset-45.c} | 2 +- .../{pieces-memset-12.c => pieces-memset-46.c} | 5 +- .../{pieces-memset-12.c => pieces-memset-47.c} | 5 +- .../{pieces-memset-12.c => pieces-memset-48.c} | 5 +- .../{pieces-memset-12.c => pieces-memset-49.c} | 4 +- gcc/testsuite/gcc.target/i386/pr102327-1.c | 9 +- gcc/testsuite/gcc.target/i386/pr102811-1.c | 11 + .../{avx512vl-vcvtps2ph-pr102811.c => pr102811.c} | 0 gcc/testsuite/gcc.target/i386/pr103097.c | 30 + gcc/testsuite/gcc.target/i386/pr103404.c | 32 + gcc/testsuite/gcc.target/i386/pr83782-1.c | 26 + gcc/testsuite/gcc.target/i386/pr83782-2.c | 26 + gcc/testsuite/gcc.target/i386/pr95740.c | 26 + gcc/testsuite/gcc.target/mips/mips.exp | 1 + gcc/testsuite/gcc.target/mips/unaligned-2.c | 53 ++ gcc/testsuite/gcc.target/mips/unaligned-3.c | 53 ++ gcc/testsuite/gcc.target/nvptx/exttrunc-1.c | 20 + gcc/testsuite/gcc.target/nvptx/exttrunc-2.c | 17 + gcc/testsuite/gcc.target/nvptx/exttrunc-3.c | 17 + gcc/testsuite/gcc.target/nvptx/exttrunc-4.c | 17 + gcc/testsuite/gcc.target/nvptx/exttrunc-5.c | 17 + gcc/testsuite/gcc.target/nvptx/exttrunc-6.c | 17 + .../gcc.target/powerpc/bfp/scalar-extract-exp-2.c | 2 +- .../gcc.target/powerpc/bfp/scalar-extract-sig-2.c | 2 +- .../gcc.target/powerpc/bfp/scalar-insert-exp-2.c | 2 +- .../gcc.target/powerpc/bfp/scalar-insert-exp-5.c | 2 +- .../gcc.target/powerpc/bfp/scalar-insert-exp-8.c | 2 +- .../gcc.target/powerpc/bfp/scalar-test-neg-2.c | 2 +- .../gcc.target/powerpc/bfp/scalar-test-neg-3.c | 2 +- .../gcc.target/powerpc/bfp/scalar-test-neg-5.c | 2 +- gcc/testsuite/gcc.target/powerpc/byte-in-set-2.c | 2 +- gcc/testsuite/gcc.target/powerpc/cmpb-2.c | 2 +- gcc/testsuite/gcc.target/powerpc/cmpb-3.c | 2 +- gcc/testsuite/gcc.target/powerpc/cmpb32-2.c | 2 +- .../gcc.target/powerpc/crypto-builtin-2.c | 14 +- .../powerpc/fold-vec-splat-floatdouble.c | 4 +- .../gcc.target/powerpc/fold-vec-splat-longlong.c | 10 +- .../powerpc/fold-vec-splat-misc-invalid.c | 8 +- .../gcc.target/powerpc/int_128bit-runnable.c | 6 +- gcc/testsuite/gcc.target/powerpc/pr101324.c | 17 + .../gcc.target/powerpc/{pr98872.c => pr103127.c} | 4 +- gcc/testsuite/gcc.target/powerpc/pr80315-1.c | 2 +- gcc/testsuite/gcc.target/powerpc/pr80315-2.c | 2 +- gcc/testsuite/gcc.target/powerpc/pr80315-3.c | 2 +- gcc/testsuite/gcc.target/powerpc/pr80315-4.c | 2 +- gcc/testsuite/gcc.target/powerpc/pr88100.c | 12 +- gcc/testsuite/gcc.target/powerpc/pragma_misc9.c | 4 +- gcc/testsuite/gcc.target/powerpc/pragma_power8.c | 2 + gcc/testsuite/gcc.target/powerpc/pragma_power9.c | 3 + gcc/testsuite/gcc.target/powerpc/rop-1.c | 2 +- gcc/testsuite/gcc.target/powerpc/rop-2.c | 2 +- gcc/testsuite/gcc.target/powerpc/rop-3.c | 2 +- gcc/testsuite/gcc.target/powerpc/rop-4.c | 2 +- gcc/testsuite/gcc.target/powerpc/rop-5.c | 2 +- .../powerpc/test_fpscr_drn_builtin_error.c | 4 +- .../powerpc/test_fpscr_rn_builtin_error.c | 12 +- gcc/testsuite/gcc.target/powerpc/vec-gnb-2.c | 2 +- gcc/testsuite/gcc.target/powerpc/vec_reve_1.c | 4 +- .../gcc.target/powerpc/vsu/vec-all-nez-7.c | 2 +- .../gcc.target/powerpc/vsu/vec-any-eqz-7.c | 2 +- .../gcc.target/powerpc/vsu/vec-cmpnez-7.c | 2 +- .../gcc.target/powerpc/vsu/vec-cntlz-lsbb-2.c | 2 +- .../gcc.target/powerpc/vsu/vec-cnttz-lsbb-2.c | 2 +- .../gcc.target/powerpc/vsu/vec-xl-len-13.c | 2 +- .../gcc.target/powerpc/vsu/vec-xst-len-12.c | 2 +- gcc/testsuite/gcc.target/pru/pru_irq_map.c | 8 + gcc/testsuite/gcc.target/riscv/pr103302.c | 47 ++ gcc/testsuite/gdc.test/compilable/b19294.d | 69 ++ gcc/testsuite/gdc.test/compilable/cdcmp.d | 2 +- .../compilable/ddoc_markdown_tables_22285.d | 15 + gcc/testsuite/gdc.test/compilable/dtoh_ignored.d | 5 +- .../gdc.test/compilable/imports/cstuff3.c | 6 - gcc/testsuite/gdc.test/compilable/mixintype2.d | 49 ++ gcc/testsuite/gdc.test/compilable/noreturn1.d | 49 +- gcc/testsuite/gdc.test/compilable/previewall.d | 10 - .../gdc.test/compilable/reinterpretctfe.d | 14 + gcc/testsuite/gdc.test/compilable/sroa.d | 55 ++ gcc/testsuite/gdc.test/compilable/stc_traits.d | 172 +++++ gcc/testsuite/gdc.test/compilable/test15711.d | 31 + gcc/testsuite/gdc.test/compilable/test16492.d | 87 --- gcc/testsuite/gdc.test/compilable/test19482.d | 68 ++ gcc/testsuite/gdc.test/compilable/test21438.d | 15 + gcc/testsuite/gdc.test/compilable/test21794.d | 52 ++ gcc/testsuite/gdc.test/compilable/test21850.d | 35 + gcc/testsuite/gdc.test/compilable/test22214.d | 16 + gcc/testsuite/gdc.test/compilable/test22224.d | 4 + gcc/testsuite/gdc.test/compilable/test22228.d | 11 + gcc/testsuite/gdc.test/compilable/test22292.d | 155 +++++ gcc/testsuite/gdc.test/compilable/test22388.d | 22 + gcc/testsuite/gdc.test/compilable/test22410.d | 59 ++ gcc/testsuite/gdc.test/compilable/test22420.d | 88 +++ gcc/testsuite/gdc.test/compilable/test22421.d | 19 + gcc/testsuite/gdc.test/compilable/test318.d | 19 + gcc/testsuite/gdc.test/compilable/test4090.d | 17 - gcc/testsuite/gdc.test/compilable/test9766.d | 4 +- gcc/testsuite/gdc.test/compilable/testcstuff3.d | 4 - gcc/testsuite/gdc.test/compilable/transition_in.d | 26 + gcc/testsuite/gdc.test/compilable/zerosize.d | 13 +- .../gdc.test/fail_compilation/diag10327.d | 3 +- .../gdc.test/fail_compilation/diag20059.d | 2 +- .../gdc.test/fail_compilation/fail20618.d | 16 + .../gdc.test/fail_compilation/fail21091a.d | 3 +- .../gdc.test/fail_compilation/fail21091b.d | 3 +- .../gdc.test/fail_compilation/fail22084.d | 2 +- .../gdc.test/fail_compilation/fail22151.d | 24 + .../gdc.test/fail_compilation/fail22366.d | 15 + gcc/testsuite/gdc.test/fail_compilation/fail225.d | 17 - gcc/testsuite/gdc.test/fail_compilation/fail287.d | 2 +- gcc/testsuite/gdc.test/fail_compilation/fail318.d | 8 - .../gdc.test/fail_compilation/fail318_b.d | 11 + gcc/testsuite/gdc.test/fail_compilation/fail7173.d | 2 +- gcc/testsuite/gdc.test/fail_compilation/foreach.d | 14 + gcc/testsuite/gdc.test/fail_compilation/foreach2.d | 22 + gcc/testsuite/gdc.test/fail_compilation/ice10212.d | 2 +- gcc/testsuite/gdc.test/fail_compilation/ice22377.d | 8 + gcc/testsuite/gdc.test/fail_compilation/ice7782.d | 3 +- .../gdc.test/fail_compilation/imports/imp22329.d | 4 + gcc/testsuite/gdc.test/fail_compilation/noreturn.d | 2 +- .../gdc.test/fail_compilation/noreturn2.d | 90 +++ .../gdc.test/fail_compilation/reserved_version.d | 6 + .../fail_compilation/reserved_version_switch.d | 6 + .../gdc.test/fail_compilation/test17425.d | 2 +- .../gdc.test/fail_compilation/test17868b.d | 2 +- .../gdc.test/fail_compilation/test20998.d | 120 ++++ .../gdc.test/fail_compilation/test21093.d | 56 ++ .../gdc.test/fail_compilation/test21380.d | 46 ++ .../gdc.test/fail_compilation/test21930.d | 27 + .../gdc.test/fail_compilation/test22329.d | 21 + .../gdc.test/fail_compilation/test22361.d | 11 + .../gdc.test/fail_compilation/testOpApply.d | 161 +++++ gcc/testsuite/gdc.test/runnable/aliasthis.d | 36 + gcc/testsuite/gdc.test/runnable/dhry.d | 16 + gcc/testsuite/gdc.test/runnable/fix22372.d | 38 ++ gcc/testsuite/gdc.test/runnable/interpret.d | 57 ++ gcc/testsuite/gdc.test/runnable/noreturn1.d | 47 ++ gcc/testsuite/gdc.test/runnable/noreturn2.d | 220 ++++++ gcc/testsuite/gdc.test/runnable/sroa13220.d | 103 +++ gcc/testsuite/gdc.test/runnable/test15624.d | 51 -- gcc/testsuite/gdc.test/runnable/test21039.d | 27 + gcc/testsuite/gdc.test/runnable/test22205.d | 17 + gcc/testsuite/gdc.test/runnable/test22278.d | 24 + gcc/testsuite/gdc.test/runnable/testOpApply.d | 142 ++++ gcc/testsuite/gdc.test/runnable/testmainb.d | 15 + gcc/testsuite/gdc.test/runnable/uda.d | 48 ++ gcc/testsuite/gdc.test/runnable/ufcs.d | 1 + .../gdc.test/runnable_cxx/extra-files/cpp22287.cpp | 337 +++++++++ gcc/testsuite/gdc.test/runnable_cxx/test22287.d | 327 +++++++++ gcc/testsuite/gfortran.dg/allocate_with_mold_4.f90 | 24 + .../gfortran.dg/allocate_with_source_26.f90 | 8 +- gcc/testsuite/gfortran.dg/goacc/finalize-1.f | 8 +- .../gfortran.dg/gomp/affinity-clause-1.f90 | 6 +- .../gfortran.dg/gomp/affinity-clause-5.f90 | 4 +- gcc/testsuite/gfortran.dg/gomp/atomic-10.f90 | 32 + gcc/testsuite/gfortran.dg/gomp/atomic-12.f90 | 364 ++++++++++ gcc/testsuite/gfortran.dg/gomp/atomic-15.f90 | 44 ++ gcc/testsuite/gfortran.dg/gomp/atomic-16.f90 | 36 + gcc/testsuite/gfortran.dg/gomp/atomic-17.f90 | 41 ++ gcc/testsuite/gfortran.dg/gomp/atomic-18.f90 | 27 + gcc/testsuite/gfortran.dg/gomp/atomic-19.f90 | 39 ++ gcc/testsuite/gfortran.dg/gomp/atomic-2.f90 | 42 +- gcc/testsuite/gfortran.dg/gomp/atomic-20.f90 | 39 ++ gcc/testsuite/gfortran.dg/gomp/atomic-22.f90 | 24 + gcc/testsuite/gfortran.dg/gomp/atomic-24.f90 | 13 + gcc/testsuite/gfortran.dg/gomp/atomic-25.f90 | 53 ++ gcc/testsuite/gfortran.dg/gomp/atomic-26.f90 | 75 ++ gcc/testsuite/gfortran.dg/gomp/atomic.f90 | 40 +- gcc/testsuite/gfortran.dg/gomp/defaultmap-4.f90 | 44 +- gcc/testsuite/gfortran.dg/gomp/defaultmap-5.f90 | 30 +- gcc/testsuite/gfortran.dg/gomp/defaultmap-6.f90 | 20 +- gcc/testsuite/gfortran.dg/gomp/map-3.f90 | 4 +- gcc/testsuite/gfortran.dg/gomp/pr78260-2.f90 | 8 +- gcc/testsuite/gfortran.dg/gomp/pr78260-3.f90 | 4 +- gcc/testsuite/gfortran.dg/pr103505.f90 | 9 + gcc/testsuite/gfortran.dg/pr103588.f90 | 8 + gcc/testsuite/gfortran.dg/pr103607.f90 | 12 + gcc/testsuite/gfortran.dg/pr103609.f90 | 15 + gcc/testsuite/gfortran.dg/select_9.f90 | 10 + gcc/testsuite/gfortran.dg/shape_11.f90 | 16 + gcc/testsuite/lib/gcc-dg.exp | 14 +- gcc/testsuite/lib/target-supports.exp | 6 + gcc/tree-core.h | 2 +- gcc/tree-pretty-print.c | 8 + gcc/tree-ssa-loop-niter.c | 19 +- gcc/tree-ssa-loop-unswitch.c | 129 ++-- gcc/tree-ssa-propagate.c | 62 +- gcc/tree-ssa-propagate.h | 2 +- gcc/tree-ssa-sccvn.c | 2 +- gcc/tree-vect-slp.c | 19 +- gcc/tree-vect-stmts.c | 79 ++- gcc/tree-vectorizer.h | 9 + gcc/value-range.cc | 46 +- gcc/varasm.c | 13 +- include/ChangeLog | 9 + include/gomp-constants.h | 14 +- libcpp/ChangeLog | 34 + libcpp/include/line-map.h | 4 +- libcpp/lex.c | 16 +- libgcc/ChangeLog | 22 + libgcc/config.host | 13 +- libgcc/config/darwin-unwind.ver | 30 + libgcc/config/i386/t-darwin | 3 + libgcc/config/riscv/div.S | 15 +- libgcc/config/riscv/riscv-asm.h | 6 + libgcc/config/rs6000/t-darwin | 3 + libgcc/config/rs6000/t-darwin-ehs | 5 + libgcc/config/t-darwin | 19 +- libgcc/config/t-darwin-ehs | 4 + libgcc/config/t-darwin-noeh | 4 - libgcc/config/t-slibgcc-darwin | 130 +++- libgomp/ChangeLog | 56 ++ libgomp/libgomp.h | 2 +- libgomp/libgomp.texi | 33 +- libgomp/oacc-mem.c | 7 +- libgomp/target.c | 185 +++-- libgomp/testsuite/libgomp.c++/target-11.C | 14 +- libgomp/testsuite/libgomp.c++/target-12.C | 2 +- libgomp/testsuite/libgomp.c++/target-15.C | 20 +- libgomp/testsuite/libgomp.c++/target-16.C | 20 +- libgomp/testsuite/libgomp.c++/target-17.C | 20 +- libgomp/testsuite/libgomp.c++/target-21.C | 8 +- libgomp/testsuite/libgomp.c++/target-23.C | 34 + libgomp/testsuite/libgomp.c++/target-lambda-1.C | 86 +++ libgomp/testsuite/libgomp.c++/target-lambda-2.C | 30 + libgomp/testsuite/libgomp.c++/target-this-1.C | 29 + libgomp/testsuite/libgomp.c++/target-this-2.C | 47 ++ libgomp/testsuite/libgomp.c++/target-this-3.C | 99 +++ libgomp/testsuite/libgomp.c++/target-this-4.C | 104 +++ libgomp/testsuite/libgomp.c++/target-this-5.C | 30 + .../libgomp.c-c++-common/target-implicit-map-2.c | 46 ++ libgomp/testsuite/libgomp.c/target-23.c | 2 +- libgomp/testsuite/libgomp.c/target-29.c | 20 +- libgomp/testsuite/libgomp.fortran/pr90030.f90 | 3 + libgomp/testsuite/libgomp.oacc-fortran/pr90030.f90 | 29 + libphobos/ChangeLog | 29 + libphobos/libdruntime/MERGE | 2 +- libphobos/libdruntime/Makefile.am | 18 +- libphobos/libdruntime/Makefile.in | 34 +- libphobos/libdruntime/core/demangle.d | 98 +++ libphobos/libdruntime/core/exception.d | 19 +- .../libdruntime/core/internal/array/construction.d | 55 +- libphobos/libdruntime/core/internal/atomic.d | 24 +- libphobos/libdruntime/core/internal/dassert.d | 2 +- .../core/internal/gc/impl/conservative/gc.d | 279 +++++++- libphobos/libdruntime/core/internal/gc/os.d | 44 +- libphobos/libdruntime/core/internal/hash.d | 9 +- libphobos/libdruntime/core/internal/parseoptions.d | 2 +- libphobos/libdruntime/core/internal/traits.d | 8 +- libphobos/libdruntime/core/internal/util/array.d | 49 ++ libphobos/libdruntime/core/lifetime.d | 4 +- libphobos/libdruntime/core/runtime.d | 1 + libphobos/libdruntime/core/stdc/stdlib.d | 2 +- libphobos/libdruntime/core/sync/rwmutex.d | 418 +++++++++++- libphobos/libdruntime/core/sys/freebsd/config.d | 4 +- libphobos/libdruntime/core/sys/linux/fs.d | 63 +- libphobos/libdruntime/core/sys/linux/perf_event.d | 2 - libphobos/libdruntime/core/sys/linux/sys/mman.d | 32 +- libphobos/libdruntime/core/sys/linux/syscalls.d | 745 ++++++++++++++++++++ libphobos/libdruntime/core/sys/linux/unistd.d | 26 +- libphobos/libdruntime/core/sys/openbsd/dlfcn.d | 4 +- .../libdruntime/core/sys/openbsd/pthread_np.d | 23 + libphobos/libdruntime/core/sys/openbsd/stdlib.d | 8 +- libphobos/libdruntime/core/sys/openbsd/string.d | 6 + libphobos/libdruntime/core/sys/openbsd/sys/mman.d | 6 +- .../libdruntime/core/sys/openbsd/sys/sysctl.d | 3 +- libphobos/libdruntime/core/sys/openbsd/unistd.d | 2 +- libphobos/libdruntime/core/sys/posix/netdb.d | 1 + libphobos/libdruntime/core/sys/posix/sys/filio.d | 12 + libphobos/libdruntime/core/sys/posix/sys/ioccom.d | 56 ++ libphobos/libdruntime/core/sys/posix/sys/ioctl.d | 7 + libphobos/libdruntime/core/sys/posix/sys/mman.d | 1 + libphobos/libdruntime/core/sys/posix/sys/socket.d | 3 +- libphobos/libdruntime/core/sys/posix/sys/ttycom.d | 101 +++ libphobos/libdruntime/core/sys/posix/time.d | 5 - libphobos/libdruntime/core/sys/windows/accctrl.d | 2 +- libphobos/libdruntime/core/sys/windows/aclapi.d | 2 +- libphobos/libdruntime/core/sys/windows/aclui.d | 2 +- libphobos/libdruntime/core/sys/windows/basetsd.d | 2 +- libphobos/libdruntime/core/sys/windows/basetyps.d | 2 +- libphobos/libdruntime/core/sys/windows/cderr.d | 2 +- libphobos/libdruntime/core/sys/windows/cguid.d | 2 +- libphobos/libdruntime/core/sys/windows/comcat.d | 2 +- libphobos/libdruntime/core/sys/windows/commctrl.d | 2 +- libphobos/libdruntime/core/sys/windows/commdlg.d | 2 +- libphobos/libdruntime/core/sys/windows/core.d | 2 +- libphobos/libdruntime/core/sys/windows/cpl.d | 2 +- libphobos/libdruntime/core/sys/windows/cplext.d | 2 +- libphobos/libdruntime/core/sys/windows/custcntl.d | 2 +- libphobos/libdruntime/core/sys/windows/dbt.d | 2 +- libphobos/libdruntime/core/sys/windows/dde.d | 2 +- libphobos/libdruntime/core/sys/windows/ddeml.d | 76 ++- libphobos/libdruntime/core/sys/windows/dhcpcsdk.d | 2 +- libphobos/libdruntime/core/sys/windows/dlgs.d | 2 +- libphobos/libdruntime/core/sys/windows/dll.d | 6 +- libphobos/libdruntime/core/sys/windows/docobj.d | 2 +- libphobos/libdruntime/core/sys/windows/errorrep.d | 2 +- libphobos/libdruntime/core/sys/windows/exdisp.d | 2 +- libphobos/libdruntime/core/sys/windows/exdispid.d | 2 +- libphobos/libdruntime/core/sys/windows/httpext.d | 2 +- libphobos/libdruntime/core/sys/windows/idispids.d | 2 +- libphobos/libdruntime/core/sys/windows/imagehlp.d | 2 +- libphobos/libdruntime/core/sys/windows/imm.d | 2 +- libphobos/libdruntime/core/sys/windows/intshcut.d | 2 +- libphobos/libdruntime/core/sys/windows/ipexport.d | 2 +- libphobos/libdruntime/core/sys/windows/iphlpapi.d | 2 +- libphobos/libdruntime/core/sys/windows/ipifcons.d | 2 +- libphobos/libdruntime/core/sys/windows/iprtrmib.d | 2 +- libphobos/libdruntime/core/sys/windows/iptypes.d | 2 +- libphobos/libdruntime/core/sys/windows/isguids.d | 2 +- libphobos/libdruntime/core/sys/windows/lm.d | 2 +- libphobos/libdruntime/core/sys/windows/lmaccess.d | 2 +- libphobos/libdruntime/core/sys/windows/lmalert.d | 2 +- libphobos/libdruntime/core/sys/windows/lmapibuf.d | 2 +- libphobos/libdruntime/core/sys/windows/lmat.d | 2 +- libphobos/libdruntime/core/sys/windows/lmaudit.d | 2 +- libphobos/libdruntime/core/sys/windows/lmbrowsr.d | 2 +- libphobos/libdruntime/core/sys/windows/lmchdev.d | 2 +- libphobos/libdruntime/core/sys/windows/lmconfig.d | 2 +- libphobos/libdruntime/core/sys/windows/lmcons.d | 2 +- libphobos/libdruntime/core/sys/windows/lmerr.d | 2 +- libphobos/libdruntime/core/sys/windows/lmerrlog.d | 2 +- libphobos/libdruntime/core/sys/windows/lmmsg.d | 2 +- libphobos/libdruntime/core/sys/windows/lmremutl.d | 2 +- libphobos/libdruntime/core/sys/windows/lmrepl.d | 2 +- libphobos/libdruntime/core/sys/windows/lmserver.d | 2 +- libphobos/libdruntime/core/sys/windows/lmshare.d | 2 +- libphobos/libdruntime/core/sys/windows/lmsname.d | 2 +- libphobos/libdruntime/core/sys/windows/lmstats.d | 2 +- libphobos/libdruntime/core/sys/windows/lmsvc.d | 2 +- libphobos/libdruntime/core/sys/windows/lmuse.d | 2 +- libphobos/libdruntime/core/sys/windows/lmuseflg.d | 2 +- libphobos/libdruntime/core/sys/windows/lmwksta.d | 2 +- libphobos/libdruntime/core/sys/windows/lzexpand.d | 2 +- libphobos/libdruntime/core/sys/windows/mapi.d | 2 +- libphobos/libdruntime/core/sys/windows/mciavi.d | 2 +- libphobos/libdruntime/core/sys/windows/mcx.d | 2 +- libphobos/libdruntime/core/sys/windows/mgmtapi.d | 2 +- libphobos/libdruntime/core/sys/windows/mmsystem.d | 2 +- libphobos/libdruntime/core/sys/windows/msacm.d | 2 +- libphobos/libdruntime/core/sys/windows/mshtml.d | 2 +- libphobos/libdruntime/core/sys/windows/mswsock.d | 2 +- libphobos/libdruntime/core/sys/windows/nb30.d | 2 +- libphobos/libdruntime/core/sys/windows/nddeapi.d | 2 +- libphobos/libdruntime/core/sys/windows/nspapi.d | 2 +- libphobos/libdruntime/core/sys/windows/ntdef.d | 2 +- libphobos/libdruntime/core/sys/windows/ntdll.d | 2 +- libphobos/libdruntime/core/sys/windows/ntldap.d | 2 +- libphobos/libdruntime/core/sys/windows/ntsecapi.d | 2 +- libphobos/libdruntime/core/sys/windows/ntsecpkg.d | 2 +- libphobos/libdruntime/core/sys/windows/oaidl.d | 2 +- libphobos/libdruntime/core/sys/windows/objbase.d | 2 +- libphobos/libdruntime/core/sys/windows/objfwd.d | 2 +- libphobos/libdruntime/core/sys/windows/objidl.d | 2 +- libphobos/libdruntime/core/sys/windows/objsafe.d | 2 +- libphobos/libdruntime/core/sys/windows/ocidl.d | 2 +- libphobos/libdruntime/core/sys/windows/odbcinst.d | 2 +- libphobos/libdruntime/core/sys/windows/ole.d | 2 +- libphobos/libdruntime/core/sys/windows/ole2.d | 2 +- libphobos/libdruntime/core/sys/windows/ole2ver.d | 2 +- libphobos/libdruntime/core/sys/windows/oleacc.d | 2 +- libphobos/libdruntime/core/sys/windows/oleauto.d | 2 +- libphobos/libdruntime/core/sys/windows/olectl.d | 2 +- libphobos/libdruntime/core/sys/windows/olectlid.d | 2 +- libphobos/libdruntime/core/sys/windows/oledlg.d | 2 +- libphobos/libdruntime/core/sys/windows/oleidl.d | 2 +- libphobos/libdruntime/core/sys/windows/pbt.d | 2 +- libphobos/libdruntime/core/sys/windows/powrprof.d | 2 +- libphobos/libdruntime/core/sys/windows/prsht.d | 2 +- libphobos/libdruntime/core/sys/windows/psapi.d | 2 +- libphobos/libdruntime/core/sys/windows/rapi.d | 2 +- libphobos/libdruntime/core/sys/windows/ras.d | 2 +- libphobos/libdruntime/core/sys/windows/rasdlg.d | 2 +- libphobos/libdruntime/core/sys/windows/raserror.d | 2 +- libphobos/libdruntime/core/sys/windows/rassapi.d | 2 +- libphobos/libdruntime/core/sys/windows/reason.d | 2 +- libphobos/libdruntime/core/sys/windows/regstr.d | 2 +- libphobos/libdruntime/core/sys/windows/richedit.d | 2 +- libphobos/libdruntime/core/sys/windows/richole.d | 2 +- libphobos/libdruntime/core/sys/windows/rpc.d | 2 +- libphobos/libdruntime/core/sys/windows/rpcdce.d | 2 +- libphobos/libdruntime/core/sys/windows/rpcdce2.d | 2 +- libphobos/libdruntime/core/sys/windows/rpcdcep.d | 2 +- libphobos/libdruntime/core/sys/windows/rpcndr.d | 2 +- libphobos/libdruntime/core/sys/windows/rpcnsi.d | 2 +- libphobos/libdruntime/core/sys/windows/rpcnsip.d | 2 +- libphobos/libdruntime/core/sys/windows/rpcnterr.d | 2 +- libphobos/libdruntime/core/sys/windows/schannel.d | 2 +- libphobos/libdruntime/core/sys/windows/sdkddkver.d | 2 +- libphobos/libdruntime/core/sys/windows/secext.d | 2 +- libphobos/libdruntime/core/sys/windows/security.d | 2 +- libphobos/libdruntime/core/sys/windows/servprov.d | 2 +- libphobos/libdruntime/core/sys/windows/setupapi.d | 2 +- libphobos/libdruntime/core/sys/windows/shellapi.d | 2 +- libphobos/libdruntime/core/sys/windows/shldisp.d | 2 +- libphobos/libdruntime/core/sys/windows/shlguid.d | 2 +- libphobos/libdruntime/core/sys/windows/shlobj.d | 2 +- libphobos/libdruntime/core/sys/windows/shlwapi.d | 2 +- libphobos/libdruntime/core/sys/windows/snmp.d | 2 +- libphobos/libdruntime/core/sys/windows/sql.d | 2 +- libphobos/libdruntime/core/sys/windows/sqlext.d | 2 +- libphobos/libdruntime/core/sys/windows/sqltypes.d | 2 +- libphobos/libdruntime/core/sys/windows/sqlucode.d | 2 +- libphobos/libdruntime/core/sys/windows/sspi.d | 2 +- .../libdruntime/core/sys/windows/stdc/malloc.d | 2 +- libphobos/libdruntime/core/sys/windows/subauth.d | 2 +- libphobos/libdruntime/core/sys/windows/tlhelp32.d | 2 +- libphobos/libdruntime/core/sys/windows/tmschema.d | 2 +- libphobos/libdruntime/core/sys/windows/unknwn.d | 2 +- libphobos/libdruntime/core/sys/windows/vfw.d | 2 +- libphobos/libdruntime/core/sys/windows/w32api.d | 2 +- libphobos/libdruntime/core/sys/windows/winbase.d | 2 +- libphobos/libdruntime/core/sys/windows/winber.d | 2 +- libphobos/libdruntime/core/sys/windows/wincon.d | 2 +- libphobos/libdruntime/core/sys/windows/wincrypt.d | 2 +- libphobos/libdruntime/core/sys/windows/windef.d | 2 +- libphobos/libdruntime/core/sys/windows/windows.d | 2 +- libphobos/libdruntime/core/sys/windows/winerror.d | 2 +- libphobos/libdruntime/core/sys/windows/wingdi.d | 2 +- libphobos/libdruntime/core/sys/windows/winhttp.d | 2 +- libphobos/libdruntime/core/sys/windows/wininet.d | 2 +- libphobos/libdruntime/core/sys/windows/winioctl.d | 2 +- libphobos/libdruntime/core/sys/windows/winldap.d | 2 +- libphobos/libdruntime/core/sys/windows/winnetwk.d | 2 +- libphobos/libdruntime/core/sys/windows/winnls.d | 2 +- libphobos/libdruntime/core/sys/windows/winnt.d | 2 +- libphobos/libdruntime/core/sys/windows/winperf.d | 2 +- libphobos/libdruntime/core/sys/windows/winreg.d | 2 +- libphobos/libdruntime/core/sys/windows/winspool.d | 2 +- libphobos/libdruntime/core/sys/windows/winsvc.d | 2 +- libphobos/libdruntime/core/sys/windows/winuser.d | 2 +- libphobos/libdruntime/core/sys/windows/winver.d | 2 +- libphobos/libdruntime/core/sys/windows/wtsapi32.d | 2 +- libphobos/libdruntime/core/sys/windows/wtypes.d | 2 +- libphobos/libdruntime/core/thread/fiber.d | 8 +- libphobos/libdruntime/core/thread/osthread.d | 30 + libphobos/libdruntime/core/time.d | 34 +- libphobos/libdruntime/object.d | 78 ++- libphobos/libdruntime/rt/aApplyR.d | 11 - libphobos/libdruntime/rt/aaA.d | 6 +- libphobos/libdruntime/rt/dmain2.d | 4 +- libphobos/src/MERGE | 2 +- libphobos/src/Makefile.am | 5 +- libphobos/src/Makefile.in | 5 +- libphobos/src/etc/c/curl.d | 43 +- libphobos/src/{index.d => index.dd} | 0 libphobos/src/std/algorithm/comparison.d | 401 +++++++---- libphobos/src/std/algorithm/iteration.d | 237 ++++--- libphobos/src/std/algorithm/mutation.d | 2 +- libphobos/src/std/algorithm/searching.d | 8 +- libphobos/src/std/algorithm/sorting.d | 12 +- libphobos/src/std/array.d | 22 +- libphobos/src/std/bitmanip.d | 6 +- libphobos/src/std/concurrency.d | 79 +-- libphobos/src/std/container/array.d | 206 ++++-- libphobos/src/std/datetime/systime.d | 52 +- libphobos/src/std/datetime/timezone.d | 1 + libphobos/src/std/digest/ripemd.d | 2 +- libphobos/src/std/exception.d | 50 +- libphobos/src/std/experimental/checkedint.d | 10 +- libphobos/src/std/file.d | 75 +- libphobos/src/std/format/internal/floats.d | 12 +- libphobos/src/std/format/internal/write.d | 154 +++-- libphobos/src/std/functional.d | 31 +- libphobos/src/std/getopt.d | 13 +- libphobos/src/std/internal/math/biguintcore.d | 6 - libphobos/src/std/internal/windows/advapi32.d | 12 +- libphobos/src/std/json.d | 6 +- libphobos/src/std/math/algebraic.d | 89 +-- libphobos/src/std/math/hardware.d | 1 + libphobos/src/std/math/operations.d | 3 +- libphobos/src/std/meta.d | 384 +++-------- libphobos/src/std/parallelism.d | 71 +- libphobos/src/std/process.d | 27 +- libphobos/src/std/random.d | 24 +- libphobos/src/std/range/interfaces.d | 51 +- libphobos/src/std/range/package.d | 102 +-- libphobos/src/std/range/primitives.d | 17 + libphobos/src/std/socket.d | 79 +-- libphobos/src/std/stdio.d | 52 +- libphobos/src/std/string.d | 16 +- libphobos/src/std/system.d | 2 + libphobos/src/std/traits.d | 602 ++++++---------- libphobos/src/std/typecons.d | 243 ++++--- libphobos/src/std/uni/package.d | 38 +- libphobos/src/std/variant.d | 2 +- libphobos/src/std/windows/registry.d | 5 - libphobos/testsuite/libphobos.betterc/test22336.d | 19 + .../testsuite/libphobos.exceptions/assert_fail.d | 12 + libphobos/testsuite/testsuite_flags.in | 1 + libsanitizer/ChangeLog | 11 + libsanitizer/LOCAL_PATCHES | 1 + libsanitizer/tsan/tsan_rtl_amd64.S | 128 ++-- libstdc++-v3/ChangeLog | 160 ++++- libstdc++-v3/acinclude.m4 | 14 +- .../config/allocator/bitmap_allocator_base.h | 55 -- libstdc++-v3/config/allocator/mt_allocator_base.h | 55 -- .../config/allocator/pool_allocator_base.h | 55 -- libstdc++-v3/config/os/newlib/ctype_base.h | 19 +- libstdc++-v3/configure | 14 +- libstdc++-v3/doc/doxygen/user.cfg.in | 2 +- libstdc++-v3/doc/html/manual/api.html | 3 + libstdc++-v3/doc/html/manual/configure.html | 10 +- libstdc++-v3/doc/html/manual/memory.html | 57 +- libstdc++-v3/doc/html/manual/mt_allocator.html | 8 +- libstdc++-v3/doc/xml/manual/allocator.xml | 67 +- libstdc++-v3/doc/xml/manual/configure.xml | 10 +- libstdc++-v3/doc/xml/manual/evolution.xml | 5 + libstdc++-v3/doc/xml/manual/mt_allocator.xml | 8 +- libstdc++-v3/include/bits/allocator.h | 8 +- libstdc++-v3/include/bits/basic_string.h | 6 +- libstdc++-v3/include/bits/basic_string.tcc | 4 +- libstdc++-v3/include/bits/c++config | 39 +- libstdc++-v3/include/bits/char_traits.h | 129 ++-- libstdc++-v3/include/bits/cow_string.h | 20 +- libstdc++-v3/include/bits/ranges_algobase.h | 12 +- libstdc++-v3/include/bits/ranges_cmp.h | 5 +- libstdc++-v3/include/bits/regex.h | 4 +- libstdc++-v3/include/bits/shared_ptr_base.h | 117 +++- libstdc++-v3/include/bits/stl_algobase.h | 5 +- libstdc++-v3/include/bits/stl_bvector.h | 8 +- libstdc++-v3/include/bits/stl_construct.h | 12 +- libstdc++-v3/include/bits/stl_function.h | 24 +- libstdc++-v3/include/bits/stl_tree.h | 154 +++-- libstdc++-v3/include/bits/stl_vector.h | 5 +- libstdc++-v3/include/debug/helper_functions.h | 15 +- libstdc++-v3/include/std/array | 4 +- libstdc++-v3/include/std/bit | 5 +- libstdc++-v3/include/std/deque | 30 +- libstdc++-v3/include/std/type_traits | 11 +- libstdc++-v3/include/std/vector | 30 +- libstdc++-v3/include/std/version | 4 +- libstdc++-v3/libsupc++/compare | 2 +- libstdc++-v3/src/c++11/cow-stdexcept.cc | 20 - libstdc++-v3/src/c++17/fs_path.cc | 5 - libstdc++-v3/src/filesystem/path.cc | 31 +- .../23_containers/array/tuple_interface/get_neg.cc | 6 +- .../23_containers/map/allocator/move_cons.cc | 2 +- .../23_containers/multimap/allocator/move_cons.cc | 2 +- .../23_containers/multiset/allocator/103501.cc | 32 + .../23_containers/set/allocator/103501.cc | 32 + lto-plugin/ChangeLog | 7 + lto-plugin/lto-plugin.c | 6 +- 1047 files changed, 26537 insertions(+), 9610 deletions(-) delete mode 100644 gcc/ada/gcc-interface/a-assert.adb delete mode 100644 gcc/ada/gcc-interface/a-assert.ads copy gcc/ada/{vxworks7-cert-rtp-link.spec => vxworks7-cert-rtp-link__ppcXX.spec} (91%) create mode 100644 gcc/d/dmd/common/README.md copy gcc/d/dmd/{root => common}/file.d (53%) rename gcc/d/dmd/{root => common}/outbuffer.d (77%) rename gcc/d/dmd/{root => common}/outbuffer.h (90%) create mode 100644 gcc/d/dmd/common/string.d create mode 100644 gcc/d/dmd/file_manager.d rename gcc/d/dmd/{root/root.h => file_manager.h} (50%) create mode 100644 gcc/d/dmd/importc.d delete mode 100644 gcc/d/dmd/intrange.h delete mode 100644 gcc/d/dmd/lexer.h delete mode 100644 gcc/d/dmd/macro.h delete mode 100644 gcc/d/dmd/mars.h delete mode 100644 gcc/d/dmd/parse.h delete mode 100644 gcc/d/dmd/root/aav.h delete mode 100644 gcc/d/dmd/root/checkedint.h delete mode 100644 gcc/d/dmd/root/hash.h delete mode 100644 gcc/d/dmd/root/speller.h delete mode 100644 gcc/d/dmd/root/stringtable.h delete mode 100644 gcc/d/dmd/statement_rewrite_walker.h delete mode 100644 gcc/d/dmd/utf.h create mode 100644 gcc/testsuite/c-c++-common/goacc/pr102432.c create mode 100644 gcc/testsuite/c-c++-common/gomp/pr102432.c create mode 100644 gcc/testsuite/c-c++-common/gomp/target-enter-data-1.c create mode 100644 gcc/testsuite/c-c++-common/gomp/target-implicit-map-2.c create mode 100644 gcc/testsuite/g++.dg/cpp0x/constexpr-fp-except1.C create mode 100644 gcc/testsuite/g++.dg/cpp0x/decltype-bitfield1.C create mode 100644 gcc/testsuite/g++.dg/cpp0x/decltype-bitfield2.C create mode 100644 gcc/testsuite/g++.dg/cpp1y/decltype-auto2.C create mode 100644 gcc/testsuite/g++.dg/cpp1y/decltype-auto3.C create mode 100644 gcc/testsuite/g++.dg/cpp1y/decltype-auto4.C create mode 100644 gcc/testsuite/g++.dg/cpp1z/constexpr-if36.C create mode 100644 gcc/testsuite/g++.dg/cpp1z/decomp-decltype1.C create mode 100644 gcc/testsuite/g++.dg/cpp23/concepts-err1.C create mode 100644 gcc/testsuite/g++.dg/cpp2a/bit-cast11.C create mode 100644 gcc/testsuite/g++.dg/cpp2a/bit-cast12.C create mode 100644 gcc/testsuite/g++.dg/cpp2a/bit-cast13.C create mode 100644 gcc/testsuite/g++.dg/cpp2a/bit-cast14.C create mode 100644 gcc/testsuite/g++.dg/diagnostic/scope1.C create mode 100644 gcc/testsuite/g++.dg/ext/integer-pack5.C create mode 100644 gcc/testsuite/g++.dg/gomp/target-3.C create mode 100644 gcc/testsuite/g++.dg/gomp/target-lambda-1.C create mode 100644 gcc/testsuite/g++.dg/gomp/target-lambda-2.C create mode 100644 gcc/testsuite/g++.dg/gomp/target-this-1.C create mode 100644 gcc/testsuite/g++.dg/gomp/target-this-2.C create mode 100644 gcc/testsuite/g++.dg/gomp/target-this-3.C create mode 100644 gcc/testsuite/g++.dg/gomp/target-this-4.C create mode 100644 gcc/testsuite/g++.dg/gomp/target-this-5.C create mode 100644 gcc/testsuite/g++.dg/pr103024.C create mode 100644 gcc/testsuite/g++.dg/pr103530.C create mode 100644 gcc/testsuite/g++.dg/template/lookup18.C create mode 100644 gcc/testsuite/g++.dg/torture/pr71792.C create mode 100755 gcc/testsuite/g++.target/i386/pr100738-1.C create mode 100644 gcc/testsuite/gcc.dg/analyzer/leak-3.c create mode 100644 gcc/testsuite/gcc.dg/analyzer/pr103526.c create mode 100644 gcc/testsuite/gcc.dg/fold-condneg-1.c create mode 100644 gcc/testsuite/gcc.dg/fold-condneg-2.c create mode 100644 gcc/testsuite/gcc.dg/fold-condnot-1.c create mode 100644 gcc/testsuite/gcc.dg/gomp/target-3.c create mode 100644 gcc/testsuite/gcc.dg/pr101145-1.c create mode 100644 gcc/testsuite/gcc.dg/pr101145-2.c create mode 100644 gcc/testsuite/gcc.dg/pr103028.c copy gcc/testsuite/{gcc.c-torture/compile/pr37433.c => gcc.dg/pr103594.c} (68%) create mode 100644 gcc/testsuite/gcc.dg/torture/pr103596.c create mode 100644 gcc/testsuite/gcc.dg/tree-prof/init-array.c create mode 100644 gcc/testsuite/gcc.dg/tree-ssa/nonzero-1a.c create mode 100644 gcc/testsuite/gcc.dg/vect/pr103517.c create mode 100644 gcc/testsuite/gcc.dg/vect/pr103544.c create mode 100644 gcc/testsuite/gcc.dg/vect/pr103581.c create mode 100644 gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/shrn-1.c create mode 100644 gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/shrn-2.c create mode 100644 gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/shrn-3.c create mode 100644 gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/shrn-4.c create mode 100644 gcc/testsuite/gcc.target/aarch64/pr103149.c create mode 100644 gcc/testsuite/gcc.target/aarch64/sve/pred-combine-and.c copy gcc/testsuite/gcc.target/i386/{pieces-memcpy-13.c => pieces-memcpy-17.c} (80%) copy gcc/testsuite/gcc.target/i386/{pieces-memcpy-13.c => pieces-memcpy-18.c} (88%) copy gcc/testsuite/gcc.target/i386/{pieces-memcpy-10.c => pieces-memcpy-19.c} (72%) copy gcc/testsuite/gcc.target/i386/{pieces-memcpy-13.c => pieces-memcpy-20.c} (65%) copy gcc/testsuite/gcc.target/i386/{pieces-memcpy-13.c => pieces-memcpy-21.c} (66%) copy gcc/testsuite/gcc.target/i386/{pieces-memset-12.c => pieces-memset-45.c} (77%) copy gcc/testsuite/gcc.target/i386/{pieces-memset-12.c => pieces-memset-46.c} (60%) copy gcc/testsuite/gcc.target/i386/{pieces-memset-12.c => pieces-memset-47.c} (57%) copy gcc/testsuite/gcc.target/i386/{pieces-memset-12.c => pieces-memset-48.c} (57%) copy gcc/testsuite/gcc.target/i386/{pieces-memset-12.c => pieces-memset-49.c} (66%) create mode 100644 gcc/testsuite/gcc.target/i386/pr102811-1.c rename gcc/testsuite/gcc.target/i386/{avx512vl-vcvtps2ph-pr102811.c => pr102811.c} (100%) create mode 100644 gcc/testsuite/gcc.target/i386/pr103097.c create mode 100644 gcc/testsuite/gcc.target/i386/pr103404.c create mode 100644 gcc/testsuite/gcc.target/i386/pr83782-1.c create mode 100644 gcc/testsuite/gcc.target/i386/pr83782-2.c create mode 100644 gcc/testsuite/gcc.target/i386/pr95740.c create mode 100644 gcc/testsuite/gcc.target/mips/unaligned-2.c create mode 100644 gcc/testsuite/gcc.target/mips/unaligned-3.c create mode 100644 gcc/testsuite/gcc.target/nvptx/exttrunc-1.c create mode 100644 gcc/testsuite/gcc.target/nvptx/exttrunc-2.c create mode 100644 gcc/testsuite/gcc.target/nvptx/exttrunc-3.c create mode 100644 gcc/testsuite/gcc.target/nvptx/exttrunc-4.c create mode 100644 gcc/testsuite/gcc.target/nvptx/exttrunc-5.c create mode 100644 gcc/testsuite/gcc.target/nvptx/exttrunc-6.c create mode 100644 gcc/testsuite/gcc.target/powerpc/pr101324.c copy gcc/testsuite/gcc.target/powerpc/{pr98872.c => pr103127.c} (70%) create mode 100644 gcc/testsuite/gcc.target/pru/pru_irq_map.c create mode 100644 gcc/testsuite/gcc.target/riscv/pr103302.c create mode 100644 gcc/testsuite/gdc.test/compilable/b19294.d create mode 100644 gcc/testsuite/gdc.test/compilable/ddoc_markdown_tables_22285.d delete mode 100644 gcc/testsuite/gdc.test/compilable/imports/cstuff3.c delete mode 100644 gcc/testsuite/gdc.test/compilable/previewall.d create mode 100644 gcc/testsuite/gdc.test/compilable/sroa.d create mode 100644 gcc/testsuite/gdc.test/compilable/stc_traits.d create mode 100644 gcc/testsuite/gdc.test/compilable/test15711.d delete mode 100644 gcc/testsuite/gdc.test/compilable/test16492.d create mode 100644 gcc/testsuite/gdc.test/compilable/test19482.d create mode 100644 gcc/testsuite/gdc.test/compilable/test21438.d create mode 100644 gcc/testsuite/gdc.test/compilable/test21794.d create mode 100644 gcc/testsuite/gdc.test/compilable/test21850.d create mode 100644 gcc/testsuite/gdc.test/compilable/test22214.d create mode 100644 gcc/testsuite/gdc.test/compilable/test22224.d create mode 100644 gcc/testsuite/gdc.test/compilable/test22228.d create mode 100644 gcc/testsuite/gdc.test/compilable/test22292.d create mode 100644 gcc/testsuite/gdc.test/compilable/test22388.d create mode 100644 gcc/testsuite/gdc.test/compilable/test22410.d create mode 100644 gcc/testsuite/gdc.test/compilable/test22420.d create mode 100644 gcc/testsuite/gdc.test/compilable/test22421.d create mode 100644 gcc/testsuite/gdc.test/compilable/test318.d delete mode 100644 gcc/testsuite/gdc.test/compilable/testcstuff3.d create mode 100644 gcc/testsuite/gdc.test/compilable/transition_in.d create mode 100644 gcc/testsuite/gdc.test/fail_compilation/fail20618.d create mode 100644 gcc/testsuite/gdc.test/fail_compilation/fail22151.d create mode 100644 gcc/testsuite/gdc.test/fail_compilation/fail22366.d delete mode 100644 gcc/testsuite/gdc.test/fail_compilation/fail225.d delete mode 100644 gcc/testsuite/gdc.test/fail_compilation/fail318.d create mode 100644 gcc/testsuite/gdc.test/fail_compilation/fail318_b.d create mode 100644 gcc/testsuite/gdc.test/fail_compilation/foreach.d create mode 100644 gcc/testsuite/gdc.test/fail_compilation/foreach2.d create mode 100644 gcc/testsuite/gdc.test/fail_compilation/ice22377.d create mode 100644 gcc/testsuite/gdc.test/fail_compilation/imports/imp22329.d create mode 100644 gcc/testsuite/gdc.test/fail_compilation/noreturn2.d create mode 100644 gcc/testsuite/gdc.test/fail_compilation/test20998.d create mode 100644 gcc/testsuite/gdc.test/fail_compilation/test21093.d create mode 100644 gcc/testsuite/gdc.test/fail_compilation/test21380.d create mode 100644 gcc/testsuite/gdc.test/fail_compilation/test21930.d create mode 100644 gcc/testsuite/gdc.test/fail_compilation/test22329.d create mode 100644 gcc/testsuite/gdc.test/fail_compilation/test22361.d create mode 100644 gcc/testsuite/gdc.test/fail_compilation/testOpApply.d create mode 100644 gcc/testsuite/gdc.test/runnable/fix22372.d create mode 100644 gcc/testsuite/gdc.test/runnable/noreturn2.d create mode 100644 gcc/testsuite/gdc.test/runnable/sroa13220.d delete mode 100644 gcc/testsuite/gdc.test/runnable/test15624.d create mode 100644 gcc/testsuite/gdc.test/runnable/test21039.d create mode 100644 gcc/testsuite/gdc.test/runnable/test22205.d create mode 100644 gcc/testsuite/gdc.test/runnable/test22278.d create mode 100644 gcc/testsuite/gdc.test/runnable/testOpApply.d create mode 100644 gcc/testsuite/gdc.test/runnable/testmainb.d create mode 100644 gcc/testsuite/gdc.test/runnable_cxx/extra-files/cpp22287.cpp create mode 100644 gcc/testsuite/gdc.test/runnable_cxx/test22287.d create mode 100644 gcc/testsuite/gfortran.dg/allocate_with_mold_4.f90 create mode 100644 gcc/testsuite/gfortran.dg/gomp/atomic-10.f90 create mode 100644 gcc/testsuite/gfortran.dg/gomp/atomic-12.f90 create mode 100644 gcc/testsuite/gfortran.dg/gomp/atomic-15.f90 create mode 100644 gcc/testsuite/gfortran.dg/gomp/atomic-16.f90 create mode 100644 gcc/testsuite/gfortran.dg/gomp/atomic-17.f90 create mode 100644 gcc/testsuite/gfortran.dg/gomp/atomic-18.f90 create mode 100644 gcc/testsuite/gfortran.dg/gomp/atomic-19.f90 create mode 100644 gcc/testsuite/gfortran.dg/gomp/atomic-20.f90 create mode 100644 gcc/testsuite/gfortran.dg/gomp/atomic-22.f90 create mode 100644 gcc/testsuite/gfortran.dg/gomp/atomic-24.f90 create mode 100644 gcc/testsuite/gfortran.dg/gomp/atomic-25.f90 create mode 100644 gcc/testsuite/gfortran.dg/gomp/atomic-26.f90 create mode 100644 gcc/testsuite/gfortran.dg/pr103505.f90 create mode 100644 gcc/testsuite/gfortran.dg/pr103588.f90 create mode 100644 gcc/testsuite/gfortran.dg/pr103607.f90 create mode 100644 gcc/testsuite/gfortran.dg/pr103609.f90 create mode 100644 gcc/testsuite/gfortran.dg/select_9.f90 create mode 100644 gcc/testsuite/gfortran.dg/shape_11.f90 create mode 100644 libgcc/config/darwin-unwind.ver create mode 100644 libgcc/config/rs6000/t-darwin-ehs create mode 100644 libgcc/config/t-darwin-ehs delete mode 100644 libgcc/config/t-darwin-noeh create mode 100644 libgomp/testsuite/libgomp.c++/target-23.C create mode 100644 libgomp/testsuite/libgomp.c++/target-lambda-1.C create mode 100644 libgomp/testsuite/libgomp.c++/target-lambda-2.C create mode 100644 libgomp/testsuite/libgomp.c++/target-this-1.C create mode 100644 libgomp/testsuite/libgomp.c++/target-this-2.C create mode 100644 libgomp/testsuite/libgomp.c++/target-this-3.C create mode 100644 libgomp/testsuite/libgomp.c++/target-this-4.C create mode 100644 libgomp/testsuite/libgomp.c++/target-this-5.C create mode 100644 libgomp/testsuite/libgomp.c-c++-common/target-implicit-map-2.c create mode 100644 libgomp/testsuite/libgomp.fortran/pr90030.f90 create mode 100644 libgomp/testsuite/libgomp.oacc-fortran/pr90030.f90 create mode 100644 libphobos/libdruntime/core/sys/linux/syscalls.d create mode 100644 libphobos/libdruntime/core/sys/openbsd/pthread_np.d rename libphobos/src/{index.d => index.dd} (100%) create mode 100644 libphobos/testsuite/libphobos.betterc/test22336.d delete mode 100644 libstdc++-v3/config/allocator/bitmap_allocator_base.h delete mode 100644 libstdc++-v3/config/allocator/mt_allocator_base.h delete mode 100644 libstdc++-v3/config/allocator/pool_allocator_base.h create mode 100644 libstdc++-v3/testsuite/23_containers/multiset/allocator/103501.cc create mode 100644 libstdc++-v3/testsuite/23_containers/set/allocator/103501.cc