Module: Mesa
Branch: main
Commit: eb1d009a3e6c0486a8e0c3340881360f1f57fdcc
URL:    
http://cgit.freedesktop.org/mesa/mesa/commit/?id=eb1d009a3e6c0486a8e0c3340881360f1f57fdcc

Author: Boris Brezillon <[email protected]>
Date:   Wed Mar 23 02:36:00 2022 -0700

radv: Don't use VK_OUTARRAY_MAKE()/vk_outarray_append()

MSVC doesn't support typeof(). If we want to keep compiling radv on
windows we need to use the typed variants of those macros.

Fixes: 10d69d5f0bcc ("radv: fix returning empty 
drmFormatModifierTilingFeatures")
Acked-by: Daniel Stone <[email protected]>
Acked-by: Erik Faye-Lund <[email protected]>
Reviewed-by: Jason Ekstrand <[email protected]>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15518>

---

 src/amd/vulkan/radv_formats.c | 12 ++++++++----
 1 file changed, 8 insertions(+), 4 deletions(-)

diff --git a/src/amd/vulkan/radv_formats.c b/src/amd/vulkan/radv_formats.c
index 4f916b4d328..92e59ba6d94 100644
--- a/src/amd/vulkan/radv_formats.c
+++ b/src/amd/vulkan/radv_formats.c
@@ -1238,7 +1238,9 @@ radv_list_drm_format_modifiers(struct 
radv_physical_device *dev, VkFormat format
       return;
    }
 
-   VK_OUTARRAY_MAKE(out, mod_list->pDrmFormatModifierProperties, 
&mod_list->drmFormatModifierCount);
+   VK_OUTARRAY_MAKE_TYPED(VkDrmFormatModifierPropertiesEXT, out,
+                          mod_list->pDrmFormatModifierProperties,
+                          &mod_list->drmFormatModifierCount);
 
    ac_get_supported_modifiers(&dev->rad_info, &radv_modifier_options,
                               vk_format_to_pipe_format(format), &mod_count, 
NULL);
@@ -1266,7 +1268,7 @@ radv_list_drm_format_modifiers(struct 
radv_physical_device *dev, VkFormat format
       if (!features)
          continue;
 
-      vk_outarray_append(&out, out_props) {
+      vk_outarray_append_typed(VkDrmFormatModifierPropertiesEXT, &out, 
out_props) {
          *out_props = (VkDrmFormatModifierPropertiesEXT) {
             .drmFormatModifier = mods[i],
             .drmFormatModifierPlaneCount = planes,
@@ -1293,7 +1295,9 @@ radv_list_drm_format_modifiers_2(struct 
radv_physical_device *dev, VkFormat form
       return;
    }
 
-   VK_OUTARRAY_MAKE(out, mod_list->pDrmFormatModifierProperties, 
&mod_list->drmFormatModifierCount);
+   VK_OUTARRAY_MAKE_TYPED(VkDrmFormatModifierProperties2EXT, out,
+                          mod_list->pDrmFormatModifierProperties,
+                          &mod_list->drmFormatModifierCount);
 
    ac_get_supported_modifiers(&dev->rad_info, &radv_modifier_options,
                               vk_format_to_pipe_format(format), &mod_count, 
NULL);
@@ -1321,7 +1325,7 @@ radv_list_drm_format_modifiers_2(struct 
radv_physical_device *dev, VkFormat form
       if (!features)
          continue;
 
-      vk_outarray_append(&out, out_props) {
+      vk_outarray_append_typed(VkDrmFormatModifierProperties2EXT, &out, 
out_props) {
          *out_props = (VkDrmFormatModifierProperties2EXT) {
             .drmFormatModifier = mods[i],
             .drmFormatModifierPlaneCount = planes,

Reply via email to