You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
After generating dub.selections.nix, mkDub.nix and test.nix (with --output), and trying to build the result, it fails with:
this derivation will be built: /nix/store/lr3xd1azg8a98bpyilyfwix6zqi0qbsg-test.drvbuilding '/nix/store/lr3xd1azg8a98bpyilyfwix6zqi0qbsg-test.drv'...unpacking sourcesunpacking source archive /nix/store/rk7kivayz7sxa3pmkcrwjicpawmmfbph-sourcesource root is sourcepatching sourcesupdateAutotoolsGnuConfigScriptsPhaseconfiguringno configure script, doing nothingbuilding Registered package: mir-core (version: 1.6.0) Registered package: mir-cpuid (version: 1.2.11) Registered package: silly (version: 1.1.1) Registered package: mir-algorithm (version: 3.21.0) Registered package: mir-ion (version: 2.2.0) Starting Performing "release" build using dmd for x86_64. Building test ~master: building configuration [application]/nix/store/7y1iy4qlxhnykxi56gb4cjwdx5dppj81-mir-core/source/mir/algebraic.d(1474,36): Error: `pure` function `mir.algebraic.Algebraic!(IonExt_).Algebraic.opEquals!().opEquals` cannot call impure function `mir.annotated.U!(Algebraic!(IonExt_)).Annotated.opEquals`/nix/store/7y1iy4qlxhnykxi56gb4cjwdx5dppj81-mir-core/source/mir/algebraic.d(1474,36): Error: `@nogc` function `mir.algebraic.Algebraic!(IonExt_).Algebraic.opEquals!().opEquals` cannot call non-@nogc function `mir.annotated.U!(Algebraic!(IonExt_)).Annotated.opEquals`/nix/store/7y1iy4qlxhnykxi56gb4cjwdx5dppj81-mir-core/source/mir/algebraic.d(1474,36): Error: function `mir.annotated.U!(Algebraic!(IonExt_)).Annotated.opEquals` is not `nothrow`/nix/store/7y1iy4qlxhnykxi56gb4cjwdx5dppj81-mir-core/source/mir/algebraic.d(1429,10): Error: function `mir.algebraic.Algebraic!(IonExt_).Algebraic.opEquals!().opEquals` may throw but is marked as `nothrow`/nix/store/a9aywjvvc66p4l146hcmik39ddxbghsp-mir-algorithm/source/mir/annotated.d(69,54): Error: template instance `mir.algebraic.Algebraic!(IonExt_).Algebraic.opEquals!()` error instantiating/nix/store/7y1iy4qlxhnykxi56gb4cjwdx5dppj81-mir-core/source/mir/internal/meta.d(683,39): instantiated from here: `U!(Algebraic!(IonExt_))`/nix/store/7y1iy4qlxhnykxi56gb4cjwdx5dppj81-mir-core/source/mir/algebraic.d(858,36): 12 recursive instantiations from here: `ReplaceTypeUnless!(isVariant, This, Algebraic!(IonExt_), IonNull, bool, long, double, string, Blob, Clob, Timestamp, This[], StringMap!(This), Annotated!(This))`/nix/store/01jyvn04x0r8cd26ysrrca91mvxsj1r2-mir-ion/source/mir/algebraic_alias/ion_ext.d(56,25): instantiated from here: `Algebraic!(IonExt_)`/nix/store/7y1iy4qlxhnykxi56gb4cjwdx5dppj81-mir-core/source/mir/algebraic.d(1474,36): Error: `pure` function `mir.algebraic.Algebraic!(Ion_).Algebraic.opEquals!().opEquals` cannot call impure function `mir.annotated.U!(Algebraic!(Ion_)).Annotated.opEquals`/nix/store/7y1iy4qlxhnykxi56gb4cjwdx5dppj81-mir-core/source/mir/algebraic.d(1474,36): Error: `@nogc` function `mir.algebraic.Algebraic!(Ion_).Algebraic.opEquals!().opEquals` cannot call non-@nogc function `mir.annotated.U!(Algebraic!(Ion_)).Annotated.opEquals`/nix/store/7y1iy4qlxhnykxi56gb4cjwdx5dppj81-mir-core/source/mir/algebraic.d(1474,36): Error: function `mir.annotated.U!(Algebraic!(Ion_)).Annotated.opEquals` is not `nothrow`/nix/store/7y1iy4qlxhnykxi56gb4cjwdx5dppj81-mir-core/source/mir/algebraic.d(1429,10): Error: function `mir.algebraic.Algebraic!(Ion_).Algebraic.opEquals!().opEquals` may throw but is marked as `nothrow`/nix/store/a9aywjvvc66p4l146hcmik39ddxbghsp-mir-algorithm/source/mir/annotated.d(69,54): Error: template instance `mir.algebraic.Algebraic!(Ion_).Algebraic.opEquals!()` error instantiating/nix/store/7y1iy4qlxhnykxi56gb4cjwdx5dppj81-mir-core/source/mir/internal/meta.d(683,39): instantiated from here: `U!(Algebraic!(Ion_))`/nix/store/7y1iy4qlxhnykxi56gb4cjwdx5dppj81-mir-core/source/mir/algebraic.d(858,36): 12 recursive instantiations from here: `ReplaceTypeUnless!(isVariant, This, Algebraic!(Ion_), typeof(null), bool, long, double, string, Blob, Clob, Timestamp, This[], StringMap!(This), Annotated!(This))`/nix/store/a9aywjvvc66p4l146hcmik39ddxbghsp-mir-algorithm/source/mir/algebraic_alias/ion.d(60,22): instantiated from here: `Algebraic!(Ion_)`Error dmd failed with exit code 1.error: builder for '/nix/store/lr3xd1azg8a98bpyilyfwix6zqi0qbsg-test.drv' failed with exit code 2; last 10 log lines: > /nix/store/01jyvn04x0r8cd26ysrrca91mvxsj1r2-mir-ion/source/mir/algebraic_alias/ion_ext.d(56,25): instantiated from here: `Algebraic!(IonExt_)` > /nix/store/7y1iy4qlxhnykxi56gb4cjwdx5dppj81-mir-core/source/mir/algebraic.d(1474,36): Error: `pure` function `mir.algebraic.Algebraic!(Ion_).Algebraic.opEquals!().opEquals` cannot call impure function `mir.annotated.U!(Algebraic!(Ion_)).Annotated.opEquals` > /nix/store/7y1iy4qlxhnykxi56gb4cjwdx5dppj81-mir-core/source/mir/algebraic.d(1474,36): Error: `@nogc` function `mir.algebraic.Algebraic!(Ion_).Algebraic.opEquals!().opEquals` cannot call non-@nogc function `mir.annotated.U!(Algebraic!(Ion_)).Annotated.opEquals` > /nix/store/7y1iy4qlxhnykxi56gb4cjwdx5dppj81-mir-core/source/mir/algebraic.d(1474,36): Error: function `mir.annotated.U!(Algebraic!(Ion_)).Annotated.opEquals` is not `nothrow` > /nix/store/7y1iy4qlxhnykxi56gb4cjwdx5dppj81-mir-core/source/mir/algebraic.d(1429,10): Error: function `mir.algebraic.Algebraic!(Ion_).Algebraic.opEquals!().opEquals` may throw but is marked as `nothrow` > /nix/store/a9aywjvvc66p4l146hcmik39ddxbghsp-mir-algorithm/source/mir/annotated.d(69,54): Error: template instance `mir.algebraic.Algebraic!(Ion_).Algebraic.opEquals!()` error instantiating > /nix/store/7y1iy4qlxhnykxi56gb4cjwdx5dppj81-mir-core/source/mir/internal/meta.d(683,39): instantiated from here: `U!(Algebraic!(Ion_))` > /nix/store/7y1iy4qlxhnykxi56gb4cjwdx5dppj81-mir-core/source/mir/algebraic.d(858,36): 12 recursive instantiations from here: `ReplaceTypeUnless!(isVariant, This, Algebraic!(Ion_), typeof(null), bool, long, double, string, Blob, Clob, Timestamp, This[], StringMap!(This), Annotated!(This))` > /nix/store/a9aywjvvc66p4l146hcmik39ddxbghsp-mir-algorithm/source/mir/algebraic_alias/ion.d(60,22): instantiated from here: `Algebraic!(Ion_)` > Error dmd failed with exit code 1. For full logs, run 'nix-store -l /nix/store/lr3xd1azg8a98bpyilyfwix6zqi0qbsg-test.drv'.
This seems to be due to a DMD bug. However, this bug only manifests with --combined.
Considering that --combined might be an unusual way to build Dub packages, perhaps it may make sense to replace it with --temp-build?
Replacing --combined with --temp-build causes the above simple package to successfully build.
The text was updated successfully, but these errors were encountered:
Consider this simple Dub package:
After generating
dub.selections.nix
,mkDub.nix
andtest.nix
(with--output
), and trying to build the result, it fails with:This seems to be due to a DMD bug. However, this bug only manifests with
--combined
.Considering that
--combined
might be an unusual way to build Dub packages, perhaps it may make sense to replace it with--temp-build
?Replacing
--combined
with--temp-build
causes the above simple package to successfully build.The text was updated successfully, but these errors were encountered: