mirror of
https://github.com/KhronosGroup/glslang
synced 2024-11-10 04:20:06 +00:00
Merge pull request #3046 from amdrexu/bugfix
Fix incorrect parse message of mesh shader
This commit is contained in:
commit
0c3c37de1b
@ -5973,8 +5973,14 @@ void TParseContext::setLayoutQualifier(const TSourceLoc& loc, TPublicType& publi
|
||||
if (id == "max_vertices") {
|
||||
requireExtensions(loc, Num_AEP_mesh_shader, AEP_mesh_shader, "max_vertices");
|
||||
publicType.shaderQualifiers.vertices = value;
|
||||
if (value > resources.maxMeshOutputVerticesNV)
|
||||
error(loc, "too large, must be less than gl_MaxMeshOutputVerticesNV", "max_vertices", "");
|
||||
int max = extensionTurnedOn(E_GL_EXT_mesh_shader) ? resources.maxMeshOutputVerticesEXT
|
||||
: resources.maxMeshOutputVerticesNV;
|
||||
if (value > max) {
|
||||
TString maxsErrtring = "too large, must be less than ";
|
||||
maxsErrtring.append(extensionTurnedOn(E_GL_EXT_mesh_shader) ? "gl_MaxMeshOutputVerticesEXT"
|
||||
: "gl_MaxMeshOutputVerticesNV");
|
||||
error(loc, maxsErrtring.c_str(), "max_vertices", "");
|
||||
}
|
||||
if (nonLiteral)
|
||||
error(loc, "needs a literal integer", "max_vertices", "");
|
||||
return;
|
||||
@ -5982,8 +5988,14 @@ void TParseContext::setLayoutQualifier(const TSourceLoc& loc, TPublicType& publi
|
||||
if (id == "max_primitives") {
|
||||
requireExtensions(loc, Num_AEP_mesh_shader, AEP_mesh_shader, "max_primitives");
|
||||
publicType.shaderQualifiers.primitives = value;
|
||||
if (value > resources.maxMeshOutputPrimitivesNV)
|
||||
error(loc, "too large, must be less than gl_MaxMeshOutputPrimitivesNV", "max_primitives", "");
|
||||
int max = extensionTurnedOn(E_GL_EXT_mesh_shader) ? resources.maxMeshOutputPrimitivesEXT
|
||||
: resources.maxMeshOutputPrimitivesNV;
|
||||
if (value > max) {
|
||||
TString maxsErrtring = "too large, must be less than ";
|
||||
maxsErrtring.append(extensionTurnedOn(E_GL_EXT_mesh_shader) ? "gl_MaxMeshOutputPrimitivesEXT"
|
||||
: "gl_MaxMeshOutputPrimitivesNV");
|
||||
error(loc, maxsErrtring.c_str(), "max_primitives", "");
|
||||
}
|
||||
if (nonLiteral)
|
||||
error(loc, "needs a literal integer", "max_primitives", "");
|
||||
return;
|
||||
|
Loading…
Reference in New Issue
Block a user