Skip to content
This repository was archived by the owner on Oct 12, 2022. It is now read-only.

Conversation

@WalterBright
Copy link
Member

Needed for:

src/core/thread/threadbase.d(109): Error: none of the overloads of template `core.internal.dassert._d_assert_fail` are callable using argument types `!(void delegate() const)(string, void delegate() const)`
src/core/internal/dassert.d(38):        Candidates are: `_d_assert_fail(A)(scope const string op, auto ref scope const A a)`

blocking dlang/dmd#14164

@dlang-bot
Copy link
Contributor

Thanks for your pull request, @WalterBright!

Bugzilla references

Your PR doesn't reference any Bugzilla issue.

If your PR contains non-trivial changes, please reference a Bugzilla issue or create a manual changelog.

Testing this PR locally

If you don't have a local development environment setup, you can use Digger to test this PR:

dub run digger -- build "master + druntime#3828"

@Geod24
Copy link
Member

Geod24 commented May 27, 2022

Is that really solving the problem though ?
The message you are seeing is a message that no user should ever see, under any condition. It means the assert hook in druntime is not supporting a specific type. Changing the type at the call site doesn't sound like the right fix, rather we should make sure _d_assert_fail supports the type.

@ljmf00
Copy link
Member

ljmf00 commented May 27, 2022

Is that really solving the problem though ? The message you are seeing is a message that no user should ever see, under any condition. It means the assert hook in druntime is not supporting a specific type. Changing the type at the call site doesn't sound like the right fix, rather we should make sure _d_assert_fail supports the type.

Yes! As I said previously here #3825 (comment) .

@WalterBright
Copy link
Member Author

That's a good point and should be investigated. But this PR is about unblocking dlang/dmd#14164 . We should not be welding that together with unrelated design changes in the library. Separate PRs for separate issues.

@Geod24
Copy link
Member

Geod24 commented May 27, 2022

If dlang/dmd#14164 is blocked, it's because it introduces a regression. Working around that regression is not a fix.

@WalterBright
Copy link
Member Author

It is not a regression. The code this fixes was broken in the first place. It's just that the compiler did not detect the error.

@RazvanN7 RazvanN7 merged commit 705fb36 into dlang:master May 30, 2022
@WalterBright WalterBright deleted the threadbaseCtor branch February 7, 2023 02:25
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants