spirv-val: Improve PR 4831 error message (#4968)
diff --git a/source/val/validate_decorations.cpp b/source/val/validate_decorations.cpp index 81c9094..c4834cd 100644 --- a/source/val/validate_decorations.cpp +++ b/source/val/validate_decorations.cpp
@@ -853,17 +853,18 @@ (models->size() > 1 || has_vert)) { return vstate.diag(SPV_ERROR_INVALID_ID, var_instr) << vstate.VkErrorID(6202) - << "OpEntryPoint interfaces variable must not be vertex " - "execution model with an input storage class for " - "Entry Point id " + << vstate.SpvDecorationString(decoration.dec_type()) + << " decorated variable must not be used in vertex " + "execution model as an Input storage class for Entry " + "Point id " << entry_point << "."; } else if (storage_class == SpvStorageClassOutput && (models->size() > 1 || has_frag)) { return vstate.diag(SPV_ERROR_INVALID_ID, var_instr) << vstate.VkErrorID(6201) - << "OpEntryPoint interfaces variable must not be " - "fragment " - "execution model with an output storage class for " + << vstate.SpvDecorationString(decoration.dec_type()) + << " decorated variable must not be used in fragment " + "execution model as an Output storage class for " "Entry Point id " << entry_point << "."; }
diff --git a/test/val/val_decoration_test.cpp b/test/val/val_decoration_test.cpp index 0762670..d895873 100644 --- a/test/val/val_decoration_test.cpp +++ b/test/val/val_decoration_test.cpp
@@ -8756,9 +8756,8 @@ AnyVUID("VUID-StandaloneSpirv-Flat-06201")); EXPECT_THAT( getDiagnosticString(), - HasSubstr( - "OpEntryPoint interfaces variable must not be fragment execution " - "model with an output storage class for Entry Point id 2.")); + HasSubstr("decorated variable must not be used in fragment execution " + "model as an Output storage class for Entry Point id 2.")); } TEST_P(ValidateDecorationString, VulkanVertexInputInvalidInterface) { @@ -8796,8 +8795,8 @@ AnyVUID("VUID-StandaloneSpirv-Flat-06202")); EXPECT_THAT( getDiagnosticString(), - HasSubstr("OpEntryPoint interfaces variable must not be vertex execution " - "model with an input storage class for Entry Point id 2.")); + HasSubstr("decorated variable must not be used in vertex execution model " + "as an Input storage class for Entry Point id 2.")); } INSTANTIATE_TEST_SUITE_P(FragmentInputInterface, ValidateDecorationString,