#version 460
#extension GL_NV_ray_tracing : enable
hitAttributeNV vec4 payload;                                // ERROR, hitattributeNV unsupported in this stage 
rayPayloadInNV vec4 payloadIn;                              // ERROR, rayPayloadIn unsupported in this stage
layout(shaderRecordNV) uniform ublock                       // ERROR, shaderRecordNV unsupported on uniform blocks
{
    float a;
};
layout(binding = 0, shaderRecordNV) buffer bblock {         // ERROR, binding unsupported on shaderRecordNV blocks
    float b;
};
layout(set = 0, shaderRecordNV) buffer bblock2 {            // ERROR, set unsupported on shaderRecordNV blocks
    float c;
};
layout(shaderRecordNV) buffer bblock3 {
    float d;
};
layout(shaderRecordNV) buffer bblock4 {                     // ERROR, cannot have more than one shaderRecordNVX block
    float e;
};
void main()
{
    accelerationStructureNV a = 0;
    int e0 = gl_PrimitiveID;                                // ERROR, unsupported builtin in stage
    int e1 = gl_InstanceID;                                 // ERROR, unsupported builtin in stage
    int e3 = gl_InstanceCustomIndexNV;                      // ERROR, unsupported builtin in stage
    vec3 e4 = gl_WorldRayOriginNV;                          // ERROR, unsupported builtin in stage
    vec3 e5 = gl_WorldRayDirectionNV;                       // ERROR, unsupported builtin in stage
    vec3 e6 = gl_ObjectRayOriginNV;                         // ERROR, unsupported builtin in stage
    vec3 e7 = gl_ObjectRayDirectionNV;                      // ERROR, unsupported builtin in stage
    float e8 = gl_RayTminNV;                                // ERROR, unsupported builtin in stage
    float e9 = gl_RayTmaxNV;                                // ERROR, unsupported builtin in stage
    mat4x3 e10 = gl_ObjectToWorldNV;                        // ERROR, unsupported builtin in stage
    mat4x3 e11 = gl_WorldToObjectNV;                        // ERROR, unsupported builtin in stage
    float e12 = gl_HitTNV;                                  // ERROR, unsupported builtin in stage
    float e13 = gl_HitKindNV;                               // ERROR, unsupported builtin in stage
    reportIntersectionNV(1.0, 1U);                          // ERROR, unsupported builtin in stage
    ignoreIntersectionNV();                                 // ERROR, unsupported builtin in stage
    terminateRayNV();                                       // ERROR, unsupported builtin in stage
    d = 1.0f;                                               // ERROR, can't modify shaderRecordNV block
}
