From 19d541a91d0a0e8f3c2309d24d25c14ff0319061 Mon Sep 17 00:00:00 2001 From: Nathaniel Cesario Date: Tue, 7 Nov 2023 13:15:48 -0700 Subject: [PATCH] Fix some compiler warnings This change primarily fixes some -Wconversion warnings from gcc, but also silences a warning triggered in glslang_tab.cpp, which is generated code from bison. There are still several GCC conversion warnings in Types.h due to the use of bit fields that will be resolved in a future change. --- SPIRV/doc.h | 4 ++-- Test/baseResults/constFoldIntMin.frag.out | 2 +- glslang/CMakeLists.txt | 5 +++++ glslang/Include/ConstantUnion.h | 2 +- 4 files changed, 9 insertions(+), 4 deletions(-) diff --git a/SPIRV/doc.h b/SPIRV/doc.h index b60ad340..52152991 100644 --- a/SPIRV/doc.h +++ b/SPIRV/doc.h @@ -240,8 +240,8 @@ public: OperandParameters operands; protected: - int typePresent : 1; - int resultPresent : 1; + bool typePresent : 1; + bool resultPresent : 1; }; // The set of objects that hold all the instruction/operand diff --git a/Test/baseResults/constFoldIntMin.frag.out b/Test/baseResults/constFoldIntMin.frag.out index 2c45ca80..e7dd3532 100644 --- a/Test/baseResults/constFoldIntMin.frag.out +++ b/Test/baseResults/constFoldIntMin.frag.out @@ -25,7 +25,7 @@ Requested GL_ARB_gpu_shader_int64 0:9 move second child to first child ( temp int16_t) 0:9 'x' ( temp int16_t) 0:9 Constant: -0:9 0 (const int8_t) +0:9 0 (const int16_t) 0:10 Sequence 0:10 move second child to first child ( temp int) 0:10 'y' ( temp int) diff --git a/glslang/CMakeLists.txt b/glslang/CMakeLists.txt index 7897b994..6a44f3ae 100644 --- a/glslang/CMakeLists.txt +++ b/glslang/CMakeLists.txt @@ -134,6 +134,11 @@ add_library(MachineIndependent STATIC ${MACHINEINDEPENDENT_SOURCES} ${MACHINEIND set_property(TARGET MachineIndependent PROPERTY POSITION_INDEPENDENT_CODE ON) set_property(TARGET MachineIndependent PROPERTY FOLDER glslang) +if (NOT MSVC) + # -Wunused-but-set-variable is triggered in code generated by bison that we do not control. Turn this warning off, but only for the generated. + set_source_files_properties(MachineIndependent/glslang_tab.cpp PROPERTIES COMPILE_FLAGS -Wno-unused-but-set-variable) +endif() + glslang_add_build_info_dependency(MachineIndependent) glslang_pch(MachineIndependent MachineIndependent/pch.h) diff --git a/glslang/Include/ConstantUnion.h b/glslang/Include/ConstantUnion.h index 1f39fc59..da4737b6 100644 --- a/glslang/Include/ConstantUnion.h +++ b/glslang/Include/ConstantUnion.h @@ -503,7 +503,7 @@ public: case EbtInt: returnValue.setIConst(iConst % constant.iConst); break; case EbtUint: returnValue.setUConst(uConst % constant.uConst); break; case EbtInt8: returnValue.setI8Const(i8Const % constant.i8Const); break; - case EbtInt16: returnValue.setI8Const(i8Const % constant.i16Const); break; + case EbtInt16: returnValue.setI16Const(i16Const % constant.i16Const); break; case EbtInt64: returnValue.setI64Const(i64Const % constant.i64Const); break; case EbtUint8: returnValue.setU8Const(u8Const % constant.u8Const); break; case EbtUint16: returnValue.setU16Const(u16Const % constant.u16Const); break;