diff --git a/.travis.yml b/.travis.yml index 6d8970b67..b4301680f 100644 --- a/.travis.yml +++ b/.travis.yml @@ -53,7 +53,7 @@ matrix: sudo: required env: - MATRIX_EVAL="CC=clang-7 && CXX=clang++-7" - - ANALYZE="scan-build-7 --use-cc clang-7 --use-c++ clang++-7" + - ANALYZE="scan-build-7 --force-analyze-debug-code --use-cc clang-7 --use-c++ clang++-7" - BUILD_OPENMW_CS="OFF" compiler: clang - name: OpenMW (openmw-cs) on Ubuntu Trusty Clang-7 with Static Analysis @@ -62,7 +62,7 @@ matrix: sudo: required env: - MATRIX_EVAL="CC=clang-7 && CXX=clang++-7" - - ANALYZE="scan-build-7 --use-cc clang-7 --use-c++ clang++-7" + - ANALYZE="scan-build-7 --force-analyze-debug-code --use-cc clang-7 --use-c++ clang++-7" - BUILD_OPENMW="OFF" compiler: clang # allow_failures: diff --git a/apps/openmw/mwgui/bookpage.cpp b/apps/openmw/mwgui/bookpage.cpp index 80e92f15a..64eecdb79 100644 --- a/apps/openmw/mwgui/bookpage.cpp +++ b/apps/openmw/mwgui/bookpage.cpp @@ -743,6 +743,7 @@ namespace mVertices (vertices), mRenderXform (renderXform) { + assert(font != nullptr); mVertexColourType = MyGUI::RenderManager::getInstance().getVertexFormat(); } diff --git a/apps/openmw/mwgui/keyboardnavigation.cpp b/apps/openmw/mwgui/keyboardnavigation.cpp index 52ff0b2d9..7355dc1f4 100644 --- a/apps/openmw/mwgui/keyboardnavigation.cpp +++ b/apps/openmw/mwgui/keyboardnavigation.cpp @@ -25,6 +25,8 @@ bool shouldAcceptKeyFocus(MyGUI::Widget* w) /// Recursively get all child widgets that accept keyboard input void getKeyFocusWidgets(MyGUI::Widget* parent, std::vector& results) { + assert(parent != nullptr); + if (!parent->getVisible() || !parent->getEnabled()) return; diff --git a/apps/openmw/mwsound/ffmpeg_decoder.cpp b/apps/openmw/mwsound/ffmpeg_decoder.cpp index 447c386c9..f7ccebc96 100644 --- a/apps/openmw/mwsound/ffmpeg_decoder.cpp +++ b/apps/openmw/mwsound/ffmpeg_decoder.cpp @@ -90,7 +90,7 @@ bool FFmpeg_Decoder::getNextPacket() bool FFmpeg_Decoder::getAVAudioData() { - bool got_frame; + bool got_frame = false; if(mCodecCtx->codec_type != AVMEDIA_TYPE_AUDIO) return false; diff --git a/apps/openmw_test_suite/nifloader/testbulletnifloader.cpp b/apps/openmw_test_suite/nifloader/testbulletnifloader.cpp index 29f60b1f5..c94907e68 100644 --- a/apps/openmw_test_suite/nifloader/testbulletnifloader.cpp +++ b/apps/openmw_test_suite/nifloader/testbulletnifloader.cpp @@ -267,8 +267,6 @@ namespace struct NifFileMock : Nif::File { - MOCK_CONST_METHOD1(fail, void (const std::string&)); - MOCK_CONST_METHOD1(warn, void (const std::string&)); MOCK_CONST_METHOD1(getRecord, Nif::Record* (std::size_t)); MOCK_CONST_METHOD0(numRecords, std::size_t ()); MOCK_CONST_METHOD1(getRoot, Nif::Record* (std::size_t)); diff --git a/components/myguiplatform/myguirendermanager.cpp b/components/myguiplatform/myguirendermanager.cpp index 4781ef3fc..a3f7f76a2 100644 --- a/components/myguiplatform/myguirendermanager.cpp +++ b/components/myguiplatform/myguirendermanager.cpp @@ -134,9 +134,9 @@ public: { state->bindVertexBufferObject(bufferobject); - glVertexPointer(3, GL_FLOAT, sizeof(MyGUI::Vertex), static_cast(0)); - glColorPointer(4, GL_UNSIGNED_BYTE, sizeof(MyGUI::Vertex), static_cast(0) + 12); - glTexCoordPointer(2, GL_FLOAT, sizeof(MyGUI::Vertex), static_cast(0) + 16); + glVertexPointer(3, GL_FLOAT, sizeof(MyGUI::Vertex), reinterpret_cast(0)); + glColorPointer(4, GL_UNSIGNED_BYTE, sizeof(MyGUI::Vertex), reinterpret_cast(12)); + glTexCoordPointer(2, GL_FLOAT, sizeof(MyGUI::Vertex), reinterpret_cast(16)); } else { diff --git a/components/nif/niffile.hpp b/components/nif/niffile.hpp index 0893db72f..15001f511 100644 --- a/components/nif/niffile.hpp +++ b/components/nif/niffile.hpp @@ -18,10 +18,6 @@ struct File { virtual ~File() = default; - virtual void fail(const std::string &msg) const = 0; - - virtual void warn(const std::string &msg) const = 0; - virtual Record *getRecord(size_t index) const = 0; virtual size_t numRecords() const = 0; @@ -71,14 +67,14 @@ class NIFFile final : public File public: /// Used if file parsing fails - void fail(const std::string &msg) const override + void fail(const std::string &msg) const { std::string err = " NIFFile Error: " + msg; err += "\nFile: " + filename; throw std::runtime_error(err); } /// Used when something goes wrong, but not catastrophically so - void warn(const std::string &msg) const override + void warn(const std::string &msg) const { Log(Debug::Warning) << " NIFFile Warning: " << msg << "\nFile: " << filename; }