vulkan/util: cast enums to int64_t in switch
authorLionel Landwerlin <lionel.g.landwerlin@intel.com>
Sun, 18 Apr 2021 09:45:01 +0000 (12:45 +0300)
committerMarge Bot <eric+marge@anholt.net>
Mon, 19 Apr 2021 06:14:11 +0000 (06:14 +0000)
With the new Vulkan Video extensions a bunch of enum values have been
added. The problem is that those are behind #ifdef so our generated
code complains that we using enum values not defined.

Since we're not using enum names but integer values, we can silence
all those by casting the enum type to int64_t.

Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10304>

src/vulkan/util/gen_enum_to_str.py

index bfcc466..01f0551 100644 (file)
@@ -72,7 +72,7 @@ C_TEMPLATE = Template(textwrap.dedent(u"""\
     const char *
     vk_${enum.name[2:]}_to_str(${enum.name} input)
     {
-        switch(input) {
+        switch((int64_t)input) {
     % for v in sorted(enum.values.keys()):
         case ${v}:
             return "${enum.values[v]}";