From e52d857ac5b8c5597826c595cefe323048419712 Mon Sep 17 00:00:00 2001
From: Elliu <elliu@hashi.re>
Date: Sat, 2 Sep 2023 13:40:28 +0200
Subject: [PATCH] Fix various Clang warnings

---
 PreCompiledHeaders.cmake                      |  1 +
 src/Lib/Ass/Syl.hh                            |  3 ---
 .../CRTPLuaScriptObject/JobDeclaration.cc     |  4 ++--
 src/PreCompiledHeaders.hh                     |  1 +
 src/UI/DocumentViews/AssLinesView.hh          |  2 +-
 .../AudioVisualizer/TimingAxis.cc             |  2 +-
 .../AudioVisualizer/TimingCursor.hh           |  1 -
 .../AudioVisualizer/TimingLine.cc             |  2 +-
 .../AudioVisualizer/TimingParams.hh           | 20 +++++++++----------
 .../AudioVisualizer/TimingSeparator.hh        |  4 ++--
 src/UI/ScriptDocumentView.hh                  |  2 +-
 11 files changed, 20 insertions(+), 22 deletions(-)

diff --git a/PreCompiledHeaders.cmake b/PreCompiledHeaders.cmake
index 4f45b780..51da6c67 100644
--- a/PreCompiledHeaders.cmake
+++ b/PreCompiledHeaders.cmake
@@ -26,6 +26,7 @@ set(STL_INC
     <iomanip>
     <filesystem>
     <bit>
+    <cfloat>
 )
 
 set(EXT_INC PRIVATE
diff --git a/src/Lib/Ass/Syl.hh b/src/Lib/Ass/Syl.hh
index 91600b12..920dba5e 100644
--- a/src/Lib/Ass/Syl.hh
+++ b/src/Lib/Ass/Syl.hh
@@ -26,9 +26,6 @@ public:
     explicit Syl(Line *const, const QString &,
                  ConstructMode mode = ConstructMode::ReadAssTags) noexcept;
 
-    Syl &operator=(const Syl &) = delete;
-    ~Syl() noexcept             = default;
-
     QString getContent() const noexcept;
     quint64 getDuration() const noexcept;
 
diff --git a/src/Lib/Script/CRTPLuaScriptObject/JobDeclaration.cc b/src/Lib/Script/CRTPLuaScriptObject/JobDeclaration.cc
index 008dfc43..e2337000 100644
--- a/src/Lib/Script/CRTPLuaScriptObject/JobDeclaration.cc
+++ b/src/Lib/Script/CRTPLuaScriptObject/JobDeclaration.cc
@@ -40,8 +40,8 @@ JobDeclaration::setOptions(lua_State *L) noexcept
     IterateOverArray(L, 2, [&context, job, L]() noexcept -> bool {
         OptionDeclaration *opt = OptionDeclaration::CHECK(L, -1);
 
-        for (const auto &[name, value] : opt->options) {
-            err(context) << "\tregister option \"" << name << "\" with type \""
+        for (const auto &[regName, value] : opt->options) {
+            err(context) << "\tregister option \"" << regName << "\" with type \""
                          << value.getSignature() << "\"";
         }
 
diff --git a/src/PreCompiledHeaders.hh b/src/PreCompiledHeaders.hh
index 0335573e..8d19501c 100644
--- a/src/PreCompiledHeaders.hh
+++ b/src/PreCompiledHeaders.hh
@@ -27,6 +27,7 @@
 #include <iomanip>
 #include <filesystem>
 #include <bit>
+#include <cfloat>
 
 /* EXT_INC_PRIVATE */
 #include <mpv/client.h>
diff --git a/src/UI/DocumentViews/AssLinesView.hh b/src/UI/DocumentViews/AssLinesView.hh
index 77cccdb8..38ff2258 100644
--- a/src/UI/DocumentViews/AssLinesView.hh
+++ b/src/UI/DocumentViews/AssLinesView.hh
@@ -44,7 +44,7 @@ private:
     void mouseMoveEvent(QMouseEvent *) noexcept override;
 
 protected slots:
-    virtual void selectionChanged(const QItemSelection &selected, const QItemSelection &deselected);
+    virtual void selectionChanged(const QItemSelection &selected, const QItemSelection &deselected) override;
 
 signals:
     void hoverIndexChanged(QModelIndex);
diff --git a/src/UI/DocumentViews/AudioVisualizer/TimingAxis.cc b/src/UI/DocumentViews/AudioVisualizer/TimingAxis.cc
index 1186dfdd..779d0146 100644
--- a/src/UI/DocumentViews/AudioVisualizer/TimingAxis.cc
+++ b/src/UI/DocumentViews/AudioVisualizer/TimingAxis.cc
@@ -72,7 +72,7 @@ TimingAxis::paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWi
     if (minorTicks > 0) {
         for (int i = 0; i < audioLength; i += minorTicks) {
             int pos = getTimingParam()->posFromMs(i);
-            if (Q_LIKELY(fmod(i, majorTicks) != 0))
+            if (Q_LIKELY(fmod(i, majorTicks) < DBL_EPSILON))
                 painter->drawLine(pos, 0, pos, -minorTicksHeight);
         }
     }
diff --git a/src/UI/DocumentViews/AudioVisualizer/TimingCursor.hh b/src/UI/DocumentViews/AudioVisualizer/TimingCursor.hh
index 130f2b99..a9e2c7ca 100644
--- a/src/UI/DocumentViews/AudioVisualizer/TimingCursor.hh
+++ b/src/UI/DocumentViews/AudioVisualizer/TimingCursor.hh
@@ -12,7 +12,6 @@ public:
     void paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget) override;
 
 private:
-    int height;
     QString cursorTime;
     // FIXME
     // Forced to define a "max-width" for the text,
diff --git a/src/UI/DocumentViews/AudioVisualizer/TimingLine.cc b/src/UI/DocumentViews/AudioVisualizer/TimingLine.cc
index 10df7f48..4cee9bed 100644
--- a/src/UI/DocumentViews/AudioVisualizer/TimingLine.cc
+++ b/src/UI/DocumentViews/AudioVisualizer/TimingLine.cc
@@ -41,7 +41,7 @@ TimingLine::sepEnterPress(int sepIndex)
 void
 TimingLine::sepExitPress(int sepIndex)
 {
-    if (tempOffset) {
+    if (qAbs(tempOffset) <= DBL_EPSILON) {
         prepareGeometryChange();
         if (sepIndex == 0) {
             moveBy(tempOffset, 0);
diff --git a/src/UI/DocumentViews/AudioVisualizer/TimingParams.hh b/src/UI/DocumentViews/AudioVisualizer/TimingParams.hh
index b2103f30..332d5b92 100644
--- a/src/UI/DocumentViews/AudioVisualizer/TimingParams.hh
+++ b/src/UI/DocumentViews/AudioVisualizer/TimingParams.hh
@@ -58,31 +58,31 @@ public:
     {
         m_minorTicks = t;
         m_majorTicks = T;
-    };
-    inline void setAxisHeight(int x) { m_axisHeight = x; };
-    inline void setAudioHeight(int x) { m_audioHeight = x; };
+    }
+    inline void setAxisHeight(int x) { m_axisHeight = x; }
+    inline void setAudioHeight(int x) { m_audioHeight = x; }
     inline void setAudioWidth(int x)
     {
         m_audioWidth = int(x * m_audioWidthScale);
         updateRatios();
-    };
+    }
     inline void setAudioLength(int x)
     {
         m_audioLength = x;
         updateRatios();
-    };
+    }
 
-    inline int axisHeight() { return m_axisHeight; };
-    inline int audioHeight() { return m_audioHeight; };
-    inline int audioWidth() { return m_audioWidth; };
-    inline int audioLength() { return m_audioLength; };
+    inline int axisHeight() { return m_axisHeight; }
+    inline int audioHeight() { return m_audioHeight; }
+    inline int audioWidth() { return m_audioWidth; }
+    inline int audioLength() { return m_audioLength; }
 
     inline void setAudioWidthScale(int s)
     {
         m_audioWidthScale = 1 + 0.01 * s;
         setAudioWidth(m_audioWidth);
         updateRatios();
-    };
+    }
 
     template <typename T> T posFromMs(T t) noexcept {
         return T(t * m_wl);
diff --git a/src/UI/DocumentViews/AudioVisualizer/TimingSeparator.hh b/src/UI/DocumentViews/AudioVisualizer/TimingSeparator.hh
index 498cafd8..ca3fa955 100644
--- a/src/UI/DocumentViews/AudioVisualizer/TimingSeparator.hh
+++ b/src/UI/DocumentViews/AudioVisualizer/TimingSeparator.hh
@@ -33,8 +33,8 @@ signals:
 
 protected:
     QVariant itemChange(GraphicsItemChange change, const QVariant &value) noexcept override;
-    void mousePressEvent(QGraphicsSceneMouseEvent *event);
-    void mouseReleaseEvent(QGraphicsSceneMouseEvent *event);
+    void mousePressEvent(QGraphicsSceneMouseEvent *event) override;
+    void mouseReleaseEvent(QGraphicsSceneMouseEvent *event) override;
 
 public:
     void silentlySetPos(qreal, qreal);
diff --git a/src/UI/ScriptDocumentView.hh b/src/UI/ScriptDocumentView.hh
index 0971fc19..d4b0de0f 100644
--- a/src/UI/ScriptDocumentView.hh
+++ b/src/UI/ScriptDocumentView.hh
@@ -35,7 +35,7 @@ public:
     QIcon getDocumentTabIcon() const noexcept override;
     AbstractDocument *getDocument() const noexcept override;
 
-    void loadViews() noexcept override{};
+    void loadViews() noexcept override {}
 
     void setUseFakeVimEditor(bool yes) noexcept;
 
-- 
GitLab