-
-
Notifications
You must be signed in to change notification settings - Fork 422
fix Issue 18734 - bitnum parameter of core.bitop.bt should be signed #3141
Conversation
|
Thanks for your pull request, @WalterBright! Bugzilla references
Testing this PR locallyIf you don't have a local development environment setup, you can use Digger to test this PR: dub run digger -- build "master + druntime#3141" |
|
Looks like Error 42: Symbol Undefined __D4core5bitop2btFNaNbNiMxPkkZi |
The problem is that the new phobos.lib is copied into the test directory, and optlink uses this one if d_do_test is compiled by the host compiler. |
The import path and the library used should be the same. Otherwise, we can never update the library interface. |
Sure. This workaround https://github.com/dlang/dmd/blob/master/.azure-pipelines/windows.sh#L117-L119 probably was set up when the tools were still built with the new compiler. Mixing builds with different compilers is not so easy with optlink because it picks up information from sc.ini in its containing folder. It probably needs to be copied into the |
|
I fail to see a good reason why the druntime API should depend on the 'signature' of a particular x86 instruction, and why a bit index should all of a sudden be a signed |
Isn't the primary purpose of core.bitop to expose various instructions? EDIT: That said, |
Previously, the tools were compiled by the DMD host compiler, but linked with freshly compiled druntime/Phobos, leading to inevitable issues popping up in dlang/druntime#3141 and dlang/druntime#3142.
Previously, the tools were compiled by the DMD host compiler, but linked with freshly compiled druntime/Phobos, leading to inevitable issues popping up in dlang/druntime#3141 and dlang/druntime#3142.
Previously, the tools were compiled by the DMD host compiler, but linked with freshly compiled druntime/Phobos, leading to inevitable issues popping up in dlang/druntime#3141 and dlang/druntime#3142.
|
@WalterBright This change doesn't really seem to provide any benefit. Should we close this? |
The BT instructions take signed offsets, not unsigned ones.