Skip to content
Snippets Groups Projects
  1. Oct 10, 2022
  2. Sep 28, 2022
  3. Sep 27, 2022
  4. Sep 21, 2022
  5. Sep 19, 2022
  6. Aug 23, 2022
  7. Aug 15, 2022
    • Martin Storsjö's avatar
      vkd3d-shader/spirv: Fix the signature of vkd3d_spirv_build_op_type_image. · 1c61b206
      Martin Storsjö authored and Alexandre Julliard's avatar Alexandre Julliard committed
      
      Don't assume that enums and uint32_t parameters are identical. Clang
      16 changes the diagonstic for incompatible function pointer types
      from a warning into an error by default.
      
      This fixes the following error, when built (for aarch64, but probably
      also for other architectures) in MSVC mode:
      
      ../src/libs/vkd3d/libs/vkd3d-shader/spirv.c:1083:13: error: incompatible function pointer types passing 'uint32_t (struct vkd3d_spirv_builder *, uint32_t, SpvDim, uint32_t, uint32_t, uint32_t, uint32_t, SpvImageFormat)' (aka 'unsigned int (struct vkd3d_spirv_builder *, unsigned int, enum SpvDim_, unsigned int, unsigned int, unsigned int, unsigned int, enum SpvImageFormat_)') to parameter of type 'vkd3d_spirv_build7_pfn' (aka 'unsigned int (*)(struct vkd3d_spirv_builder *, unsigned int, unsigned int, unsigned int, unsigned int, unsigned int, unsigned int, unsigned int)') [-Wincompatible-function-pointer-types]
                  vkd3d_spirv_build_op_type_image);
                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      ../src/libs/vkd3d/libs/vkd3d-shader/spirv.c:612:68: note: passing argument to parameter 'build_pfn' here
              SpvOp op, const uint32_t *operands, vkd3d_spirv_build7_pfn build_pfn)
                                                                         ^
      
      Signed-off-by: default avatarMartin Storsjö <martin@martin.st>
      1c61b206
Loading