summaryrefslogtreecommitdiffstats
path: root/tests/bugs/split-nested-types.hlsl
diff options
context:
space:
mode:
Diffstat (limited to 'tests/bugs/split-nested-types.hlsl')
-rw-r--r--tests/bugs/split-nested-types.hlsl15
1 files changed, 13 insertions, 2 deletions
diff --git a/tests/bugs/split-nested-types.hlsl b/tests/bugs/split-nested-types.hlsl
index 577f64a75..2bfea49c2 100644
--- a/tests/bugs/split-nested-types.hlsl
+++ b/tests/bugs/split-nested-types.hlsl
@@ -1,9 +1,19 @@
//TEST:COMPARE_HLSL:-no-mangle -profile ps_5_0
#ifdef __SLANG__
+
+#define BEGIN_CBUFFER(NAME) cbuffer NAME
+#define END_CBUFFER(NAME, REG) /**/
+#define CBUFFER_REF(NAME, FIELD) FIELD
+
import split_nested_types;
+
#else
+#define BEGIN_CBUFFER(NAME) struct SLANG_ParameterGroup_##NAME
+#define END_CBUFFER(NAME, REG) ; cbuffer NAME : REG { SLANG_ParameterGroup_##NAME NAME; }
+#define CBUFFER_REF(NAME, FIELD) NAME.FIELD
+
#define A A_0
#define x x_0
@@ -31,12 +41,13 @@ struct M
#endif
-cbuffer C
+BEGIN_CBUFFER(C)
{
M m;
}
+END_CBUFFER(C,register(b0))
float4 main() : SV_TARGET
{
- return m.b.y;
+ return CBUFFER_REF(C,m).b.y;
}