[clang] Implement resource binding type prefix mismatch errors (PR #87578)

Justin Bogner via cfe-commits cfe-commits at lists.llvm.org
Wed Apr 10 09:28:14 PDT 2024


================
@@ -7367,8 +7367,72 @@ static void handleHLSLResourceBindingAttr(Sema &S, Decl *D,
     return;
   }
 
-  // FIXME: check reg type match decl. Issue
-  // https://github.com/llvm/llvm-project/issues/57886.
+  VarDecl *VD = dyn_cast<VarDecl>(D);
+  HLSLBufferDecl *BD = dyn_cast<HLSLBufferDecl>(D);
+
+  if (VD || BD) {
----------------
bogner wrote:

It's probably worth breaking this logic out into a separate `checkHLSLResourceRegType` function. This would improve the readability and we can avoid some indentation by using early returns.

https://github.com/llvm/llvm-project/pull/87578


More information about the cfe-commits mailing list