Hi, This patch merges the D front-end and run-time library with upstream dmd 4c18eed967, and standard library with phobos d945686a4.
Synchronizing with the upstream development branch as of 2023-10-16. D front-end changes: - Import latest fixes to mainline. D runtime changes: - Import latest fixes to mainline. Phobos changes: - Import latest fixes to mainline. Bootstrapped and regression tested on x86_64-linux-gnu/-m32, committed to mainline. Regards, Iain. --- gcc/d/ChangeLog: * dmd/MERGE: Merge upstream dmd 4c18eed967. * d-diagnostic.cc (verrorReport): Update for new front-end interface. (verrorReportSupplemental): Likewise. * d-lang.cc (d_init_options): Likewise. (d_handle_option): Likewise. (d_post_options): Likewise. (d_parse_file): Likewise. * decl.cc (get_symbol_decl): Likewise. libphobos/ChangeLog: * libdruntime/MERGE: Merge upstream druntime 4c18eed967. * src/MERGE: Merge upstream phobos d945686a4. --- gcc/d/d-diagnostic.cc | 4 +- gcc/d/d-lang.cc | 86 +- gcc/d/decl.cc | 4 +- gcc/d/dmd/MERGE | 2 +- gcc/d/dmd/access.d | 3 +- gcc/d/dmd/aggregate.d | 11 +- gcc/d/dmd/aggregate.h | 1 + gcc/d/dmd/arrayop.d | 11 +- gcc/d/dmd/attrib.d | 7 +- gcc/d/dmd/blockexit.d | 19 +- gcc/d/dmd/canthrow.d | 43 +- gcc/d/dmd/clone.d | 2 +- gcc/d/dmd/compiler.d | 1 - gcc/d/dmd/cond.d | 4 + gcc/d/dmd/constfold.d | 18 +- gcc/d/dmd/cparse.d | 5 +- gcc/d/dmd/cppmangle.d | 10 +- gcc/d/dmd/ctfe.h | 1 - gcc/d/dmd/ctfeexpr.d | 8 +- gcc/d/dmd/dcast.d | 53 +- gcc/d/dmd/dclass.d | 58 +- gcc/d/dmd/declaration.d | 16 +- gcc/d/dmd/denum.d | 5 +- gcc/d/dmd/dimport.d | 2 +- gcc/d/dmd/dinterpret.d | 296 +++---- gcc/d/dmd/dmangle.d | 20 +- gcc/d/dmd/dmodule.d | 44 +- gcc/d/dmd/doc.d | 2 +- gcc/d/dmd/dstruct.d | 2 +- gcc/d/dmd/dsymbol.d | 87 +- gcc/d/dmd/dsymbol.h | 4 - gcc/d/dmd/dsymbolsem.d | 306 +++---- gcc/d/dmd/dtemplate.d | 69 +- gcc/d/dmd/dtoh.d | 20 + gcc/d/dmd/dversion.d | 13 +- gcc/d/dmd/expression.d | 336 +++----- gcc/d/dmd/expression.h | 6 +- gcc/d/dmd/expressionsem.d | 439 +++++----- gcc/d/dmd/func.d | 36 +- gcc/d/dmd/globals.d | 57 +- gcc/d/dmd/globals.h | 48 +- gcc/d/dmd/hdrgen.d | 760 ++++++++++-------- gcc/d/dmd/iasm.d | 1 + gcc/d/dmd/id.d | 2 + gcc/d/dmd/importc.d | 5 +- gcc/d/dmd/init.d | 8 - gcc/d/dmd/init.h | 2 - gcc/d/dmd/initsem.d | 31 +- gcc/d/dmd/json.d | 4 +- gcc/d/dmd/lexer.d | 75 +- gcc/d/dmd/mtype.d | 6 +- gcc/d/dmd/mustuse.d | 3 +- gcc/d/dmd/nogc.d | 4 +- gcc/d/dmd/nspace.d | 3 +- gcc/d/dmd/ob.d | 20 +- gcc/d/dmd/objc.d | 32 +- gcc/d/dmd/opover.d | 32 +- gcc/d/dmd/optimize.d | 53 +- gcc/d/dmd/parse.d | 15 +- gcc/d/dmd/root/filename.d | 7 +- gcc/d/dmd/root/rootobject.d | 6 +- gcc/d/dmd/semantic2.d | 34 +- gcc/d/dmd/semantic3.d | 48 +- gcc/d/dmd/sideeffect.d | 9 +- gcc/d/dmd/statement.d | 167 +--- gcc/d/dmd/statement.h | 8 +- gcc/d/dmd/statementsem.d | 192 ++++- gcc/d/dmd/staticcond.d | 3 +- gcc/d/dmd/traits.d | 104 +-- gcc/d/dmd/typesem.d | 42 +- gcc/d/dmd/typinf.d | 4 + .../compilable/dtoh_TemplateDeclaration.d | 2 - .../gdc.test/compilable/issue24174.d | 36 + .../testpull1810.d | 2 +- .../warn12809.d | 28 +- .../gdc.test/fail_compilation/ccast.d | 10 +- .../gdc.test/fail_compilation/fail235.d | 4 +- .../gdc.test/fail_compilation/hexstring.d | 18 + .../gdc.test/fail_compilation/ice6538.d | 2 +- .../gdc.test/fail_compilation/issue11070.d | 17 + .../gdc.test/fail_compilation/issue3396.d | 24 + .../fail_compilation/reserved_version.d | 98 ++- .../reserved_version_switch.d | 12 + .../gdc.test/fail_compilation/test20522.d | 23 + gcc/testsuite/gdc.test/runnable/issue11070.d | 19 + gcc/testsuite/gdc.test/runnable/staticaa.d | 27 + gcc/testsuite/gdc.test/runnable/template9.d | 7 + libphobos/libdruntime/MERGE | 2 +- libphobos/libdruntime/core/stdc/errno.d | 103 +++ libphobos/libdruntime/core/stdc/fenv.d | 31 + libphobos/libdruntime/core/stdc/math.d | 7 + libphobos/libdruntime/core/sys/linux/dlfcn.d | 14 + libphobos/libdruntime/core/sys/linux/epoll.d | 8 + libphobos/libdruntime/core/sys/linux/link.d | 6 + .../libdruntime/core/sys/linux/perf_event.d | 4 + .../libdruntime/core/sys/linux/sys/eventfd.d | 6 + .../libdruntime/core/sys/linux/sys/inotify.d | 5 + .../libdruntime/core/sys/linux/sys/mman.d | 24 + libphobos/libdruntime/core/sys/posix/dlfcn.d | 12 + libphobos/libdruntime/core/sys/posix/fcntl.d | 35 +- libphobos/libdruntime/core/sys/posix/setjmp.d | 15 + libphobos/libdruntime/core/sys/posix/signal.d | 34 + .../libdruntime/core/sys/posix/sys/mman.d | 2 + .../libdruntime/core/sys/posix/sys/msg.d | 1 + .../libdruntime/core/sys/posix/sys/socket.d | 34 + .../libdruntime/core/sys/posix/sys/stat.d | 60 ++ .../libdruntime/core/sys/posix/sys/types.d | 12 + .../libdruntime/core/sys/posix/ucontext.d | 27 + libphobos/libdruntime/core/thread/fiber.d | 26 + libphobos/src/MERGE | 2 +- libphobos/src/std/algorithm/iteration.d | 6 +- libphobos/src/std/range/primitives.d | 24 +- 112 files changed, 2727 insertions(+), 1941 deletions(-) create mode 100644 gcc/testsuite/gdc.test/compilable/issue24174.d rename gcc/testsuite/gdc.test/{fail_compilation => compilable}/testpull1810.d (85%) rename gcc/testsuite/gdc.test/{fail_compilation => compilable}/warn12809.d (71%) create mode 100644 gcc/testsuite/gdc.test/fail_compilation/hexstring.d create mode 100644 gcc/testsuite/gdc.test/fail_compilation/issue11070.d create mode 100644 gcc/testsuite/gdc.test/fail_compilation/issue3396.d create mode 100644 gcc/testsuite/gdc.test/fail_compilation/test20522.d create mode 100644 gcc/testsuite/gdc.test/runnable/issue11070.d
merge.patch.xz
Description: application/xz