1#version 460
2#extension GL_NV_ray_tracing : enable
3hitAttributeNV vec4 payload;                                // ERROR, hitattributeNV unsupported in this stage
4rayPayloadInNV vec4 payloadIn;                              // ERROR, rayPayloadIn unsupported in this stage
5layout(shaderRecordNV) uniform ublock                       // ERROR, shaderRecordNV unsupported on uniform blocks
6{
7    float a;
8};
9layout(binding = 0, shaderRecordNV) buffer bblock {         // ERROR, binding unsupported on shaderRecordNV blocks
10    float b;
11};
12layout(set = 0, shaderRecordNV) buffer bblock2 {            // ERROR, set unsupported on shaderRecordNV blocks
13    float c;
14};
15layout(shaderRecordNV) buffer bblock3 {
16    float d;
17};
18layout(shaderRecordNV) buffer bblock4 {                     // ERROR, cannot have more than one shaderRecordNVX block
19    float e;
20};
21void main()
22{
23    accelerationStructureNV a = 0;
24    int e0 = gl_PrimitiveID;                                // ERROR, unsupported builtin in stage
25    int e1 = gl_InstanceID;                                 // ERROR, unsupported builtin in stage
26    int e3 = gl_InstanceCustomIndexNV;                      // ERROR, unsupported builtin in stage
27    vec3 e4 = gl_WorldRayOriginNV;                          // ERROR, unsupported builtin in stage
28    vec3 e5 = gl_WorldRayDirectionNV;                       // ERROR, unsupported builtin in stage
29    vec3 e6 = gl_ObjectRayOriginNV;                         // ERROR, unsupported builtin in stage
30    vec3 e7 = gl_ObjectRayDirectionNV;                      // ERROR, unsupported builtin in stage
31    float e8 = gl_RayTminNV;                                // ERROR, unsupported builtin in stage
32    float e9 = gl_RayTmaxNV;                                // ERROR, unsupported builtin in stage
33    mat4x3 e10 = gl_ObjectToWorldNV;                        // ERROR, unsupported builtin in stage
34    mat4x3 e11 = gl_WorldToObjectNV;                        // ERROR, unsupported builtin in stage
35    float e12 = gl_HitTNV;                                  // ERROR, unsupported builtin in stage
36    float e13 = gl_HitKindNV;                               // ERROR, unsupported builtin in stage
37    reportIntersectionNV(1.0, 1U);                          // ERROR, unsupported builtin in stage
38    ignoreIntersectionNV();                                 // ERROR, unsupported builtin in stage
39    terminateRayNV();                                       // ERROR, unsupported builtin in stage
40    d = 1.0f;                                               // ERROR, can't modify shaderRecordNV block
41}
42