[committed] d: Merge upstream dmd, druntime 1017635a96, phobos 5a142da0a
Iain Buclaw
ibuclaw@gdcproject.org
Fri Jan 30 10:26:41 GMT 2026
Hi,
This patch merges the D front-end and runtime library with upstream dmd
1017635a96, and the standard library with phobos 5a142da0a.
This, now in sync with upstream development as of May 2025.
D front-end changes:
- Import dmd v2.112.0-beta.1.
D runtime changes:
- Import druntime v2.112.0-beta.1.
- Added 64-bit `mul' and `udivmod' overloads to `core.int128'.
Phobos changes:
- Added `lazyCache' to `std.algorithm.iteration'.
- Added `writeText', `writeWText', and `writeDText' to
`std.conv'.
Bootstrapped and regression tested on x86_64-linux-gnu/-m32, committed
to mainline.
Regards,
Iain.
---
gcc/d/ChangeLog:
* dmd/MERGE: Merge upstream dmd 1017635a96.
* dmd/VERSION: Bump version to v2.112.0-beta.1.
* decl.cc (DeclVisitor::finish_vtable): Update for new front-end
interface.
(DeclVisitor::visit): Likewise.
* typeinfo.cc (TypeInfoVisitor::visit): Likewise.
libphobos/ChangeLog:
* libdruntime/MERGE: Merge upstream druntime 1017635a96.
* libdruntime/Makefile.am (DRUNTIME_DSOURCES_LINUX): Add
core/sys/linux/sys/syscall.d, core/sys/linux/syscall.d.
* libdruntime/Makefile.in: Regenerate.
* src/MERGE: Merge upstream phobos 5a142da0a.
* src/Makefile.am (PHOBOS_DSOURCES): Remove
std/internal/windows/bcrypt.d.
* src/Makefile.in: Regenerate.
gcc/testsuite/ChangeLog:
* gdc.dg/asm1.d: Adjust test.
---
gcc/d/decl.cc | 4 +-
gcc/d/dmd/MERGE | 2 +-
gcc/d/dmd/VERSION | 2 +-
gcc/d/dmd/aggregate.d | 2 -
gcc/d/dmd/aggregate.h | 6 +-
gcc/d/dmd/arraytypes.d | 1 +
gcc/d/dmd/arraytypes.h | 2 +
gcc/d/dmd/attrib.d | 5 -
gcc/d/dmd/attrib.h | 1 -
gcc/d/dmd/cond.d | 116 +-
gcc/d/dmd/cond.h | 4 -
gcc/d/dmd/cparse.d | 332 +++--
gcc/d/dmd/cxxfrontend.d | 27 +-
gcc/d/dmd/dcast.d | 44 +-
gcc/d/dmd/dclass.d | 212 ---
gcc/d/dmd/declaration.d | 103 --
gcc/d/dmd/declaration.h | 4 +-
gcc/d/dmd/delegatize.d | 1 +
gcc/d/dmd/dinterpret.d | 64 +-
gcc/d/dmd/dmodule.d | 99 +-
gcc/d/dmd/dscope.d | 2 +-
gcc/d/dmd/dstruct.d | 223 +--
gcc/d/dmd/dsymbol.d | 79 +-
gcc/d/dmd/dsymbol.h | 5 +-
gcc/d/dmd/dsymbolsem.d | 893 +++++++++++-
gcc/d/dmd/dtemplate.d | 17 +-
gcc/d/dmd/enumsem.d | 140 +-
gcc/d/dmd/expression.d | 43 +-
gcc/d/dmd/expression.h | 29 +-
gcc/d/dmd/expressionsem.d | 364 +++--
gcc/d/dmd/func.d | 6 +-
gcc/d/dmd/funcsem.d | 1252 ++++++++++-------
gcc/d/dmd/hdrgen.d | 14 +-
gcc/d/dmd/iasmgcc.d | 53 +-
gcc/d/dmd/id.d | 1 -
gcc/d/dmd/imphint.d | 24 +
gcc/d/dmd/importc.d | 132 +-
gcc/d/dmd/initsem.d | 47 +-
gcc/d/dmd/location.d | 127 +-
gcc/d/dmd/mangle/package.d | 6 +-
gcc/d/dmd/mtype.d | 10 +-
gcc/d/dmd/mtype.h | 2 +
gcc/d/dmd/nogc.d | 57 +-
gcc/d/dmd/nspace.d | 6 -
gcc/d/dmd/nspace.h | 1 -
gcc/d/dmd/optimize.d | 3 +-
gcc/d/dmd/parse.d | 81 +-
gcc/d/dmd/semantic2.d | 16 +-
gcc/d/dmd/semantic3.d | 4 +-
gcc/d/dmd/statementsem.d | 32 +-
gcc/d/dmd/template.h | 2 +-
gcc/d/dmd/templatesem.d | 13 +-
gcc/d/dmd/traits.d | 2 +-
gcc/d/dmd/typesem.d | 95 +-
gcc/d/typeinfo.cc | 4 +-
gcc/testsuite/gdc.dg/asm1.d | 12 +-
.../gdc.test/compilable/imports/cstuff3.c | 13 +
.../gdc.test/compilable/imports/imp18127a.c | 74 +
.../gdc.test/compilable/imports/imp18127b.c | 74 +
.../gdc.test/compilable/imports/imp20344.c | 2 +
.../gdc.test/compilable/imports/imp20499.c | 8 +
gcc/testsuite/gdc.test/compilable/test18127.d | 5 +
gcc/testsuite/gdc.test/compilable/test20344.d | 14 +
gcc/testsuite/gdc.test/compilable/test20499.d | 3 +
gcc/testsuite/gdc.test/compilable/test3004.d | 2 +-
.../gdc.test/compilable/testcstuff3.d | 19 +
.../gdc.test/compilable/uda_lambda.d | 3 +
gcc/testsuite/gdc.test/compilable/vcg-ast.d | 11 +
.../gdc.test/fail_compilation/b23686.d | 2 +-
.../gdc.test/fail_compilation/checkimports2.d | 10 +-
.../gdc.test/fail_compilation/diag10405.d | 11 -
.../gdc.test/fail_compilation/diag20888.d | 10 +-
.../gdc.test/fail_compilation/diag23384.d | 4 +-
.../gdc.test/fail_compilation/diag9679.d | 19 +-
.../fail_compilation/diag_ptr_conversion.d | 17 +
.../fail_compilation/enum_auto_increment.d | 18 +
.../gdc.test/fail_compilation/fail109.d | 14 +-
.../gdc.test/fail_compilation/fail11714.d | 6 +-
.../gdc.test/fail_compilation/fail15361.d | 3 +-
.../gdc.test/fail_compilation/fail15616b.d | 2 +-
.../gdc.test/fail_compilation/fail16.d | 5 +-
.../gdc.test/fail_compilation/fail163.d | 16 +-
.../gdc.test/fail_compilation/fail18219.d | 11 +-
.../gdc.test/fail_compilation/fail19103.d | 4 +-
.../gdc.test/fail_compilation/fail196.d | 2 +-
.../gdc.test/fail_compilation/fail21547.d | 6 +-
.../gdc.test/fail_compilation/fail23439.d | 3 +-
.../gdc.test/fail_compilation/fail305.d | 11 -
.../gdc.test/fail_compilation/fail336.d | 3 +-
.../gdc.test/fail_compilation/fail347.d | 8 +-
.../gdc.test/fail_compilation/fail41.d | 18 -
.../gdc.test/fail_compilation/fail98.d | 5 +-
.../fail_compilation/fail_pretty_errors.d | 2 +-
.../gdc.test/fail_compilation/failcontracts.d | 17 +-
.../gdc.test/fail_compilation/fix19613.d | 16 +
.../gdc.test/fail_compilation/fix20075.d | 21 +
.../gdc.test/fail_compilation/fix20318.d | 46 +
.../gdc.test/fail_compilation/fix20867.d | 20 +
.../gdc.test/fail_compilation/fix21042.d | 15 +
.../gdc.test/fail_compilation/fix21165.d | 30 +
.../gdc.test/fail_compilation/fix21166.d | 13 +
.../gdc.test/fail_compilation/hidden_ctor.d | 27 +
.../gdc.test/fail_compilation/ice11153.d | 5 +-
.../gdc.test/fail_compilation/ice19755.d | 5 +-
.../fail_compilation/imports/imp18127a.c | 83 ++
.../fail_compilation/imports/imp18127b.c | 80 ++
.../gdc.test/fail_compilation/lookup.d | 10 +-
.../gdc.test/fail_compilation/mixinprop.d | 4 +-
.../fail_compilation/named_arguments_error.d | 35 +-
.../named_arguments_ifti_error.d | 15 +-
.../gdc.test/fail_compilation/nogc3.d | 30 +
.../fail_compilation/nonvoid_return.d | 37 +
.../gdc.test/fail_compilation/noreturn2.d | 2 +-
.../gdc.test/fail_compilation/powinline.d | 38 +
.../gdc.test/fail_compilation/retscope3.d | 10 +
.../gdc.test/fail_compilation/seq_assign.d | 43 +
.../gdc.test/fail_compilation/test15989.d | 8 +-
.../gdc.test/fail_compilation/test18127.d | 106 ++
.../gdc.test/fail_compilation/test19661.d | 3 +-
.../gdc.test/fail_compilation/test20489.d | 20 +
.../gdc.test/fail_compilation/test21215.d | 35 +
.../gdc.test/fail_compilation/test21304.d | 6 +
.../gdc.test/fail_compilation/test21317.d | 39 +
.../fail_compilation/testrvaluecpctor.d | 2 +-
.../gdc.test/fail_compilation/uda_lambda.d | 7 +
.../gdc.test/fail_compilation/union_conv.d | 2 +-
gcc/testsuite/gdc.test/runnable/placenew.d | 43 +
gcc/testsuite/gdc.test/runnable/powinline.d | 64 +
gcc/testsuite/gdc.test/runnable/testaa2.d | 21 +
.../gdc.test/runnable/testinvariant.d | 47 +-
libphobos/libdruntime/MERGE | 2 +-
libphobos/libdruntime/Makefile.am | 5 +-
libphobos/libdruntime/Makefile.in | 12 +-
libphobos/libdruntime/core/int128.d | 245 +++-
.../core/internal/array/capacity.d | 344 ++++-
.../core/internal/array/concatenation.d | 47 +-
.../core/internal/array/construction.d | 6 +-
.../libdruntime/core/internal/array/utils.d | 25 +
.../libdruntime/core/internal/lifetime.d | 19 +
libphobos/libdruntime/core/stdc/fenv.d | 5 +
libphobos/libdruntime/core/stdc/math.d | 36 +-
libphobos/libdruntime/core/stdc/stdarg.d | 2 +-
libphobos/libdruntime/core/sys/bionic/err.d | 2 +-
.../libdruntime/core/sys/bionic/string.d | 2 +-
libphobos/libdruntime/core/sys/darwin/err.d | 2 +-
.../libdruntime/core/sys/darwin/string.d | 2 +-
.../libdruntime/core/sys/dragonflybsd/err.d | 2 +-
.../core/sys/dragonflybsd/string.d | 2 +-
libphobos/libdruntime/core/sys/freebsd/err.d | 2 +-
.../libdruntime/core/sys/freebsd/string.d | 2 +-
libphobos/libdruntime/core/sys/linux/err.d | 2 +-
.../core/sys/linux/linux/if_packet.d | 2 +-
.../libdruntime/core/sys/linux/netinet/in_.d | 14 +-
.../libdruntime/core/sys/linux/perf_event.d | 77 +-
libphobos/libdruntime/core/sys/linux/sched.d | 30 +-
libphobos/libdruntime/core/sys/linux/string.d | 2 +-
.../libdruntime/core/sys/linux/sys/syscall.d | 127 ++
.../libdruntime/core/sys/linux/sys/time.d | 8 +-
.../libdruntime/core/sys/linux/syscall.d | 14 +
libphobos/libdruntime/core/sys/linux/unistd.d | 5 +
libphobos/libdruntime/core/sys/netbsd/err.d | 2 +-
.../libdruntime/core/sys/netbsd/string.d | 2 +-
.../core/sys/netbsd/sys/featuretest.d | 2 +-
libphobos/libdruntime/core/sys/openbsd/err.d | 2 +-
.../libdruntime/core/sys/openbsd/string.d | 2 +-
libphobos/libdruntime/core/sys/posix/netdb.d | 20 +-
.../libdruntime/core/sys/posix/netinet/in_.d | 202 +--
libphobos/libdruntime/core/sys/posix/signal.d | 21 +-
.../libdruntime/core/sys/posix/sys/ioctl.d | 10 +-
.../libdruntime/core/sys/posix/sys/select.d | 104 +-
.../libdruntime/core/sys/posix/sys/socket.d | 14 +-
.../libdruntime/core/sys/posix/sys/stat.d | 162 +--
.../libdruntime/core/sys/posix/sys/wait.d | 152 +-
libphobos/libdruntime/core/sys/solaris/err.d | 2 +-
.../libdruntime/core/sys/windows/basetsd.d | 38 +-
.../libdruntime/core/sys/windows/commctrl.d | 4 +-
libphobos/libdruntime/core/sys/windows/dde.d | 60 +-
.../libdruntime/core/sys/windows/mmsystem.d | 26 +-
.../libdruntime/core/sys/windows/ntdef.d | 8 +-
.../libdruntime/core/sys/windows/ntsecapi.d | 2 +-
.../libdruntime/core/sys/windows/oleauto.d | 2 +-
.../libdruntime/core/sys/windows/shlobj.d | 146 +-
libphobos/libdruntime/core/sys/windows/stat.d | 10 +-
.../libdruntime/core/sys/windows/threadaux.d | 4 +-
libphobos/libdruntime/core/sys/windows/vfw.d | 138 +-
.../libdruntime/core/sys/windows/winbase.d | 16 +-
.../libdruntime/core/sys/windows/wincrypt.d | 10 +-
.../libdruntime/core/sys/windows/winnt.d | 46 +-
.../libdruntime/core/sys/windows/winuser.d | 12 +-
libphobos/libdruntime/core/volatile.d | 2 +-
libphobos/libdruntime/object.d | 19 +-
libphobos/libdruntime/rt/lifetime.d | 366 -----
libphobos/libdruntime/rt/minfo.d | 3 +
libphobos/src/MERGE | 2 +-
libphobos/src/Makefile.am | 17 +-
libphobos/src/Makefile.in | 19 +-
libphobos/src/std/algorithm/iteration.d | 361 ++++-
libphobos/src/std/algorithm/searching.d | 75 +-
libphobos/src/std/complex.d | 41 +-
libphobos/src/std/container/rbtree.d | 25 +
libphobos/src/std/conv.d | 533 +++++--
libphobos/src/std/encoding.d | 2 +-
libphobos/src/std/file.d | 27 +-
libphobos/src/std/format/internal/write.d | 20 +-
libphobos/src/std/format/write.d | 11 +-
libphobos/src/std/functional.d | 1 -
libphobos/src/std/internal/math/biguintcore.d | 83 +-
libphobos/src/std/internal/windows/bcrypt.d | 65 -
libphobos/src/std/json.d | 47 +
libphobos/src/std/math/algebraic.d | 48 +-
libphobos/src/std/math/exponential.d | 43 +-
libphobos/src/std/net/curl.d | 3 +-
libphobos/src/std/path.d | 7 +-
libphobos/src/std/random.d | 84 +-
libphobos/src/std/sumtype.d | 26 +-
libphobos/src/std/traits.d | 9 +-
libphobos/src/std/uuid.d | 60 +-
libphobos/src/std/variant.d | 52 +-
218 files changed, 6741 insertions(+), 3845 deletions(-)
create mode 100644 gcc/testsuite/gdc.test/compilable/imports/imp18127a.c
create mode 100644 gcc/testsuite/gdc.test/compilable/imports/imp18127b.c
create mode 100644 gcc/testsuite/gdc.test/compilable/imports/imp20344.c
create mode 100644 gcc/testsuite/gdc.test/compilable/imports/imp20499.c
create mode 100644 gcc/testsuite/gdc.test/compilable/test18127.d
create mode 100644 gcc/testsuite/gdc.test/compilable/test20344.d
create mode 100644 gcc/testsuite/gdc.test/compilable/test20499.d
create mode 100644 gcc/testsuite/gdc.test/compilable/uda_lambda.d
delete mode 100644 gcc/testsuite/gdc.test/fail_compilation/diag10405.d
create mode 100644 gcc/testsuite/gdc.test/fail_compilation/diag_ptr_conversion.d
create mode 100644 gcc/testsuite/gdc.test/fail_compilation/enum_auto_increment.d
delete mode 100644 gcc/testsuite/gdc.test/fail_compilation/fail305.d
delete mode 100644 gcc/testsuite/gdc.test/fail_compilation/fail41.d
create mode 100644 gcc/testsuite/gdc.test/fail_compilation/fix19613.d
create mode 100644 gcc/testsuite/gdc.test/fail_compilation/fix20075.d
create mode 100644 gcc/testsuite/gdc.test/fail_compilation/fix20318.d
create mode 100644 gcc/testsuite/gdc.test/fail_compilation/fix20867.d
create mode 100644 gcc/testsuite/gdc.test/fail_compilation/fix21042.d
create mode 100644 gcc/testsuite/gdc.test/fail_compilation/fix21165.d
create mode 100644 gcc/testsuite/gdc.test/fail_compilation/fix21166.d
create mode 100644 gcc/testsuite/gdc.test/fail_compilation/hidden_ctor.d
create mode 100644 gcc/testsuite/gdc.test/fail_compilation/imports/imp18127a.c
create mode 100644 gcc/testsuite/gdc.test/fail_compilation/imports/imp18127b.c
create mode 100644 gcc/testsuite/gdc.test/fail_compilation/nonvoid_return.d
create mode 100644 gcc/testsuite/gdc.test/fail_compilation/powinline.d
create mode 100644 gcc/testsuite/gdc.test/fail_compilation/seq_assign.d
create mode 100644 gcc/testsuite/gdc.test/fail_compilation/test18127.d
create mode 100644 gcc/testsuite/gdc.test/fail_compilation/test20489.d
create mode 100644 gcc/testsuite/gdc.test/fail_compilation/test21215.d
create mode 100644 gcc/testsuite/gdc.test/fail_compilation/test21304.d
create mode 100644 gcc/testsuite/gdc.test/fail_compilation/test21317.d
create mode 100644 gcc/testsuite/gdc.test/fail_compilation/uda_lambda.d
create mode 100644 gcc/testsuite/gdc.test/runnable/powinline.d
create mode 100644 libphobos/libdruntime/core/sys/linux/sys/syscall.d
create mode 100644 libphobos/libdruntime/core/sys/linux/syscall.d
delete mode 100644 libphobos/src/std/internal/windows/bcrypt.d
-------------- next part --------------
A non-text attachment was scrubbed...
Name: merge.patch.xz
Type: application/x-xz
Size: 108808 bytes
Desc: not available
URL: <https://gcc.gnu.org/pipermail/gcc-patches/attachments/20260130/c9c45d8e/attachment-0001.xz>
More information about the Gcc-patches
mailing list