yum-mirror/slang
Making it easier to work with shaders
git clone https://git.yummers.dev/yum-mirror/slang
26b9a176e
master
1//TEST:SIMPLE(filecheck=CHECK): -target spirv -gnone -std 2026 2//TEST:SIMPLE(filecheck=CHECK): -target spirv -gminimal -std 2026 3//TEST:SIMPLE(filecheck=CHECK_LEGACY): -target spirv -gnone -std 2025 4//TEST:SIMPLE(filecheck=CHECK_LEGACY): -target spirv -gminimal -std 2025 5//TEST:SIMPLE(filecheck=CHECK_LEGACY): -target spirv -gnone -std legacy 6//TEST:SIMPLE(filecheck=CHECK_LEGACY): -target spirv -gminimal -std legacy 7 8// CHECK: error 30811 9// CHECK: struct Child : Parent {}; 10// CHECK: error 38029 11// CHECK: getObject<Child>(); 12 13// CHECK_LEGACY: warning 30816 14// CHECK_LEGACY: struct Child : Parent {}; 15// CHECK_LEGACY: error 38029 16// CHECK_LEGACY: getObject<Child>(); 17 18interface IFoo {}; 19struct Parent : IFoo {}; 20struct Child : Parent {}; 21 22T getObject<T>() where T : IFoo 23{ 24 return T(); 25} 26 27[shader("compute")] 28void main() 29{ 30 getObject<Child>(); 31}