layers: Add NULL/sType checks for struct members
Add param_checker support for validating struct members. Messages
are logged for the following conditions, based on conditions
specified in vk.xml:
- A pointer is NULL and is not marked as optional in the XML
- An array is NULL and is not marked as optional in the XML, unless
its count is 0
- An array count is 0 and is not marked as optional in the XML
- A structure's sType value does not match the value specified
in the XML
Addresses GL105, GL109, GH82
Change-Id: I7063fe2582b30fdfc0006fe945a0f9c84a2aa66a
diff --git a/vk.xml b/vk.xml
index 515f2d1..41e151a 100644
--- a/vk.xml
+++ b/vk.xml
@@ -1174,7 +1174,7 @@
</validity>
</type>
<type category="struct" name="VkPipelineInputAssemblyStateCreateInfo">
- <member><type>VkStructureType</type> <name>sType</name></member> <!-- Must be VK_STRUCTURE_TYPE_PIPELINE_IINPUT_ASSEMBLY_STATE_CREATE_INFO -->
+ <member><type>VkStructureType</type> <name>sType</name></member> <!-- Must be VK_STRUCTURE_TYPE_PIPELINE_INPUT_ASSEMBLY_STATE_CREATE_INFO -->
<member>const <type>void</type>* <name>pNext</name></member> <!-- Pointer to next structure -->
<member optional="true"><type>VkPipelineInputAssemblyStateCreateFlags</type> <name>flags</name></member> <!-- Reserved -->
<member><type>VkPrimitiveTopology</type> <name>topology</name></member>