<generator>
: Revert unnecessary ADL firewall for _Gen_promise_base
#4827
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
In #4464
_Gen_promise_base
was made a nested non-template class of a class template.However, per [basic.lookup.argdep]/3,2, the template arguments of a base class don't furtherly contribute to ADL, so the original implementation strategy should already be ADL-proof for
promise_type
.This PR reverts unnecessary changes and adds test cases to ensure that
promise_type
is already ADL-proof. Actually, exsiting unqualified function calls are also doing this.Drive-by change: remove one occurrence of theSuperseded by #4834._NODISCARD_FRIEND
workaround, following up #4782.