mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-06-15 15:38:22 +02:00
Let-parameters (e.g. hasRasterization, hasTessellation for
VkGraphicsPipelineCreateInfo) are local variables initialized by
reading a value from the stream. The codegen was creating them
with isConst=True, which caused streamPrimitive() to emit a cast
like:
hasRasterization = (const uint32_t)vkStream->getBe32();
The const qualifier on a scalar rvalue cast result is discarded
and triggers -Werror=ignored-qualifiers once that flag is enabled
for Soong compatibility, breaking the build:
src/gfxstream/guest/vulkan_enc/goldfish_vk_marshaling_guest.cpp:
In function 'void gfxstream::vk::unmarshal_VkGraphicsPipelineCreateInfo(
VulkanStreamGuest*, VkStructureType, VkGraphicsPipelineCreateInfo*)':
goldfish_vk_marshaling_guest.cpp:4202:28: error: type qualifiers
ignored on cast result type [-Werror=ignored-qualifiers]
4202 | hasRasterization = (const uint32_t)vkStream->getBe32();
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
goldfish_vk_marshaling_guest.cpp:4207:27: error: type qualifiers
ignored on cast result type [-Werror=ignored-qualifiers]
4207 | hasTessellation = (const uint32_t)vkStream->getBe32();
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
cc1plus: some warnings being treated as errors
Mark the let-param as non-const since it is a local that gets
assigned.
Fixes:
|
||
|---|---|---|
| .. | ||
| amd | ||
| android_stub | ||
| asahi | ||
| broadcom | ||
| c11 | ||
| compiler | ||
| drm-shim | ||
| egl | ||
| etnaviv | ||
| freedreno | ||
| gallium | ||
| gbm | ||
| getopt | ||
| gfxstream | ||
| glx | ||
| gtest | ||
| imagination | ||
| imgui | ||
| intel | ||
| kosmickrisp | ||
| loader | ||
| mesa | ||
| microsoft | ||
| nouveau | ||
| panfrost | ||
| poly | ||
| tool | ||
| util | ||
| virtio | ||
| vulkan | ||
| x11 | ||
| .clang-format | ||
| meson.build | ||