From bdc0795704e5138a41210f3cf05e1dec5d4527fd Mon Sep 17 00:00:00 2001 From: Eidolon Date: Tue, 16 Jan 2024 06:11:43 -0500 Subject: [PATCH] Fix several Clang compile warnings --- src/CMakeLists.txt | 4 ++++ src/acs/call-funcs.cpp | 4 ++-- src/audio/wav.cpp | 4 ++-- src/hwr2/blit_rect.cpp | 2 +- src/hwr2/pass_imgui.cpp | 4 ++-- src/hwr2/twodee.hpp | 4 ++-- src/hwr2/twodee_renderer.cpp | 2 +- src/k_hud.cpp | 6 +++--- src/k_zvote.c | 2 +- src/m_misc.cpp | 16 ++++++++-------- src/media/options.cpp | 2 +- src/media/yuv420p.cpp | 12 ++++++++++++ src/media/yuv420p.hpp | 7 ++----- src/p_spec.c | 2 +- src/sdl/i_main.cpp | 2 +- src/sdl/i_system.cpp | 2 +- 16 files changed, 44 insertions(+), 31 deletions(-) diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 045452975..a4099f965 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -517,6 +517,7 @@ target_compile_options(SRB2SDL2 PRIVATE -Wno-trigraphs -Wno-error=non-literal-null-conversion -Wno-error=constant-conversion + -Wno-unused-but-set-variable -Wno-error=unused-but-set-variable > @@ -530,6 +531,9 @@ target_compile_options(SRB2SDL2 PRIVATE # C++, GNU, Clang and Apple Clang $<$,$,$,$>>: -Wall + -Wno-unused-function + -Wno-unused-but-set-variable + -Wno-unused-private-field > # C++, MSVC diff --git a/src/acs/call-funcs.cpp b/src/acs/call-funcs.cpp index 07d5c5940..c4b16d26c 100644 --- a/src/acs/call-funcs.cpp +++ b/src/acs/call-funcs.cpp @@ -1574,7 +1574,7 @@ bool CallFunc_HaveUnlockableTrigger(ACSVM::Thread *thread, const ACSVM::Word *ar --------------------------------------------------*/ bool CallFunc_HaveUnlockable(ACSVM::Thread *thread, const ACSVM::Word *argV, ACSVM::Word argC) { - UINT8 id = 0; + UINT32 id = 0; bool unlocked = false; (void)argC; @@ -1636,7 +1636,7 @@ bool CallFunc_PlayerBot(ACSVM::Thread *thread, const ACSVM::Word *argV, ACSVM::W && (info->mo != NULL && P_MobjWasRemoved(info->mo) == false) && (info->mo->player != NULL)) { - + thread->dataStk.push(info->mo->player->bot); return false; } diff --git a/src/audio/wav.cpp b/src/audio/wav.cpp index c1bcd7977..fb9145e85 100644 --- a/src/audio/wav.cpp +++ b/src/audio/wav.cpp @@ -216,10 +216,10 @@ Wav::Wav(tcb::span data) switch (read_fmt->bit_width) { case 8: - interleaved_samples = std::move(read_uint8_samples_from_stream(stream, sample_count)); + interleaved_samples = read_uint8_samples_from_stream(stream, sample_count); break; case 16: - interleaved_samples = std::move(read_int16_samples_from_stream(stream, sample_count)); + interleaved_samples = read_int16_samples_from_stream(stream, sample_count); break; default: throw std::runtime_error("unsupported sample amplitude bit width"); diff --git a/src/hwr2/blit_rect.cpp b/src/hwr2/blit_rect.cpp index df3e791bb..77c620875 100644 --- a/src/hwr2/blit_rect.cpp +++ b/src/hwr2/blit_rect.cpp @@ -41,7 +41,7 @@ static const uint16_t kIndices[] = {0, 1, 2, 1, 3, 2}; static const PipelineDesc kUnshadedPipelineDescription = { PipelineProgram::kUnshaded, {{{sizeof(BlitVertex)}}, {{VertexAttributeName::kPosition, 0, 0}, {VertexAttributeName::kTexCoord0, 0, 12}}}, - {{{{UniformName::kProjection}}, {{UniformName::kModelView, UniformName::kTexCoord0Transform}}}}, + {{{UniformName::kProjection}, {{UniformName::kModelView, UniformName::kTexCoord0Transform}}}}, {{// RGB/A texture SamplerName::kSampler0}}, std::nullopt, diff --git a/src/hwr2/pass_imgui.cpp b/src/hwr2/pass_imgui.cpp index 9cbb87ad7..77935d401 100644 --- a/src/hwr2/pass_imgui.cpp +++ b/src/hwr2/pass_imgui.cpp @@ -23,7 +23,7 @@ static const PipelineDesc kPipelineDesc = { {{VertexAttributeName::kPosition, 0, 0}, {VertexAttributeName::kTexCoord0, 0, 12}, {VertexAttributeName::kColor, 0, 24}}}, - {{{{UniformName::kProjection}}, {{UniformName::kModelView, UniformName::kTexCoord0Transform}}}}, + {{{UniformName::kProjection}, {{UniformName::kModelView, UniformName::kTexCoord0Transform}}}}, {{SamplerName::kSampler0}}, PipelineDepthStencilStateDesc {true, true, CompareFunc::kAlways, false, {}, {}}, {BlendDesc { @@ -200,7 +200,7 @@ void ImguiPass::transfer(Rhi& rhi, Handle ctx) for (auto& draw_cmd : draw_list.cmds) { // Binding set - std::array vbos = {{0, vbo}}; + std::array vbos = {{{0, vbo}}}; std::array tbs = {{{rhi::SamplerName::kSampler0, draw_cmd.tex}}}; rhi::Handle binding_set = rhi.create_binding_set(ctx, pipeline_, {vbos, tbs}); draw_cmd.binding_set = binding_set; diff --git a/src/hwr2/twodee.hpp b/src/hwr2/twodee.hpp index 319034e6c..bffb9d454 100644 --- a/src/hwr2/twodee.hpp +++ b/src/hwr2/twodee.hpp @@ -137,7 +137,7 @@ public: Draw2dQuadBuilder(const Draw2dQuadBuilder&) = delete; Draw2dQuadBuilder(Draw2dQuadBuilder&&) = default; Draw2dQuadBuilder& operator=(const Draw2dQuadBuilder&) = delete; - Draw2dQuadBuilder& operator=(Draw2dQuadBuilder&&) = default; + Draw2dQuadBuilder& operator=(Draw2dQuadBuilder&&) = delete; Draw2dQuadBuilder& rect(float x, float y, float w, float h) { @@ -218,7 +218,7 @@ public: Draw2dVerticesBuilder(const Draw2dVerticesBuilder&) = delete; Draw2dVerticesBuilder(Draw2dVerticesBuilder&&) = default; Draw2dVerticesBuilder& operator=(const Draw2dVerticesBuilder&) = delete; - Draw2dVerticesBuilder& operator=(Draw2dVerticesBuilder&&) = default; + Draw2dVerticesBuilder& operator=(Draw2dVerticesBuilder&&) = delete; Draw2dVerticesBuilder& vert(float x, float y, float u = 0, float v = 0) { diff --git a/src/hwr2/twodee_renderer.cpp b/src/hwr2/twodee_renderer.cpp index 95f64bd11..ae19cb887 100644 --- a/src/hwr2/twodee_renderer.cpp +++ b/src/hwr2/twodee_renderer.cpp @@ -104,7 +104,7 @@ static PipelineDesc make_pipeline_desc(TwodeePipelineKey key) return { PipelineProgram::kUnshadedPaletted, kTwodeeVertexInput, - {{{{UniformName::kProjection}}, + {{{UniformName::kProjection}, {{UniformName::kModelView, UniformName::kTexCoord0Transform, UniformName::kSampler0IsIndexedAlpha}}}}, {{SamplerName::kSampler0, SamplerName::kSampler1, SamplerName::kSampler2}}, std::nullopt, diff --git a/src/k_hud.cpp b/src/k_hud.cpp index 4283d8b96..43bba8190 100644 --- a/src/k_hud.cpp +++ b/src/k_hud.cpp @@ -5632,7 +5632,7 @@ typedef struct sfxenum_t sound; } message_t; -typedef struct +struct messagestate_t { std::deque messages; tic_t timer = 0; @@ -5658,7 +5658,7 @@ typedef struct } void tick() - { + { if (messages.size() == 0) return; @@ -5693,7 +5693,7 @@ typedef struct messages.pop_front(); } -} messagestate_t; +}; static std::vector messagestates{MAXSPLITSCREENPLAYERS}; diff --git a/src/k_zvote.c b/src/k_zvote.c index cf7757232..017163c05 100644 --- a/src/k_zvote.c +++ b/src/k_zvote.c @@ -900,7 +900,7 @@ static patch_t *g_exclamation = NULL; static patch_t *g_exclamationLoop[ZVOTE_PATCH_EXC_LOOP] = {NULL}; static patch_t *g_zBar[2] = {NULL}; -static patch_t *g_zBarEnds[2][2][2] = {NULL}; +static patch_t *g_zBarEnds[2][2][2] = {{{NULL}}}; void K_UpdateMidVotePatches(void) { diff --git a/src/m_misc.cpp b/src/m_misc.cpp index f4b3005f9..f3340eb58 100644 --- a/src/m_misc.cpp +++ b/src/m_misc.cpp @@ -1052,14 +1052,14 @@ static inline boolean M_PNGLib(void) if (!pnglib) return false; #ifdef HAVE_SDL - aPNG_set_acTL = hwSym("png_set_acTL", pnglib); - aPNG_write_frame_head = hwSym("png_write_frame_head", pnglib); - aPNG_write_frame_tail = hwSym("png_write_frame_tail", pnglib); + aPNG_set_acTL = (P_png_set_acTL) hwSym("png_set_acTL", pnglib); + aPNG_write_frame_head = (P_png_write_frame_head) hwSym("png_write_frame_head", pnglib); + aPNG_write_frame_tail = (P_png_write_frame_tail) hwSym("png_write_frame_tail", pnglib); #endif #ifdef _WIN32 - aPNG_set_acTL = GetProcAddress("png_set_acTL", pnglib); - aPNG_write_frame_head = GetProcAddress("png_write_frame_head", pnglib); - aPNG_write_frame_tail = GetProcAddress("png_write_frame_tail", pnglib); + aPNG_set_acTL = (P_png_set_acTL) GetProcAddress("png_set_acTL", pnglib); + aPNG_write_frame_head = (P_png_write_frame_head) GetProcAddress("png_write_frame_head", pnglib); + aPNG_write_frame_tail = (P_png_write_frame_tail) GetProcAddress("png_write_frame_tail", pnglib); #endif return (aPNG_set_acTL && aPNG_write_frame_head && aPNG_write_frame_tail); #endif @@ -1072,7 +1072,7 @@ static void M_PNGFrame(png_structp png_ptr, png_infop png_info_ptr, png_bytep pn png_uint_32 pitch = png_get_rowbytes(png_ptr, png_info_ptr); PNG_CONST png_uint_32 width = vid.width / downscale; PNG_CONST png_uint_32 height = vid.height / downscale; - png_bytepp row_pointers = png_malloc(png_ptr, height * sizeof (png_bytep)); + png_bytepp row_pointers = (png_bytepp) png_malloc(png_ptr, height * sizeof (png_bytep)); png_uint_32 x, y; png_uint_16 framedelay = (png_uint_16)cv_apng_delay.value; @@ -1080,7 +1080,7 @@ static void M_PNGFrame(png_structp png_ptr, png_infop png_info_ptr, png_bytep pn for (y = 0; y < height; y++) { - row_pointers[y] = malloc(pitch * sizeof(png_byte)); + row_pointers[y] = (png_bytep) malloc(pitch * sizeof(png_byte)); for (x = 0; x < width; x++) row_pointers[y][x] = png_buf[x * downscale]; png_buf += pitch * (downscale * downscale); diff --git a/src/media/options.cpp b/src/media/options.cpp index ae432ddb0..27f2a69c3 100644 --- a/src/media/options.cpp +++ b/src/media/options.cpp @@ -57,7 +57,7 @@ consvar_t Options::values(const char* default_value, const Range range, std:: const std::size_t min_max_size = (range.min || range.max) ? 2 : 0; auto* arr = new CV_PossibleValue_t[list.size() + min_max_size + 1]; - auto cast = [is_float](T n) + auto cast = [](T n) { if constexpr (is_float) { diff --git a/src/media/yuv420p.cpp b/src/media/yuv420p.cpp index 9fc961378..ebb2af400 100644 --- a/src/media/yuv420p.cpp +++ b/src/media/yuv420p.cpp @@ -20,6 +20,18 @@ using namespace srb2::media; +YUV420pFrame::YUV420pFrame(int pts, Buffer y, Buffer u, Buffer v, const BufferRGBA& rgba) + : VideoFrame(pts) + , y_(y) + , u_(u) + , v_(v) + , rgba_(&rgba) +{ + +} + +YUV420pFrame::~YUV420pFrame() = default; + bool YUV420pFrame::BufferRGBA::resize(int width, int height) { if (width == width_ && height == height_) diff --git a/src/media/yuv420p.hpp b/src/media/yuv420p.hpp index f8be45e06..6ea5022bf 100644 --- a/src/media/yuv420p.hpp +++ b/src/media/yuv420p.hpp @@ -41,12 +41,9 @@ public: std::vector vec_; }; - YUV420pFrame(int pts, Buffer y, Buffer u, Buffer v, const BufferRGBA& rgba) : - VideoFrame(pts), y_(y), u_(u), v_(v), rgba_(&rgba) - { - } + YUV420pFrame(int pts, Buffer y, Buffer u, Buffer v, const BufferRGBA& rgba); - ~YUV420pFrame() = default; + virtual ~YUV420pFrame(); // Simply resets PTS and RGBA buffer while keeping YUV // buffers intact. diff --git a/src/p_spec.c b/src/p_spec.c index 55394e72a..c2e9d691e 100644 --- a/src/p_spec.c +++ b/src/p_spec.c @@ -5070,7 +5070,7 @@ sector_t *P_FindPlayerTrigger(player_t *player, line_t *sourceline) return loopsector; } - return false; + return NULL; } boolean P_IsPlayerValid(size_t playernum) diff --git a/src/sdl/i_main.cpp b/src/sdl/i_main.cpp index 5577bf580..a386a1e8c 100644 --- a/src/sdl/i_main.cpp +++ b/src/sdl/i_main.cpp @@ -363,7 +363,7 @@ void* operator new(size_t count) return p; } -void operator delete(void* ptr) +void operator delete(void* ptr) noexcept { TracyFree(ptr); free(ptr); diff --git a/src/sdl/i_system.cpp b/src/sdl/i_system.cpp index 0fba83218..cf3c2f090 100644 --- a/src/sdl/i_system.cpp +++ b/src/sdl/i_system.cpp @@ -1809,7 +1809,7 @@ void I_Error(const char *error, ...) W_Shutdown(); #if defined (PARANOIA) || defined (DEVELOP) - *(INT32 *)0 = 4; //Alam: Debug! + *(volatile INT32 *)0 = 4; //Alam: Debug! #endif exit(-1);