vulkan: Remove GCC pragmas by fixing warnings
authorJames Park <jpark37@lagfreegames.com>
Fri, 27 Nov 2020 03:41:32 +0000 (19:41 -0800)
committerMarge Bot <eric+marge@anholt.net>
Mon, 30 Nov 2020 07:54:07 +0000 (07:54 +0000)
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7783>

src/vulkan/util/gen_enum_to_str.py

index ebaf2a1..4eb21c1 100644 (file)
@@ -71,16 +71,14 @@ C_TEMPLATE = Template(textwrap.dedent(u"""\
     const char *
     vk_${enum.name[2:]}_to_str(${enum.name} input)
     {
-        #pragma GCC diagnostic push
-        #pragma GCC diagnostic ignored "-Wswitch"
         switch(input) {
-        % for v in sorted(enum.values.keys()):
-            case ${v}:
-                return "${enum.values[v]}";
-        % endfor
+    % for v in sorted(enum.values.keys()):
+        case ${v}:
+            return "${enum.values[v]}";
+    % endfor
+        default:
+            unreachable("Undefined enum value.");
         }
-        #pragma GCC diagnostic pop
-        unreachable("Undefined enum value.");
     }
 
       % if enum.guard:
@@ -90,9 +88,7 @@ C_TEMPLATE = Template(textwrap.dedent(u"""\
 
     size_t vk_structure_type_size(const struct VkBaseInStructure *item)
     {
-        #pragma GCC diagnostic push
-        #pragma GCC diagnostic ignored "-Wswitch"
-        switch(item->sType) {
+        switch((int)item->sType) {
     % for struct in structs:
         % if struct.extension is not None and struct.extension.define is not None:
     #ifdef ${struct.extension.define}
@@ -102,9 +98,9 @@ C_TEMPLATE = Template(textwrap.dedent(u"""\
         case ${struct.stype}: return sizeof(${struct.name});
         % endif
     %endfor
+        default:
+            unreachable("Undefined struct type.");
         }
-        #pragma GCC diagnostic pop
-        unreachable("Undefined struct type.");
     }
 
     void vk_load_instance_commands(VkInstance instance,