[clang] [HLSL] Add testing for space parameter on global constants (PR #106782)

Joshua Batista via cfe-commits cfe-commits at lists.llvm.org
Fri Sep 13 08:55:46 PDT 2024


================
@@ -0,0 +1,56 @@
+// RUN: %clang_cc1 -triple dxil-pc-shadermodel6.3-library -x hlsl -o - -fsyntax-only %s -verify
+
+// valid
+cbuffer cbuf {
+    RWBuffer<int> r : register(u0, space0);
+}
+
+cbuffer cbuf2 {
+    struct x {
+        // expected-error at +1 {{'register' attribute only applies to cbuffer/tbuffer and external global variables}}
+        RWBuffer<int> E : register(u2, space3);
+    };
+}
+
+struct MyStruct {
+    RWBuffer<int> E;
+};
+
+cbuffer cbuf3 {
+  MyStruct E : register(u2, space3);
----------------
bob80905 wrote:

Compilation succeeds with -T lib_6_3 on godbolt. 
I think we expect this to succeed in clang.



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


More information about the cfe-commits mailing list