From 5a7bd9942d87336de4c724df6737861156cd0307 Mon Sep 17 00:00:00 2001 From: Swung0x48 Date: Tue, 11 Aug 2026 08:19:31 -0400 Subject: [PATCH] [Fix] (MG_Backend/DirectVulkan): print VkShaderModule as a 64-bit value - the const void* cast is ill-formed on 32-bit ABIs where the handle is a plain uint64_t --- .../MG_Backend/DirectVulkan/Renderer/PipelineFactory.cpp | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/MobileGL/MG_Backend/DirectVulkan/Renderer/PipelineFactory.cpp b/MobileGL/MG_Backend/DirectVulkan/Renderer/PipelineFactory.cpp index 43e21947..85e3d2d1 100644 --- a/MobileGL/MG_Backend/DirectVulkan/Renderer/PipelineFactory.cpp +++ b/MobileGL/MG_Backend/DirectVulkan/Renderer/PipelineFactory.cpp @@ -539,9 +539,13 @@ namespace MobileGL::MG_Backend::DirectVulkan { if (payload.stages) { for (SizeT i = 0; i < payload.stages->size(); ++i) { const auto& stage = (*payload.stages)[i]; - MGLOG_I("PipelineFactory::CreatePipeline stage[%zu]: stage=0x%x module=%p entry=%s " + // VkShaderModule is a non-dispatchable handle: a pointer on 64-bit but a + // plain uint64_t on 32-bit ABIs, where a cast to const void* is ill-formed + // (broke the armeabi-v7a build). Print it as the 64-bit value it is. + MGLOG_I("PipelineFactory::CreatePipeline stage[%zu]: stage=0x%x module=0x%llx entry=%s " "specialization=%d", - i, static_cast(stage.stage), static_cast(stage.module), + i, static_cast(stage.stage), + static_cast(reinterpret_cast(stage.module)), stage.pName ? stage.pName : "(null)", stage.pSpecializationInfo ? 1 : 0); } }