* [committed] d: Merge upstream dmd 52844d4b1, druntime dbd0c874, phobos 896b1d0e1.
@ 2022-02-16 10:20 Iain Buclaw
2022-02-16 22:45 ` Rainer Orth
0 siblings, 1 reply; 4+ messages in thread
From: Iain Buclaw @ 2022-02-16 10:20 UTC (permalink / raw)
To: gcc-patches
[-- Attachment #1: Type: text/plain, Size: 21410 bytes --]
Hi,
This patch merges the D front-end implementation with upstream dmd
52844d4b1, as well as the D runtime libraries with druntime dbd0c874,
and phobos 896b1d0e1, including the latest features and bug-fixes ahead of the 2.099.0-beta1 release.
D front-end changes:
- Parsing and compiling C code is now possible using `import'.
- `throw' statements can now be used as an expression.
- Improvements to the D template emission strategy when compiling
with `-funittest'.
D Runtime changes:
- New core.int128 module for implementing intrinsics to support
128-bit integer types.
- C bindings for the kernel and C runtime have been better separated
to allow compiling for hybrid targets, such as kFreeBSD.
Phobos changes:
- The std.experimental.checkedint module has been renamed to
std.checkedint.
Bootstrapped and regression tested on x86_64-linux-gnu/-m32/-mx32, and
committed to mainline.
Regards,
Iain.
---
gcc/d/ChangeLog:
* d-builtins.cc (d_build_builtins_module): Set purity of DECL_PURE_P
functions to PURE::const_.
* d-gimplify.cc (bit_field_ref): New function.
(d_gimplify_modify_expr): Handle implicit casting for assignments to
bit-fields.
(d_gimplify_unary_expr): New function.
(d_gimplify_binary_expr): New function.
(d_gimplify_expr): Handle UNARY_CLASS_P and BINARY_CLASS_P.
* d-target.cc (Target::_init): Initialize bitFieldStyle.
(TargetCPP::parameterType): Update signature.
(Target::supportsLinkerDirective): New function.
* dmd/MERGE: Merge upstream dmd 52844d4b1.
* expr.cc (ExprVisitor::visit (ThrowExp *)): New function.
* types.cc (d_build_bitfield_integer_type): New function.
(insert_aggregate_bitfield): New function.
(layout_aggregate_members): Handle inserting bit-fields into an
aggregate type.
libphobos/ChangeLog:
* Makefile.in: Regenerate.
* libdruntime/MERGE: Merge upstream druntime dbd0c874.
* libdruntime/Makefile.am (DRUNTIME_CSOURCES): Add core/int128.d.
(DRUNTIME_DISOURCES): Add __builtins.di.
* libdruntime/Makefile.in: Regenerate.
* src/MERGE: Merge upstream phobos 896b1d0e1.
* src/Makefile.am (PHOBOS_DSOURCES): Add std/checkedint.d.
* src/Makefile.in: Regenerate.
* testsuite/testsuite_flags.in: Add -fall-instantiations to
--gdcflags.
---
gcc/d/d-builtins.cc | 2 +-
gcc/d/d-gimplify.cc | 71 +
gcc/d/d-target.cc | 33 +-
gcc/d/dmd/MERGE | 2 +-
gcc/d/dmd/README.md | 1 +
gcc/d/dmd/access.d | 10 +-
gcc/d/dmd/astenums.d | 45 +-
gcc/d/dmd/attrib.d | 58 +
gcc/d/dmd/blockexit.d | 79 +-
gcc/d/dmd/canthrow.d | 85 +-
gcc/d/dmd/constfold.d | 20 +-
gcc/d/dmd/cparse.d | 206 +-
gcc/d/dmd/cppmangle.d | 13 +-
gcc/d/dmd/dcast.d | 12 +-
gcc/d/dmd/dclass.d | 1 +
gcc/d/dmd/declaration.d | 10 +-
gcc/d/dmd/denum.d | 3 +-
gcc/d/dmd/dinterpret.d | 31 +-
gcc/d/dmd/dscope.d | 3 +-
gcc/d/dmd/dsymbol.d | 2 +-
gcc/d/dmd/dsymbolsem.d | 25 +-
gcc/d/dmd/dtemplate.d | 176 +-
gcc/d/dmd/dtoh.d | 1 +
gcc/d/dmd/escape.d | 35 +-
gcc/d/dmd/expression.d | 38 +-
gcc/d/dmd/expression.h | 12 +-
gcc/d/dmd/expressionsem.d | 110 +-
gcc/d/dmd/func.d | 2 +-
gcc/d/dmd/globals.d | 44 +-
gcc/d/dmd/globals.h | 1 +
gcc/d/dmd/hdrgen.d | 11 +
gcc/d/dmd/id.d | 6 +-
gcc/d/dmd/json.d | 3 +-
gcc/d/dmd/mtype.d | 152 +-
gcc/d/dmd/mtype.h | 1 -
gcc/d/dmd/nogc.d | 1 +
gcc/d/dmd/nspace.d | 1 +
gcc/d/dmd/objc.d | 58 -
gcc/d/dmd/opover.d | 10 +-
gcc/d/dmd/optimize.d | 4 +-
gcc/d/dmd/parse.d | 605 +--
gcc/d/dmd/parsetimevisitor.d | 1 +
gcc/d/dmd/root/README.md | 1 +
gcc/d/dmd/root/optional.d | 2 +-
gcc/d/dmd/sideeffect.d | 28 +-
gcc/d/dmd/statement.d | 1 -
gcc/d/dmd/statement.h | 2 +-
gcc/d/dmd/statementsem.d | 67 +-
gcc/d/dmd/staticcond.d | 14 +-
gcc/d/dmd/target.d | 24 +-
gcc/d/dmd/target.h | 7 +-
gcc/d/dmd/template.h | 1 +
gcc/d/dmd/tokens.d | 5 +-
gcc/d/dmd/tokens.h | 1 +
gcc/d/dmd/traits.d | 39 +-
gcc/d/dmd/transitivevisitor.d | 6 +
gcc/d/dmd/typesem.d | 6 +-
gcc/d/dmd/visitor.h | 2 +
gcc/d/expr.cc | 8 +
gcc/d/types.cc | 77 +-
gcc/testsuite/gdc.test/compilable/casttuple.d | 31 +
.../gdc.test/compilable/deprecated_override.d | 97 +
.../gdc.test/compilable/extra-files/header1.d | 6 +
gcc/testsuite/gdc.test/compilable/fix17635.d | 16 +
gcc/testsuite/gdc.test/compilable/fix22291.d | 134 +
.../gdc.test/compilable/imports/cstuff3.c | 6 +
.../gdc.test/compilable/imports/imp22625.c | 1 +
.../gdc.test/compilable/imports/imp22665.c | 1 +
.../gdc.test/compilable/imports/test22685b.d | 5 +
.../gdc.test/compilable/imports/test22685c.d | 3 +
.../gdc.test/compilable/issue22130.d | 12 +
gcc/testsuite/gdc.test/compilable/noreturn1.d | 3 +-
gcc/testsuite/gdc.test/compilable/test13008.d | 6 +-
gcc/testsuite/gdc.test/compilable/test18771.d | 2 +-
gcc/testsuite/gdc.test/compilable/test19609.d | 2 +-
gcc/testsuite/gdc.test/compilable/test19873.d | 2 +-
.../gdc.test/compilable/test21299a.d | 2 +-
gcc/testsuite/gdc.test/compilable/test22619.d | 11 +
gcc/testsuite/gdc.test/compilable/test22625.d | 4 +
gcc/testsuite/gdc.test/compilable/test22646.d | 21 +
gcc/testsuite/gdc.test/compilable/test22665.d | 22 +
gcc/testsuite/gdc.test/compilable/test22676.d | 25 +
gcc/testsuite/gdc.test/compilable/test22685.d | 11 +
gcc/testsuite/gdc.test/compilable/test55.d | 3 +-
.../gdc.test/compilable/testcstuff3.d | 4 +
gcc/testsuite/gdc.test/compilable/testos.d | 7 +
.../{compilable => fail_compilation}/b16967.d | 5 +-
.../gdc.test/fail_compilation/bug5096.d | 14 +
.../gdc.test/fail_compilation/bug9631.d | 4 +-
.../gdc.test/fail_compilation/casttuple.d | 25 +
.../fail_compilation/constraints_aggr.d | 4 +-
.../fail_compilation/constraints_func1.d | 26 +-
.../fail_compilation/constraints_func2.d | 28 +-
.../fail_compilation/constraints_func3.d | 12 +-
.../fail_compilation/constraints_func4.d | 12 +-
.../gdc.test/fail_compilation/diag11819b.d | 38 +-
.../gdc.test/fail_compilation/diag13333.d | 2 +-
.../gdc.test/fail_compilation/diag13942.d | 2 +-
.../gdc.test/fail_compilation/diag16271.d | 2 +-
.../gdc.test/fail_compilation/diag16977.d | 2 +-
.../gdc.test/fail_compilation/diag19225.d | 2 +-
.../gdc.test/fail_compilation/diag8101.d | 6 +-
.../gdc.test/fail_compilation/diag8648.d | 6 +-
.../gdc.test/fail_compilation/diag8684.d | 5 +-
.../gdc.test/fail_compilation/diag9004.d | 2 +-
.../gdc.test/fail_compilation/diag9420.d | 2 +-
.../gdc.test/fail_compilation/diagin.d | 2 +-
.../gdc.test/fail_compilation/dip25.d | 2 +-
.../gdc.test/fail_compilation/fail10964.d | 4 +-
.../gdc.test/fail_compilation/fail11453a.d | 2 +-
.../gdc.test/fail_compilation/fail11453b.d | 2 +-
.../gdc.test/fail_compilation/fail11653.d | 5 +-
.../gdc.test/fail_compilation/fail12744.d | 4 +-
.../gdc.test/fail_compilation/fail132.d | 2 +-
.../gdc.test/fail_compilation/fail14669.d | 2 +-
.../gdc.test/fail_compilation/fail162.d | 2 +-
.../gdc.test/fail_compilation/fail18417.d | 2 +-
.../gdc.test/fail_compilation/fail196.d | 33 +-
.../gdc.test/fail_compilation/fail19609.d | 2 +-
.../gdc.test/fail_compilation/fail19897.d | 2 +-
.../gdc.test/fail_compilation/fail207.d | 5 +-
.../gdc.test/fail_compilation/fail20730b.d | 2 +-
.../gdc.test/fail_compilation/fail21830.d | 2 +-
.../gdc.test/fail_compilation/fail21831.d | 2 +-
.../gdc.test/fail_compilation/fail21832.d | 2 +-
.../gdc.test/fail_compilation/fail220.d | 2 +-
.../gdc.test/fail_compilation/fail22035.d | 2 +-
.../gdc.test/fail_compilation/fail22084.d | 2 +-
.../gdc.test/fail_compilation/fail22133.d | 2 +-
.../gdc.test/fail_compilation/fail22144.d | 2 +-
.../gdc.test/fail_compilation/fail22749.d | 13 +
.../gdc.test/fail_compilation/fail236.d | 2 +-
.../gdc.test/fail_compilation/fail276.d | 2 +-
.../gdc.test/fail_compilation/fail4269e.d | 2 +-
.../gdc.test/fail_compilation/fail59.d | 2 +-
.../gdc.test/fail_compilation/fail60.d | 2 +-
.../gdc.test/fail_compilation/fail8009.d | 2 +-
.../gdc.test/fail_compilation/fail95.d | 2 +-
.../gdc.test/fail_compilation/fix17635.d | 23 -
.../gdc.test/fail_compilation/ice11856_0.d | 2 +-
.../gdc.test/fail_compilation/ice11856_1.d | 2 +-
.../gdc.test/fail_compilation/ice14130.d | 2 +-
.../gdc.test/fail_compilation/ice14907.d | 2 +-
.../gdc.test/fail_compilation/ice6538.d | 2 +-
.../gdc.test/fail_compilation/ice9284.d | 2 +-
.../fail_compilation/imports/imp18554.d | 4 -
.../fail_compilation/imports/imp22749.c | 4 +
.../gdc.test/fail_compilation/issue21936.d | 32 -
.../gdc.test/fail_compilation/noreturn.d | 4 +-
.../gdc.test/fail_compilation/noreturn2.d | 51 +
.../gdc.test/fail_compilation/objc_class2.d | 2 +-
.../gdc.test/fail_compilation/objc_class3.d | 2 +-
.../fail_compilation/objc_non_objc_base.d | 2 +-
.../gdc.test/fail_compilation/reg6769.d | 2 +-
.../fail_compilation/reserved_version.d | 3 +
.../reserved_version_switch.d | 3 +
.../gdc.test/fail_compilation/retscope5.d | 2 +-
.../gdc.test/fail_compilation/test15191.d | 2 +-
.../gdc.test/fail_compilation/test16188.d | 2 +-
.../gdc.test/fail_compilation/test16589.d | 4 +-
.../gdc.test/fail_compilation/test17284.d | 2 +-
.../gdc.test/fail_compilation/test17450.d | 2 +-
.../gdc.test/fail_compilation/test18554.d | 24 -
.../gdc.test/fail_compilation/test19107.d | 2 +-
.../gdc.test/fail_compilation/test19193.d | 2 +-
.../gdc.test/fail_compilation/test21912.d | 2 +-
.../gdc.test/fail_compilation/test22298.d | 30 +
.../gdc.test/fail_compilation/test22541.d | 18 +
.../gdc.test/fail_compilation/test22709.d | 29 +
.../gdc.test/fail_compilation/test3818.d | 27 +
.../gdc.test/fail_compilation/test9701.d | 2 +-
.../gdc.test/fail_compilation/test9701b.d | 2 +-
.../fail_compilation/traits_parameters.d | 10 +
gcc/testsuite/gdc.test/runnable/a18.d | 2 +-
gcc/testsuite/gdc.test/runnable/a19.d | 2 +-
gcc/testsuite/gdc.test/runnable/b26.d | 2 +-
gcc/testsuite/gdc.test/runnable/class_opCmp.d | 25 +
gcc/testsuite/gdc.test/runnable/fix22624.d | 19 +
gcc/testsuite/gdc.test/runnable/ice15138.d | 2 +-
gcc/testsuite/gdc.test/runnable/ice15176.d | 2 +-
gcc/testsuite/gdc.test/runnable/ice15200.d | 2 +-
.../gdc.test/runnable/imports/imp22624.c | 6 +
gcc/testsuite/gdc.test/runnable/issue16995.d | 2 +-
gcc/testsuite/gdc.test/runnable/link10425.d | 2 +-
gcc/testsuite/gdc.test/runnable/link11069b.d | 2 +-
gcc/testsuite/gdc.test/runnable/link11395.d | 2 +-
gcc/testsuite/gdc.test/runnable/link12010.d | 2 +-
gcc/testsuite/gdc.test/runnable/link13394.d | 2 +-
gcc/testsuite/gdc.test/runnable/link13400.d | 2 +-
gcc/testsuite/gdc.test/runnable/link13415.d | 2 +-
gcc/testsuite/gdc.test/runnable/link14588.d | 2 +-
gcc/testsuite/gdc.test/runnable/link14814.d | 2 +-
gcc/testsuite/gdc.test/runnable/link15017.d | 2 +-
gcc/testsuite/gdc.test/runnable/link7745.d | 2 +-
gcc/testsuite/gdc.test/runnable/link8023.d | 2 +-
gcc/testsuite/gdc.test/runnable/link9571.d | 2 +-
.../gdc.test/runnable/linktypeinfo.d | 2 +-
gcc/testsuite/gdc.test/runnable/noreturn1.d | 152 +
gcc/testsuite/gdc.test/runnable/test11039.d | 2 +-
gcc/testsuite/gdc.test/runnable/test11239.d | 2 +-
gcc/testsuite/gdc.test/runnable/test11447a.d | 2 +-
gcc/testsuite/gdc.test/runnable/test11447b.d | 2 +-
gcc/testsuite/gdc.test/runnable/test11447c.d | 2 +-
gcc/testsuite/gdc.test/runnable/test11863.d | 2 +-
gcc/testsuite/gdc.test/runnable/test14901.d | 2 +-
gcc/testsuite/gdc.test/runnable/test18868.d | 2 +-
gcc/testsuite/gdc.test/runnable/test27.d | 2 +-
gcc/testsuite/gdc.test/runnable/test29.d | 2 +-
gcc/testsuite/gdc.test/runnable/test31.d | 2 +-
gcc/testsuite/gdc.test/runnable/test32.d | 2 +-
gcc/testsuite/gdc.test/runnable/test38.d | 2 +-
gcc/testsuite/gdc.test/runnable/test46.d | 2 +-
gcc/testsuite/gdc.test/runnable/test49.d | 2 +-
gcc/testsuite/gdc.test/runnable/test57.d | 2 +-
gcc/testsuite/gdc.test/runnable/test7494.d | 2 +-
gcc/testsuite/gdc.test/runnable/test8997.d | 2 +-
gcc/testsuite/gdc.test/runnable/testmod1.d | 2 +-
gcc/testsuite/gdc.test/runnable/tls_dup.d | 2 +-
gcc/testsuite/gdc.test/runnable_cxx/cppa.d | 3 +
libphobos/Makefile.in | 2 +-
libphobos/libdruntime/MERGE | 2 +-
libphobos/libdruntime/Makefile.am | 4 +-
libphobos/libdruntime/Makefile.in | 9 +-
libphobos/libdruntime/__builtins.di | 40 +
libphobos/libdruntime/core/demangle.d | 2 +-
libphobos/libdruntime/core/int128.d | 919 +++++
.../core/internal/gc/impl/conservative/gc.d | 2 +-
libphobos/libdruntime/core/lifetime.d | 373 +-
libphobos/libdruntime/core/memory.d | 32 +-
libphobos/libdruntime/core/stdc/math.d | 68 +-
libphobos/libdruntime/core/sys/darwin/dlfcn.d | 14 -
.../libdruntime/core/sys/dragonflybsd/dlfcn.d | 24 -
.../libdruntime/core/sys/freebsd/dlfcn.d | 23 -
libphobos/libdruntime/core/sys/linux/dlfcn.d | 89 -
.../libdruntime/core/sys/linux/sys/inotify.d | 16 +-
libphobos/libdruntime/core/sys/netbsd/dlfcn.d | 31 -
.../libdruntime/core/sys/openbsd/dlfcn.d | 7 -
libphobos/libdruntime/core/sys/posix/dirent.d | 240 +-
libphobos/libdruntime/core/sys/posix/dlfcn.d | 80 +
libphobos/libdruntime/core/sys/posix/fcntl.d | 523 +--
libphobos/libdruntime/core/sys/posix/poll.d | 302 +-
libphobos/libdruntime/core/sys/posix/sched.d | 61 +-
libphobos/libdruntime/core/sys/posix/signal.d | 2003 +++------
.../libdruntime/core/sys/posix/stdc/time.d | 42 +-
libphobos/libdruntime/core/sys/posix/stdio.d | 16 +-
.../libdruntime/core/sys/posix/sys/ioctl.d | 366 +-
.../libdruntime/core/sys/posix/sys/ipc.d | 116 +-
.../libdruntime/core/sys/posix/sys/mman.d | 308 +-
.../libdruntime/core/sys/posix/sys/resource.d | 275 +-
.../libdruntime/core/sys/posix/sys/shm.d | 166 +-
.../libdruntime/core/sys/posix/sys/socket.d | 835 +---
.../libdruntime/core/sys/posix/sys/stat.d | 1137 ++----
.../libdruntime/core/sys/posix/sys/types.d | 205 +-
.../libdruntime/core/sys/posix/sys/wait.d | 217 +-
.../libdruntime/core/sys/posix/termios.d | 281 +-
.../libdruntime/core/sys/posix/ucontext.d | 322 +-
.../libdruntime/core/sys/solaris/dlfcn.d | 24 -
.../libdruntime/core/sys/windows/wingdi.d | 4 +-
libphobos/libdruntime/core/thread/osthread.d | 61 -
libphobos/libdruntime/object.d | 383 +-
libphobos/libdruntime/rt/dmain2.d | 2 +-
libphobos/libdruntime/rt/util/typeinfo.d | 5 +-
libphobos/src/MERGE | 2 +-
libphobos/src/Makefile.am | 11 +-
libphobos/src/Makefile.in | 17 +-
libphobos/src/index.dd | 2 +-
libphobos/src/std/array.d | 133 +-
libphobos/src/std/checkedint.d | 3591 +++++++++++++++++
libphobos/src/std/complex.d | 22 +-
libphobos/src/std/conv.d | 32 +-
.../src/std/experimental/allocator/package.d | 8 +-
libphobos/src/std/experimental/checkedint.d | 3477 +---------------
libphobos/src/std/experimental/logger/core.d | 9 +-
.../src/std/experimental/logger/filelogger.d | 2 +-
.../src/std/experimental/logger/multilogger.d | 2 +-
libphobos/src/std/file.d | 104 +-
libphobos/src/std/format/package.d | 4 +-
libphobos/src/std/functional.d | 59 +-
libphobos/src/std/json.d | 6 +-
libphobos/src/std/path.d | 13 +-
libphobos/src/std/process.d | 5 +-
libphobos/src/std/range/package.d | 286 +-
libphobos/src/std/regex/package.d | 10 +
libphobos/src/std/stdio.d | 26 +-
libphobos/src/std/traits.d | 101 +-
libphobos/src/std/typecons.d | 87 +-
libphobos/src/std/utf.d | 14 +-
libphobos/src/std/variant.d | 58 +-
libphobos/testsuite/testsuite_flags.in | 4 +-
289 files changed, 10838 insertions(+), 10498 deletions(-)
create mode 100644 gcc/testsuite/gdc.test/compilable/casttuple.d
create mode 100644 gcc/testsuite/gdc.test/compilable/deprecated_override.d
create mode 100644 gcc/testsuite/gdc.test/compilable/fix17635.d
create mode 100644 gcc/testsuite/gdc.test/compilable/fix22291.d
create mode 100644 gcc/testsuite/gdc.test/compilable/imports/cstuff3.c
create mode 100644 gcc/testsuite/gdc.test/compilable/imports/imp22625.c
create mode 100644 gcc/testsuite/gdc.test/compilable/imports/imp22665.c
create mode 100644 gcc/testsuite/gdc.test/compilable/imports/test22685b.d
create mode 100644 gcc/testsuite/gdc.test/compilable/imports/test22685c.d
create mode 100644 gcc/testsuite/gdc.test/compilable/issue22130.d
create mode 100644 gcc/testsuite/gdc.test/compilable/test22619.d
create mode 100644 gcc/testsuite/gdc.test/compilable/test22625.d
create mode 100644 gcc/testsuite/gdc.test/compilable/test22646.d
create mode 100644 gcc/testsuite/gdc.test/compilable/test22665.d
create mode 100644 gcc/testsuite/gdc.test/compilable/test22676.d
create mode 100644 gcc/testsuite/gdc.test/compilable/test22685.d
create mode 100644 gcc/testsuite/gdc.test/compilable/testcstuff3.d
create mode 100644 gcc/testsuite/gdc.test/compilable/testos.d
rename gcc/testsuite/gdc.test/{compilable => fail_compilation}/b16967.d (70%)
create mode 100644 gcc/testsuite/gdc.test/fail_compilation/bug5096.d
create mode 100644 gcc/testsuite/gdc.test/fail_compilation/casttuple.d
create mode 100644 gcc/testsuite/gdc.test/fail_compilation/fail22749.d
delete mode 100644 gcc/testsuite/gdc.test/fail_compilation/fix17635.d
delete mode 100644 gcc/testsuite/gdc.test/fail_compilation/imports/imp18554.d
create mode 100644 gcc/testsuite/gdc.test/fail_compilation/imports/imp22749.c
delete mode 100644 gcc/testsuite/gdc.test/fail_compilation/issue21936.d
delete mode 100644 gcc/testsuite/gdc.test/fail_compilation/test18554.d
create mode 100644 gcc/testsuite/gdc.test/fail_compilation/test22298.d
create mode 100644 gcc/testsuite/gdc.test/fail_compilation/test22541.d
create mode 100644 gcc/testsuite/gdc.test/fail_compilation/test22709.d
create mode 100644 gcc/testsuite/gdc.test/fail_compilation/test3818.d
create mode 100644 gcc/testsuite/gdc.test/fail_compilation/traits_parameters.d
create mode 100644 gcc/testsuite/gdc.test/runnable/class_opCmp.d
create mode 100644 gcc/testsuite/gdc.test/runnable/fix22624.d
create mode 100644 gcc/testsuite/gdc.test/runnable/imports/imp22624.c
create mode 100644 libphobos/libdruntime/__builtins.di
create mode 100644 libphobos/libdruntime/core/int128.d
create mode 100644 libphobos/src/std/checkedint.d
[-- Attachment #2: 0001.patch.xz --]
[-- Type: application/x-xz, Size: 128836 bytes --]
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [committed] d: Merge upstream dmd 52844d4b1, druntime dbd0c874, phobos 896b1d0e1.
2022-02-16 10:20 [committed] d: Merge upstream dmd 52844d4b1, druntime dbd0c874, phobos 896b1d0e1 Iain Buclaw
@ 2022-02-16 22:45 ` Rainer Orth
2022-02-18 17:55 ` Iain Buclaw
0 siblings, 1 reply; 4+ messages in thread
From: Rainer Orth @ 2022-02-16 22:45 UTC (permalink / raw)
To: Iain Buclaw via Gcc-patches
[-- Attachment #1: Type: text/plain, Size: 738 bytes --]
Hi Iain,
> This patch merges the D front-end implementation with upstream dmd
> 52844d4b1, as well as the D runtime libraries with druntime dbd0c874,
> and phobos 896b1d0e1, including the latest features and bug-fixes ahead of the 2.099.0-beta1 release.
this patch broke Solaris bootstrap:
/vol/gcc/src/hg/master/local/libphobos/libdruntime/core/sys/posix/sys/ipc.d:193:5: error: static assert: "Unsupported platform"
193 | static assert(false, "Unsupported platform");
| ^
The attached patch fixes this. Tested on i386-pc-solaris2.11 and
sparc-sun-solaris2.11.
Rainer
--
-----------------------------------------------------------------------------
Rainer Orth, Center for Biotechnology, Bielefeld University
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: sol2-ipc.patch --]
[-- Type: text/x-patch, Size: 1079 bytes --]
diff --git a/libphobos/libdruntime/core/sys/posix/sys/ipc.d b/libphobos/libdruntime/core/sys/posix/sys/ipc.d
--- a/libphobos/libdruntime/core/sys/posix/sys/ipc.d
+++ b/libphobos/libdruntime/core/sys/posix/sys/ipc.d
@@ -188,6 +188,31 @@ else version (DragonFlyBSD)
enum IPC_SET = 1;
enum IPC_STAT = 2;
}
+else version (Solaris)
+{
+ struct ipc_perm
+ {
+ uid_t uid;
+ gid_t gid;
+ uid_t cuid;
+ gid_t cgid;
+ mode_t mode;
+ uint seq;
+ key_t key;
+ version (D_LP64) {} else
+ int[4] pad;
+ }
+
+ enum IPC_CREAT = 0x0200;
+ enum IPC_EXCL = 0x0400;
+ enum IPC_NOWAIT = 0x0800;
+
+ enum key_t IPC_PRIVATE = 0;
+
+ enum IPC_RMID = 10;
+ enum IPC_SET = 11;
+ enum IPC_STAT = 12;
+}
else
{
static assert(false, "Unsupported platform");
@@ -233,6 +258,10 @@ else version (CRuntime_UClibc)
{
key_t ftok(const scope char*, int);
}
+else version (Solaris)
+{
+ key_t ftok(const scope char*, int);
+}
else
{
static assert(false, "Unsupported platform");
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [committed] d: Merge upstream dmd 52844d4b1, druntime dbd0c874, phobos 896b1d0e1.
2022-02-16 22:45 ` Rainer Orth
@ 2022-02-18 17:55 ` Iain Buclaw
2022-02-19 13:53 ` Rainer Orth
0 siblings, 1 reply; 4+ messages in thread
From: Iain Buclaw @ 2022-02-18 17:55 UTC (permalink / raw)
To: Iain Buclaw via Gcc-patches, Rainer Orth
Excerpts from Rainer Orth's message of Februar 16, 2022 11:45 pm:
> Hi Iain,
>
>> This patch merges the D front-end implementation with upstream dmd
>> 52844d4b1, as well as the D runtime libraries with druntime dbd0c874,
>> and phobos 896b1d0e1, including the latest features and bug-fixes ahead of the 2.099.0-beta1 release.
>
> this patch broke Solaris bootstrap:
>
> /vol/gcc/src/hg/master/local/libphobos/libdruntime/core/sys/posix/sys/ipc.d:193:5: error: static assert: "Unsupported platform"
> 193 | static assert(false, "Unsupported platform");
> | ^
>
> The attached patch fixes this. Tested on i386-pc-solaris2.11 and
> sparc-sun-solaris2.11.
>
Thanks Rainer!
I've committed it upstream, and will merge it down in the next sync-up.
Iain.
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [committed] d: Merge upstream dmd 52844d4b1, druntime dbd0c874, phobos 896b1d0e1.
2022-02-18 17:55 ` Iain Buclaw
@ 2022-02-19 13:53 ` Rainer Orth
0 siblings, 0 replies; 4+ messages in thread
From: Rainer Orth @ 2022-02-19 13:53 UTC (permalink / raw)
To: Iain Buclaw; +Cc: Iain Buclaw via Gcc-patches
Hi Iain,
> I've committed it upstream, and will merge it down in the next sync-up.
great, thanks. I'll keep the patch local until then.
Rainer
--
-----------------------------------------------------------------------------
Rainer Orth, Center for Biotechnology, Bielefeld University
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2022-02-19 13:53 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-02-16 10:20 [committed] d: Merge upstream dmd 52844d4b1, druntime dbd0c874, phobos 896b1d0e1 Iain Buclaw
2022-02-16 22:45 ` Rainer Orth
2022-02-18 17:55 ` Iain Buclaw
2022-02-19 13:53 ` Rainer Orth
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).