-
Notifications
You must be signed in to change notification settings - Fork 12.7k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
SFINAEing p.x
on a pointer wrongly tries to complete the pointee's type
#52970
Labels
Comments
I've managed to fix this locally by adding
after the |
This is now https://reviews.llvm.org/D117603 |
@llvm/issue-subscribers-clang-frontend |
mordante
pushed a commit
that referenced
this issue
Mar 20, 2024
## Abstract This pull request removes the `__workaround_52970` concept. This concept is a workaround for a bug described in #52970, which causes the compiler to trigger ADL on a pointer to an incomplete type in an SFINAE context. This bug is fixed in Clang 14. ## Reference - [[clang] Don't typo-fix an expression in a SFINAE context](https://reviews.llvm.org/D117603) - [[libc++] [ranges] ADL-proof the [range.access] CPOs.](https://reviews.llvm.org/D116239)
chencha3
pushed a commit
to chencha3/llvm-project
that referenced
this issue
Mar 23, 2024
## Abstract This pull request removes the `__workaround_52970` concept. This concept is a workaround for a bug described in llvm#52970, which causes the compiler to trigger ADL on a pointer to an incomplete type in an SFINAE context. This bug is fixed in Clang 14. ## Reference - [[clang] Don't typo-fix an expression in a SFINAE context](https://reviews.llvm.org/D117603) - [[libc++] [ranges] ADL-proof the [range.access] CPOs.](https://reviews.llvm.org/D116239)
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Labels
This program hard-errors trying to complete
Holder<Incomplete>
; but it shouldn't.It appears to me that the problem is here, in
LookupMemberExpr
:That second recursive call to
LookupMemberExpr
triggers completion of the pointed-to type, which is not OK if we're in a SFINAE context.The text was updated successfully, but these errors were encountered: