================
@@ -13102,7 +13102,10 @@ StmtResult
TreeTransform<Derived>::TransformUnresolvedSYCLKernelCallStmt(
template <typename Derived>
ExprResult TreeTransform<Derived>::TransformCXXReflectExpr(CXXReflectExpr *E) {
// TODO(reflection): Implement its transform
- assert(false && "not implemented yet");
+ if (!E->isTypeDependent())
+ return E;
----------------
changkhothuychung wrote:
Would replacing
```cpp
if (!E->isTypeDependent())
return E;
```
by
```cpp
switch (E->getKind()) {
case ReflectionKind::Type: {
TypeSourceInfo *NewT =
getDerived().TransformType(static_cast<TypeSourceInfo *>(const_cast<void
*>(E->getOpaqueValue())));
if (!NewT)
return ExprError();
return SemaRef.BuildCXXReflectExpr(E->getOperatorLoc(), NewT);
}
}
```
make more sense for now? If not, I think its better to remove that test for
now, and we can circle back to it later in upcoming PRs.
https://github.com/llvm/llvm-project/pull/190356
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits