Hi,

This patch merges the D front-end implementation with upstream dmd
cb49e99f8, as well as the D runtime libraries with druntime 55528bd1,
and phobos 1a3e80ec2, synchronizing with the release of 2.099.0-beta1.

D front-end changes:

    - Import dmd v2.099.0-beta.1.
    - It's now an error to use `alias this' for partial assignment.
    - The `delete' keyword has been removed from the language.
    - Using `this' and `super' as types has been removed from the
      language, the parser no longer specially handles this wrong code
      with an informative error.

D Runtime changes:

    - Import druntime v2.099.0-beta.1.

Phobos changes:

    - Import phobos v2.099.0-beta.1.


Bootstrapped and regression tested on x86_64-linux-gnu/-m32/-mx32, and
committed to mainline.

Regards,
Iain.

---
gcc/d/ChangeLog:

        * dmd/MERGE: Merge upstream dmd cb49e99f8.
        * dmd/VERSION: Update version to v2.099.0-beta.1.
        * decl.cc (layout_class_initializer): Update call to NewExp::create.
        * expr.cc (ExprVisitor::visit (DeleteExp *)): Remove handling of
        deleting arrays and pointers.
        (ExprVisitor::visit (DotVarExp *)): Convert complex types to the
        front-end library type representing them.
        (ExprVisitor::visit (StringExp *)): Use getCodeUnit instead of charAt
        to get the value of each index in a string expression.
        * runtime.def (DELMEMORY): Remove.
        (DELARRAYT): Remove.
        * types.cc (TypeVisitor::visit (TypeEnum *)): Handle anonymous enums.

libphobos/ChangeLog:

        * libdruntime/MERGE: Merge upstream druntime 55528bd1.
        * src/MERGE: Merge upstream phobos 1a3e80ec2.
        * testsuite/libphobos.hash/test_hash.d: Update.
        * testsuite/libphobos.betterc/test19933.d: New test.
---
 gcc/d/decl.cc                                 |    2 +-
 gcc/d/dmd/MERGE                               |    2 +-
 gcc/d/dmd/VERSION                             |    2 +-
 gcc/d/dmd/apply.d                             |    4 +-
 gcc/d/dmd/canthrow.d                          |   12 +-
 gcc/d/dmd/clone.d                             |   37 +-
 gcc/d/dmd/constfold.d                         |    6 +-
 gcc/d/dmd/cparse.d                            |   27 +-
 gcc/d/dmd/ctfeexpr.d                          |    2 +-
 gcc/d/dmd/dcast.d                             | 4267 ++++++++---------
 gcc/d/dmd/declaration.d                       |    5 +-
 gcc/d/dmd/declaration.h                       |    1 -
 gcc/d/dmd/dinterpret.d                        |  106 +-
 gcc/d/dmd/dmangle.d                           |    3 +-
 gcc/d/dmd/dmodule.d                           |   78 +-
 gcc/d/dmd/dscope.d                            |    2 +-
 gcc/d/dmd/dsymbol.d                           |   11 +-
 gcc/d/dmd/dsymbol.h                           |    2 +
 gcc/d/dmd/dsymbolsem.d                        |  184 +-
 gcc/d/dmd/dtemplate.d                         |   52 +-
 gcc/d/dmd/dtoh.d                              |   24 +-
 gcc/d/dmd/escape.d                            |    2 +-
 gcc/d/dmd/expression.d                        |  115 +-
 gcc/d/dmd/expression.h                        |   17 +-
 gcc/d/dmd/expressionsem.d                     |  304 +-
 gcc/d/dmd/func.d                              |    3 +-
 gcc/d/dmd/hdrgen.d                            |   70 +-
 gcc/d/dmd/iasmgcc.d                           |    2 +-
 gcc/d/dmd/id.d                                |    4 -
 gcc/d/dmd/importc.d                           |   47 +
 gcc/d/dmd/initsem.d                           |    4 +
 gcc/d/dmd/lexer.d                             |  444 +-
 gcc/d/dmd/mtype.d                             |   45 +-
 gcc/d/dmd/nogc.d                              |   42 +-
 gcc/d/dmd/opover.d                            |  342 +-
 gcc/d/dmd/optimize.d                          |    7 -
 gcc/d/dmd/parse.d                             |  794 +--
 gcc/d/dmd/printast.d                          |   10 +
 gcc/d/dmd/semantic2.d                         |    2 +-
 gcc/d/dmd/semantic3.d                         |   22 +-
 gcc/d/dmd/statementsem.d                      |  206 +-
 gcc/d/dmd/staticassert.d                      |    5 +
 gcc/d/dmd/staticassert.h                      |    1 +
 gcc/d/dmd/tokens.d                            |  120 +-
 gcc/d/dmd/tokens.h                            |   13 +-
 gcc/d/dmd/transitivevisitor.d                 |    4 -
 gcc/d/dmd/typesem.d                           |   80 +-
 gcc/d/expr.cc                                 |   46 +-
 gcc/d/runtime.def                             |    7 -
 gcc/d/types.cc                                |   14 +-
 gcc/testsuite/gdc.dg/special1.d               |   12 +
 gcc/testsuite/gdc.test/compilable/99bottles.d |  212 +-
 gcc/testsuite/gdc.test/compilable/b18242.d    |    6 +-
 gcc/testsuite/gdc.test/compilable/b19294.d    |   10 +-
 gcc/testsuite/gdc.test/compilable/b20938.d    |    6 +-
 gcc/testsuite/gdc.test/compilable/b21285.d    |   10 +-
 .../gdc.test/compilable/commontype.d          |    9 +-
 gcc/testsuite/gdc.test/compilable/ddoc10.d    |    2 +-
 gcc/testsuite/gdc.test/compilable/ddoc11.d    |    2 +-
 gcc/testsuite/gdc.test/compilable/ddoc14.d    |    2 +-
 gcc/testsuite/gdc.test/compilable/ddoc3.d     |    2 +-
 gcc/testsuite/gdc.test/compilable/ddoc5.d     |    4 +-
 gcc/testsuite/gdc.test/compilable/ddoc5446.d  |   22 +-
 gcc/testsuite/gdc.test/compilable/ddoc9155.d  |   10 +-
 .../gdc.test/compilable/debugInference.d      |    6 +-
 gcc/testsuite/gdc.test/compilable/defa.d      |    2 +-
 .../gdc.test/compilable/dlangui_crash.d       |   34 +
 .../gdc.test/compilable/enumbasearithmetic.d  |   20 +
 .../gdc.test/compilable/header18364.d         |    2 +-
 .../gdc.test/compilable/imports/b33a.d        |    4 +-
 .../gdc.test/compilable/imports/imp22734.c    |    3 +
 .../gdc.test/compilable/imports/test22714a.d  |    3 +
 .../gdc.test/compilable/imports/test22714b.d  |   12 +
 .../gdc.test/compilable/issue16472.d          |   42 +
 .../gdc.test/compilable/issue21340.d          |    4 +-
 .../gdc.test/compilable/issue21813b.d         |    2 +-
 gcc/testsuite/gdc.test/compilable/minimal.d   |    2 +-
 gcc/testsuite/gdc.test/compilable/test10993.d |    2 +-
 gcc/testsuite/gdc.test/compilable/test16107.d |    6 +-
 gcc/testsuite/gdc.test/compilable/test17545.d |    2 +-
 gcc/testsuite/gdc.test/compilable/test17906.d |    7 -
 gcc/testsuite/gdc.test/compilable/test18030.d |    2 +-
 gcc/testsuite/gdc.test/compilable/test19014.d |    2 +-
 gcc/testsuite/gdc.test/compilable/test19315.d |    2 +-
 gcc/testsuite/gdc.test/compilable/test19557.d |    2 +-
 gcc/testsuite/gdc.test/compilable/test19609.d |    4 +-
 gcc/testsuite/gdc.test/compilable/test21177.d |   76 +
 gcc/testsuite/gdc.test/compilable/test21196.d |   71 +
 gcc/testsuite/gdc.test/compilable/test22224.d |    2 +-
 gcc/testsuite/gdc.test/compilable/test22632.d |    4 +
 gcc/testsuite/gdc.test/compilable/test22714.d |    3 +
 gcc/testsuite/gdc.test/compilable/test22734.d |    6 +
 gcc/testsuite/gdc.test/compilable/test4375.d  |    6 +-
 gcc/testsuite/gdc.test/compilable/test7172.d  |    2 +-
 gcc/testsuite/gdc.test/compilable/test8296.d  |    4 +-
 gcc/testsuite/gdc.test/compilable/test8513.d  |    8 +-
 .../gdc.test/compilable/testpostblit.d        |    2 +-
 .../gdc.test/compilable/testsctreturn.d       |   16 +
 .../gdc.test/compilable/typeid_name.d         |    2 +-
 gcc/testsuite/gdc.test/compilable/vgc1.d      |   17 +-
 .../gdc.test/fail_compilation/b20011.d        |    2 +-
 .../gdc.test/fail_compilation/b3841.d         |    2 +-
 .../gdc.test/fail_compilation/bug16165.d      |    2 +-
 .../gdc.test/fail_compilation/bug8150a.d      |    2 +-
 .../gdc.test/fail_compilation/bug8150b.d      |    2 +-
 .../gdc.test/fail_compilation/ccast.d         |    2 +-
 .../gdc.test/fail_compilation/ctfe14731.d     |    2 +-
 .../gdc.test/fail_compilation/diag10319.d     |    2 +-
 .../gdc.test/fail_compilation/diag10805.d     |    2 +-
 .../gdc.test/fail_compilation/diag13281.d     |    6 +-
 .../gdc.test/fail_compilation/diag15713.d     |    4 +-
 .../gdc.test/fail_compilation/diag16977.d     |    4 +-
 .../fail_compilation/dtor_attributes.d        |    2 +-
 .../gdc.test/fail_compilation/fail10964.d     |    2 +-
 .../gdc.test/fail_compilation/fail11375.d     |    2 +-
 .../gdc.test/fail_compilation/fail11542.d     |    8 +-
 .../gdc.test/fail_compilation/fail12809.d     |    8 +-
 .../gdc.test/fail_compilation/fail14277.d     |   10 +
 .../gdc.test/fail_compilation/fail14486.d     |   45 +-
 .../gdc.test/fail_compilation/fail14554.d     |    4 +-
 .../gdc.test/fail_compilation/fail15089.d     |    2 +-
 .../gdc.test/fail_compilation/fail160.d       |    2 +-
 .../gdc.test/fail_compilation/fail17906.d     |   12 +
 .../gdc.test/fail_compilation/fail17969.d     |    2 +-
 .../gdc.test/fail_compilation/fail18228.d     |    6 +-
 .../gdc.test/fail_compilation/fail19441.d     |    2 +-
 .../gdc.test/fail_compilation/fail196.d       |   10 +-
 .../gdc.test/fail_compilation/fail19897.d     |    2 +-
 .../gdc.test/fail_compilation/fail19911b.d    |    2 +-
 .../gdc.test/fail_compilation/fail19911c.d    |    2 +-
 .../gdc.test/fail_compilation/fail19922.d     |    2 +-
 .../gdc.test/fail_compilation/fail19923.d     |    2 +-
 .../gdc.test/fail_compilation/fail20.d        |    2 +-
 .../gdc.test/fail_compilation/fail20800.d     |    2 +-
 .../gdc.test/fail_compilation/fail22127.d     |   11 +
 .../gdc.test/fail_compilation/fail22634.d     |   12 +
 .../gdc.test/fail_compilation/fail22780.d     |   12 +
 .../gdc.test/fail_compilation/fail2361.d      |    3 +-
 .../gdc.test/fail_compilation/fail258.d       |   12 +-
 .../gdc.test/fail_compilation/fail332.d       |    2 +-
 .../gdc.test/fail_compilation/fail349.d       |    2 +-
 .../gdc.test/fail_compilation/fail354.d       |    2 +-
 .../gdc.test/fail_compilation/fail4082.d      |    4 +-
 .../gdc.test/fail_compilation/fail4269a.d     |    2 +-
 .../gdc.test/fail_compilation/fail4269b.d     |    2 +-
 .../gdc.test/fail_compilation/fail4269c.d     |    2 +-
 .../gdc.test/fail_compilation/fail4375d.d     |    2 +-
 .../gdc.test/fail_compilation/fail6968.d      |    2 +-
 .../gdc.test/fail_compilation/fail7848.d      |    4 +-
 .../gdc.test/fail_compilation/fail80_m32.d    |    2 +-
 .../gdc.test/fail_compilation/fail80_m64.d    |    2 +-
 .../gdc.test/fail_compilation/fail8724.d      |    2 +-
 .../gdc.test/fail_compilation/fail_arrayop2.d |    6 +-
 .../gdc.test/fail_compilation/fail_typeof.d   |   82 +
 .../gdc.test/fail_compilation/faildeleteaa.d  |    3 +-
 .../gdc.test/fail_compilation/ice10727a.d     |    2 +
 .../gdc.test/fail_compilation/ice10727b.d     |    2 +
 .../gdc.test/fail_compilation/ice11968.d      |    3 +-
 .../gdc.test/fail_compilation/ice18753.d      |    2 +-
 .../gdc.test/fail_compilation/lexer1.d        |    4 +-
 .../gdc.test/fail_compilation/no_Throwable.d  |    2 +-
 .../gdc.test/fail_compilation/no_TypeInfo.d   |    2 +-
 .../gdc.test/fail_compilation/nogc1.d         |    9 +-
 .../gdc.test/fail_compilation/noreturn2.d     |    2 +-
 .../gdc.test/fail_compilation/scope_type.d    |    2 +-
 .../gdc.test/fail_compilation/test12228.d     |    6 +-
 .../gdc.test/fail_compilation/test16195.d     |    3 +-
 .../gdc.test/fail_compilation/test17307.d     |    2 +-
 .../gdc.test/fail_compilation/test20245.d     |   53 +-
 .../gdc.test/fail_compilation/test22145.d     |   28 +
 .../gdc.test/fail_compilation/test22686.d     |   21 +
 gcc/testsuite/gdc.test/runnable/b18034.d      |   10 +-
 .../gdc.test/runnable/imports/a15079.d        |    2 +-
 .../gdc.test/runnable/imports/a19a.d          |    2 +-
 .../gdc.test/runnable/imports/link12144a.d    |    2 +-
 .../gdc.test/runnable/imports/test11745b.d    |   12 +-
 .../gdc.test/runnable/imports/test46c.d       |    2 +-
 gcc/testsuite/gdc.test/runnable/inline7625.d  |  185 +
 gcc/testsuite/gdc.test/runnable/interface.d   |   12 +-
 gcc/testsuite/gdc.test/runnable/interface2.d  |   11 +-
 gcc/testsuite/gdc.test/runnable/interpret.d   |   91 +-
 gcc/testsuite/gdc.test/runnable/link12144.d   |    6 -
 gcc/testsuite/gdc.test/runnable/link15017.d   |    8 +-
 gcc/testsuite/gdc.test/runnable/mixin1.d      |    7 +-
 gcc/testsuite/gdc.test/runnable/newdel.d      |    8 +-
 gcc/testsuite/gdc.test/runnable/sdtor.d       |   26 +-
 gcc/testsuite/gdc.test/runnable/test11934.d   |    2 +-
 gcc/testsuite/gdc.test/runnable/test17684.d   |   20 +-
 gcc/testsuite/gdc.test/runnable/test17899.d   |    2 +-
 gcc/testsuite/gdc.test/runnable/test20.d      |    8 +-
 gcc/testsuite/gdc.test/runnable/test22136.d   |   25 +
 gcc/testsuite/gdc.test/runnable/test22163.d   |   13 +
 gcc/testsuite/gdc.test/runnable/test22717.d   |   31 +
 gcc/testsuite/gdc.test/runnable/test4.d       |    8 +-
 gcc/testsuite/gdc.test/runnable/testappend.d  |   16 +-
 gcc/testsuite/gdc.test/runnable/testconst.d   |    4 +-
 gcc/testsuite/gdc.test/runnable/testdstress.d |    8 +-
 gcc/testsuite/gdc.test/runnable/testptrref.d  |   10 +-
 gcc/testsuite/gdc.test/runnable/xpostblit.d   |    2 +-
 gcc/testsuite/gdc.test/runnable_cxx/cppa.d    |    2 +-
 libphobos/libdruntime/MERGE                   |    2 +-
 libphobos/libdruntime/__builtins.di           |   65 +
 libphobos/libdruntime/core/attribute.d        |   49 +
 libphobos/libdruntime/core/bitop.d            |   13 -
 libphobos/libdruntime/core/int128.d           |    2 +
 .../core/internal/array/appending.d           |    8 +-
 .../core/internal/array/comparison.d          |   33 +-
 libphobos/libdruntime/core/internal/convert.d |   22 -
 libphobos/libdruntime/core/lifetime.d         |    4 +-
 libphobos/libdruntime/core/math.d             |    1 +
 libphobos/libdruntime/core/runtime.d          |    2 +-
 libphobos/libdruntime/core/stdc/stdio.d       |   17 +-
 libphobos/libdruntime/core/sys/linux/config.d |    3 +
 libphobos/libdruntime/core/sys/linux/dlfcn.d  |   22 +-
 libphobos/libdruntime/core/sys/linux/errno.d  |    2 +-
 .../libdruntime/core/sys/linux/netinet/in_.d  |   10 +-
 libphobos/libdruntime/core/sys/linux/string.d |    2 +-
 .../libdruntime/core/sys/linux/sys/mman.d     |   72 +-
 libphobos/libdruntime/core/sys/posix/aio.d    |  132 +-
 libphobos/libdruntime/core/sys/posix/config.d |   58 +-
 libphobos/libdruntime/core/sys/posix/spawn.d  |   12 +-
 .../libdruntime/core/sys/posix/sys/ipc.d      |   65 +-
 .../libdruntime/core/sys/posix/sys/mman.d     |    4 +-
 .../libdruntime/core/sys/posix/sys/shm.d      |   12 +
 .../libdruntime/core/sys/posix/sys/socket.d   |   32 +-
 .../libdruntime/core/sys/posix/sys/stat.d     |   24 +-
 .../libdruntime/core/sys/posix/sys/statvfs.d  |    2 +-
 .../libdruntime/core/sys/posix/sys/types.d    |    2 +-
 libphobos/libdruntime/object.d                |    4 +-
 libphobos/libdruntime/rt/util/typeinfo.d      |  289 +-
 libphobos/src/MERGE                           |    2 +-
 libphobos/src/std/algorithm/internal.d        |    2 +
 libphobos/src/std/bigint.d                    |   16 +-
 libphobos/src/std/container/rbtree.d          |   16 +-
 libphobos/src/std/conv.d                      |    2 +-
 libphobos/src/std/file.d                      |   27 +-
 libphobos/src/std/functional.d                |    9 +-
 libphobos/src/std/internal/math/biguintcore.d |    6 +-
 libphobos/src/std/socket.d                    |   17 +-
 libphobos/src/std/sumtype.d                   |   20 +
 libphobos/src/std/typecons.d                  |   42 +-
 libphobos/src/std/uni/package.d               |    2 +-
 libphobos/src/std/zip.d                       |   35 +-
 .../testsuite/libphobos.betterc/test19933.d   |   11 +
 .../testsuite/libphobos.hash/test_hash.d      |    2 +-
 245 files changed, 5541 insertions(+), 4939 deletions(-)
 create mode 100644 gcc/testsuite/gdc.dg/special1.d
 create mode 100644 gcc/testsuite/gdc.test/compilable/dlangui_crash.d
 create mode 100644 gcc/testsuite/gdc.test/compilable/enumbasearithmetic.d
 create mode 100644 gcc/testsuite/gdc.test/compilable/imports/imp22734.c
 create mode 100644 gcc/testsuite/gdc.test/compilable/imports/test22714a.d
 create mode 100644 gcc/testsuite/gdc.test/compilable/imports/test22714b.d
 create mode 100644 gcc/testsuite/gdc.test/compilable/issue16472.d
 delete mode 100644 gcc/testsuite/gdc.test/compilable/test17906.d
 create mode 100644 gcc/testsuite/gdc.test/compilable/test21177.d
 create mode 100644 gcc/testsuite/gdc.test/compilable/test21196.d
 create mode 100644 gcc/testsuite/gdc.test/compilable/test22632.d
 create mode 100644 gcc/testsuite/gdc.test/compilable/test22714.d
 create mode 100644 gcc/testsuite/gdc.test/compilable/test22734.d
 create mode 100644 gcc/testsuite/gdc.test/fail_compilation/fail14277.d
 create mode 100644 gcc/testsuite/gdc.test/fail_compilation/fail17906.d
 create mode 100644 gcc/testsuite/gdc.test/fail_compilation/fail22127.d
 create mode 100644 gcc/testsuite/gdc.test/fail_compilation/fail22634.d
 create mode 100644 gcc/testsuite/gdc.test/fail_compilation/fail22780.d
 create mode 100644 gcc/testsuite/gdc.test/fail_compilation/fail_typeof.d
 create mode 100644 gcc/testsuite/gdc.test/fail_compilation/test22145.d
 create mode 100644 gcc/testsuite/gdc.test/fail_compilation/test22686.d
 create mode 100644 gcc/testsuite/gdc.test/runnable/inline7625.d
 create mode 100644 gcc/testsuite/gdc.test/runnable/test22136.d
 create mode 100644 gcc/testsuite/gdc.test/runnable/test22163.d
 create mode 100644 gcc/testsuite/gdc.test/runnable/test22717.d
 create mode 100644 libphobos/testsuite/libphobos.betterc/test19933.d

Attachment: 0001.patch.xz
Description: application/xz

Reply via email to