d: Merge dmd. druntime e770945277, phobos 6d6e0b9b9
commit51c4eb28c192ecff4463c973a0ff089e04a80b89
authorIain Buclaw <ibuclaw@gdcproject.org>
Sun, 28 Jan 2024 11:23:14 +0000 (28 12:23 +0100)
committerIain Buclaw <ibuclaw@gdcproject.org>
Sat, 3 Feb 2024 11:03:37 +0000 (3 12:03 +0100)
tree160ac2ef2c9d732681e96577ef0009027092aea6
parent854b8555bd49ad97c336b8df7098e725dc196e4f
d: Merge dmd. druntime e770945277, phobos 6d6e0b9b9

D front-end changes:

    - Import latest fixes from dmd v2.107.0-beta.1.
    - Hex strings can now be cast to integer arrays.
    - Add support for Interpolated Expression Sequences.

D runtime changes:

    - Import latest fixes from druntime v2.107.0-beta.1.
    - New core.interpolation module to provide run-time support for D
      interpolated expression sequence literals.

Phobos changes:

    - Import latest fixes from phobos v2.107.0-beta.1.
    - `std.range.primitives.isBidirectionalRange', and
      `std.range.primitives.isRandomAccessRange' now take an optional
      element type.

gcc/d/ChangeLog:

* dmd/MERGE: Merge upstream dmd e770945277.
* Make-lang.in (D_FRONTEND_OBJS): Add d/basicmangle.o, d/enumsem.o,
d/funcsem.o, d/templatesem.o.
* d-builtins.cc (build_frontend_type): Update for new front-end
interface.
* d-codegen.cc (declaration_type): Likewise.
(parameter_type): Likewise.
* d-incpath.cc (add_globalpaths): Likewise.
(add_filepaths): Likewise.
(add_import_paths): Likewise.
* d-lang.cc (d_init_options): Likewise.
(d_handle_option): Likewise.
(d_parse_file): Likewise.
* decl.cc (DeclVisitor::finish_vtable): Likewise.
(DeclVisitor::visit (FuncDeclaration *)): Likewise.
(get_symbol_decl): Likewise.
* expr.cc (ExprVisitor::visit (StringExp *)): Likewise.
Implement support for 8-byte hexadecimal strings.
* typeinfo.cc (create_tinfo_types): Update internal TypeInfo
representation.
(TypeInfoVisitor::visit (TypeInfoConstDeclaration *)): Update for new
front-end interface.
(TypeInfoVisitor::visit (TypeInfoInvariantDeclaration *)): Likewise.
(TypeInfoVisitor::visit (TypeInfoSharedDeclaration *)): Likewise.
(TypeInfoVisitor::visit (TypeInfoWildDeclaration *)): Likewise.
(TypeInfoVisitor::visit (TypeInfoClassDeclaration *)): Move data for
TypeInfo_Class.nameSig to the end of the object.
(create_typeinfo): Update for new front-end interface.

libphobos/ChangeLog:

* libdruntime/MERGE: Merge upstream druntime e770945277.
* libdruntime/Makefile.am (DRUNTIME_SOURCES): Add
core/interpolation.d.
* libdruntime/Makefile.in: Regenerate.
* src/MERGE: Merge upstream phobos 6d6e0b9b9.
136 files changed:
gcc/d/Make-lang.in
gcc/d/d-builtins.cc
gcc/d/d-codegen.cc
gcc/d/d-incpath.cc
gcc/d/d-lang.cc
gcc/d/decl.cc
gcc/d/dmd/MERGE
gcc/d/dmd/README.md
gcc/d/dmd/aggregate.h
gcc/d/dmd/basicmangle.d [new file with mode: 0644]
gcc/d/dmd/clone.d
gcc/d/dmd/common/outbuffer.d
gcc/d/dmd/cond.d
gcc/d/dmd/constfold.d
gcc/d/dmd/ctfeexpr.d
gcc/d/dmd/dclass.d
gcc/d/dmd/declaration.h
gcc/d/dmd/denum.d
gcc/d/dmd/dinterpret.d
gcc/d/dmd/dmangle.d
gcc/d/dmd/dmodule.d
gcc/d/dmd/doc.d
gcc/d/dmd/dstruct.d
gcc/d/dmd/dsymbolsem.d
gcc/d/dmd/dtemplate.d
gcc/d/dmd/enum.h
gcc/d/dmd/enumsem.d [new file with mode: 0644]
gcc/d/dmd/expression.d
gcc/d/dmd/expression.h
gcc/d/dmd/expressionsem.d
gcc/d/dmd/func.d
gcc/d/dmd/funcsem.d [new file with mode: 0644]
gcc/d/dmd/globals.d
gcc/d/dmd/globals.h
gcc/d/dmd/hdrgen.d
gcc/d/dmd/id.d
gcc/d/dmd/json.d
gcc/d/dmd/lexer.d
gcc/d/dmd/mtype.d
gcc/d/dmd/mtype.h
gcc/d/dmd/parse.d
gcc/d/dmd/parsetimevisitor.d
gcc/d/dmd/res/default_ddoc_theme.ddoc
gcc/d/dmd/root/filename.d
gcc/d/dmd/root/filename.h
gcc/d/dmd/semantic3.d
gcc/d/dmd/statementsem.d
gcc/d/dmd/templatesem.d [new file with mode: 0644]
gcc/d/dmd/tokens.d
gcc/d/dmd/tokens.h
gcc/d/dmd/traits.d
gcc/d/dmd/typesem.d
gcc/d/dmd/typinf.d
gcc/d/dmd/visitor.h
gcc/d/expr.cc
gcc/d/typeinfo.cc
gcc/testsuite/gdc.test/compilable/test13281.d
gcc/testsuite/gdc.test/fail_compilation/b19523.d
gcc/testsuite/gdc.test/fail_compilation/b20011.d
gcc/testsuite/gdc.test/fail_compilation/bug15613.d
gcc/testsuite/gdc.test/fail_compilation/bug16165.d
gcc/testsuite/gdc.test/fail_compilation/bug9631.d
gcc/testsuite/gdc.test/fail_compilation/callconst.d
gcc/testsuite/gdc.test/fail_compilation/constraints_aggr.d
gcc/testsuite/gdc.test/fail_compilation/constraints_func1.d
gcc/testsuite/gdc.test/fail_compilation/constraints_func2.d
gcc/testsuite/gdc.test/fail_compilation/constraints_func3.d
gcc/testsuite/gdc.test/fail_compilation/constraints_func4.d
gcc/testsuite/gdc.test/fail_compilation/diag13942.d
gcc/testsuite/gdc.test/fail_compilation/diag16977.d
gcc/testsuite/gdc.test/fail_compilation/diag20268.d
gcc/testsuite/gdc.test/fail_compilation/diag23355.d
gcc/testsuite/gdc.test/fail_compilation/diag8101.d
gcc/testsuite/gdc.test/fail_compilation/diag8648.d
gcc/testsuite/gdc.test/fail_compilation/diag9004.d
gcc/testsuite/gdc.test/fail_compilation/diagin.d
gcc/testsuite/gdc.test/fail_compilation/fail12744.d
gcc/testsuite/gdc.test/fail_compilation/fail136.d
gcc/testsuite/gdc.test/fail_compilation/fail14669.d
gcc/testsuite/gdc.test/fail_compilation/fail162.d
gcc/testsuite/gdc.test/fail_compilation/fail19948.d
gcc/testsuite/gdc.test/fail_compilation/fail20183.d
gcc/testsuite/gdc.test/fail_compilation/fail20730b.d
gcc/testsuite/gdc.test/fail_compilation/fail20800.d
gcc/testsuite/gdc.test/fail_compilation/fail22202.d
gcc/testsuite/gdc.test/fail_compilation/fail236.d
gcc/testsuite/gdc.test/fail_compilation/fail24301.d
gcc/testsuite/gdc.test/fail_compilation/fail263.d
gcc/testsuite/gdc.test/fail_compilation/fail322.d
gcc/testsuite/gdc.test/fail_compilation/fail332.d
gcc/testsuite/gdc.test/fail_compilation/fail58.d
gcc/testsuite/gdc.test/fail_compilation/fail8009.d
gcc/testsuite/gdc.test/fail_compilation/fail95.d
gcc/testsuite/gdc.test/fail_compilation/hexstring.d
gcc/testsuite/gdc.test/fail_compilation/ice10922.d
gcc/testsuite/gdc.test/fail_compilation/ice11856_1.d
gcc/testsuite/gdc.test/fail_compilation/ice12501.d
gcc/testsuite/gdc.test/fail_compilation/ice14130.d
gcc/testsuite/gdc.test/fail_compilation/ice14907.d
gcc/testsuite/gdc.test/fail_compilation/ice14923.d
gcc/testsuite/gdc.test/fail_compilation/ice23097.d
gcc/testsuite/gdc.test/fail_compilation/ice6538.d
gcc/testsuite/gdc.test/fail_compilation/ice9284.d
gcc/testsuite/gdc.test/fail_compilation/ice9540.d
gcc/testsuite/gdc.test/fail_compilation/iconv_interface_array.d [new file with mode: 0644]
gcc/testsuite/gdc.test/fail_compilation/interpolatedexpressionsequence_postfix.d [new file with mode: 0644]
gcc/testsuite/gdc.test/fail_compilation/named_arguments_error.d
gcc/testsuite/gdc.test/fail_compilation/previewin.d
gcc/testsuite/gdc.test/fail_compilation/pull12941.d
gcc/testsuite/gdc.test/fail_compilation/test19107.d
gcc/testsuite/gdc.test/fail_compilation/test19971.d
gcc/testsuite/gdc.test/fail_compilation/test21008.d
gcc/testsuite/gdc.test/fail_compilation/test21025.d
gcc/testsuite/gdc.test/fail_compilation/test21807.d
gcc/testsuite/gdc.test/fail_compilation/ufcs.d
gcc/testsuite/gdc.test/fail_compilation/vararg2.d
gcc/testsuite/gdc.test/runnable/interpolatedexpressionsequence.d [new file with mode: 0644]
gcc/testsuite/gdc.test/runnable/literal.d
libphobos/libdruntime/MERGE
libphobos/libdruntime/Makefile.am
libphobos/libdruntime/Makefile.in
libphobos/libdruntime/core/internal/array/construction.d
libphobos/libdruntime/core/internal/array/duplication.d
libphobos/libdruntime/core/internal/array/utils.d
libphobos/libdruntime/core/internal/gc/impl/conservative/gc.d
libphobos/libdruntime/core/interpolation.d [new file with mode: 0644]
libphobos/libdruntime/core/lifetime.d
libphobos/libdruntime/core/stdc/string.d
libphobos/libdruntime/core/sys/posix/string.d
libphobos/libdruntime/core/thread/osthread.d
libphobos/libdruntime/core/thread/threadbase.d
libphobos/libdruntime/object.d
libphobos/libdruntime/rt/cast_.d
libphobos/src/MERGE
libphobos/src/std/bitmanip.d
libphobos/src/std/range/primitives.d