beanz added a comment. Yea, the gist of it is that in HLSL `this` is a reference not a pointer, which means the `CXXThisExpr` is always an LValue.
I think the right fix for this is to cleanup the `CXXThisExpr` creation code and create a `CXXThisExpr::Create` method like the other AST nodes. Then I can have a simpler way to force the `CXXThisExpr` to always be an LValue for HLSL. @aaron.ballman, does that sound reasonable? Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D159126/new/ https://reviews.llvm.org/D159126 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits