d: Merge upstream dmd, druntime 26f049fb26, phobos 330d6a4fd.
commitd77c280454cfba48ef38357145cecdabc8c1b05c
authorIain Buclaw <ibuclaw@gdcproject.org>
Tue, 15 Aug 2023 14:29:08 +0000 (15 16:29 +0200)
committerIain Buclaw <ibuclaw@gdcproject.org>
Sun, 20 Aug 2023 09:20:00 +0000 (20 11:20 +0200)
tree49e02afce6ab03a3405752c963b6ffb225012a40
parentce33bbfcbc7dd3afc6c96fb48a19ed00f0c598ce
d: Merge upstream dmd, druntime 26f049fb26, phobos 330d6a4fd.

D front-end changes:

- Import dmd v2.105.0-beta.1.
- Added predefined version identifier VisionOS (ignored by GDC).
- Functions can no longer have `enum` storage class.
- The deprecation of the `body` keyword has been reverted, it is
  now an obsolete feature.
- The error for `scope class` has been reverted, it is now an
  obsolete feature.

D runtime changes:

- Import druntime v2.105.0-beta.1.

Phobos changes:

- Import phobos v2.105.0-beta.1.
- AliasSeq has been removed from std.math.
- extern(C) getdelim and getline have been removed from
  std.stdio.

gcc/d/ChangeLog:

* dmd/MERGE: Merge upstream dmd 26f049fb26.
* dmd/VERSION: Bump version to v2.105.0-beta.1.
* d-codegen.cc (get_frameinfo): Check useGC in condition.
* d-lang.cc (d_handle_option): Set obsolete parameter when compiling
with -Wall.
(d_post_options): Set useGC to false when compiling with
-fno-druntime.  Propagate obsolete flag to compileEnv.
* expr.cc (ExprVisitor::visit (CatExp *)): Check useGC in condition.

libphobos/ChangeLog:

* libdruntime/MERGE: Merge upstream druntime 26f049fb26.
* src/MERGE: Merge upstream phobos 330d6a4fd.
65 files changed:
gcc/d/d-codegen.cc
gcc/d/d-lang.cc
gcc/d/dmd/MERGE
gcc/d/dmd/VERSION
gcc/d/dmd/clone.d
gcc/d/dmd/common/string.d
gcc/d/dmd/cond.d
gcc/d/dmd/cparse.d
gcc/d/dmd/dsymbolsem.d
gcc/d/dmd/errors.d
gcc/d/dmd/expression.d
gcc/d/dmd/expression.h
gcc/d/dmd/expressionsem.d
gcc/d/dmd/func.d
gcc/d/dmd/globals.d
gcc/d/dmd/globals.h
gcc/d/dmd/initsem.d
gcc/d/dmd/lexer.d
gcc/d/dmd/nogc.d
gcc/d/dmd/parse.d
gcc/d/dmd/semantic3.d
gcc/d/dmd/target.d
gcc/d/dmd/target.h
gcc/d/dmd/traits.d
gcc/d/expr.cc
gcc/testsuite/gdc.test/compilable/cppmangle.d
gcc/testsuite/gdc.test/compilable/deprecate14283.d
gcc/testsuite/gdc.test/compilable/emptystatement.d [new file with mode: 0644]
gcc/testsuite/gdc.test/compilable/imports/imp24022.c [new file with mode: 0644]
gcc/testsuite/gdc.test/compilable/parens_inc.d [new file with mode: 0644]
gcc/testsuite/gdc.test/compilable/test23951.d [new file with mode: 0644]
gcc/testsuite/gdc.test/compilable/test23966.d [new file with mode: 0644]
gcc/testsuite/gdc.test/compilable/test24022.d [new file with mode: 0644]
gcc/testsuite/gdc.test/compilable/test7172.d
gcc/testsuite/gdc.test/fail_compilation/biterrors3.d
gcc/testsuite/gdc.test/fail_compilation/body.d [new file with mode: 0644]
gcc/testsuite/gdc.test/fail_compilation/ccast.d
gcc/testsuite/gdc.test/fail_compilation/diag4596.d
gcc/testsuite/gdc.test/fail_compilation/enum_function.d [new file with mode: 0644]
gcc/testsuite/gdc.test/fail_compilation/fail10285.d
gcc/testsuite/gdc.test/fail_compilation/fail13116.d
gcc/testsuite/gdc.test/fail_compilation/fail15896.d
gcc/testsuite/gdc.test/fail_compilation/fail22729.d
gcc/testsuite/gdc.test/fail_compilation/fail22780.d
gcc/testsuite/gdc.test/fail_compilation/fail4559.d [deleted file]
gcc/testsuite/gdc.test/fail_compilation/format.d
gcc/testsuite/gdc.test/fail_compilation/reserved_version.d
gcc/testsuite/gdc.test/fail_compilation/scope_class.d
gcc/testsuite/gdc.test/fail_compilation/scope_type.d [deleted file]
gcc/testsuite/gdc.test/fail_compilation/test23279.d [new file with mode: 0644]
gcc/testsuite/gdc.test/fail_compilation/typeerrors.d
gcc/testsuite/gdc.test/runnable/betterc.d
gcc/testsuite/gdc.test/runnable/sctor2.d
gcc/testsuite/gdc.test/runnable/test24029.c [new file with mode: 0644]
gcc/testsuite/gdc.test/runnable/testcontracts.d
libphobos/libdruntime/MERGE
libphobos/libdruntime/core/int128.d
libphobos/libdruntime/core/internal/array/comparison.d
libphobos/libdruntime/core/lifetime.d
libphobos/src/MERGE
libphobos/src/std/algorithm/searching.d
libphobos/src/std/bigint.d
libphobos/src/std/json.d
libphobos/src/std/math/package.d
libphobos/src/std/stdio.d