// suppress specific rule in specific files // NOTE this needs the full path to the file, so would need this file to be generated by cmake // as different build servers have different starts to the file path // -------- Project Wide ------------------ // Hide warnings about using explicit keyword constructors as we have "too many" // and automated clang-tidy breaks a couple of implicit conversions we use widely noExplicitConstructor // Hide warnings about shadowed members for inheritance. Typically "m_log" with Algorithm duplInheritedMember // We have some potentially uninitialized member vars but too many to fix at the moment uninitMemberVar // Around 100 of these exist where noConstructor is present noConstructor // Pre-processor Directives, such as #error, which are upstream anyway preprocessorErrorDirective // ---------- cppcheck 1.90 Transition ------- unmatchedSuppression // If-init not supported syntaxError:${CMAKE_SOURCE_DIR}/Framework/API/src/MatrixWorkspace.cpp // --- To be added back ------ //cstyleCase:*${CMAKE_SOURCE_DIR}/MantidPlot // A large number of copying instead of pass by ref were picked up by clang-tidy, but around 200 remain //passedByValue // Cppcheck struggles with some inheritance chains, some of these might be true though //unusedPrivateFunction // Nice to have, not need to have at the moment //useInitializationList // Libs we have in-source // *:${CMAKE_SOURCE_DIR}/Framework/DataObjects/inc/MantidDataObjects/MortonIndex/* // ---------- Individual suppressions ----------------- pureVirtualCall:${CMAKE_SOURCE_DIR}/qt/scientific_interfaces/Indirect/IndirectBayesTab.cpp pureVirtualCall:${CMAKE_SOURCE_DIR}/qt/scientific_interfaces/Indirect/IndirectBayesTab.h // Macro expansion means this is incorrectly flagged on Unix redundantAssignment:${CMAKE_SOURCE_DIR}/Framework/DataHandling/src/LoadRaw/isisraw.cpp // Ref binding means Cppcheck can't see these are used unreadVariable:${CMAKE_SOURCE_DIR}/Framework/Algorithms/src/MaskBinsIf.cpp // the mru-list is intentionally not altered operatorEqVarError:${CMAKE_SOURCE_DIR}/Framework/DataObjects/src/EventList.cpp:309 // false positives from checking a second time using a mutex for multi-threading identicalConditionAfterEarlyExit:${CMAKE_SOURCE_DIR}/Framework/DataObjects/src/EventList.cpp:950 identicalConditionAfterEarlyExit:${CMAKE_SOURCE_DIR}/Framework/DataObjects/src/EventList.cpp:1016 identicalConditionAfterEarlyExit:${CMAKE_SOURCE_DIR}/Framework/DataObjects/src/EventList.cpp:1046 // --------- Missing copy assignment / constructors ------------------- // We don't want more creeping in so just mark these one by one copyCtorAndEqOperator:${CMAKE_SOURCE_DIR}/Framework/API/inc/MantidAPI/BoxController.h copyCtorAndEqOperator:${CMAKE_SOURCE_DIR}/Framework/API/inc/MantidAPI/ExperimentInfo.h copyCtorAndEqOperator:${CMAKE_SOURCE_DIR}/Framework/API/inc/MantidAPI/IFunction.h copyCtorAndEqOperator:${CMAKE_SOURCE_DIR}/Framework/API/inc/MantidAPI/MDGeometry.h copyCtorAndEqOperator:${CMAKE_SOURCE_DIR}/Framework/API/inc/MantidAPI/MultipleExperimentInfos.h copyCtorAndEqOperator:${CMAKE_SOURCE_DIR}/Framework/API/inc/MantidAPI/SingleValueParameter.h copyCtorAndEqOperator:${CMAKE_SOURCE_DIR}/Framework/API/inc/MantidAPI/VectorParameter.h copyCtorAndEqOperator:${CMAKE_SOURCE_DIR}/Framework/Catalog/inc/MantidCatalog/ONCat.h copyCtorAndEqOperator:${CMAKE_SOURCE_DIR}/Framework/Catalog/inc/MantidCatalog/ONCatEntity.h copyCtorAndEqOperator:${CMAKE_SOURCE_DIR}/Framework/Crystal/inc/MantidCrystal/IndexSXPeaks.h copyCtorAndEqOperator:${CMAKE_SOURCE_DIR}/Framework/Crystal/inc/MantidCrystal/IntegratePeakTimeSlices.h copyCtorAndEqOperator:${CMAKE_SOURCE_DIR}/Framework/Geometry/inc/MantidGeometry/Instrument/CompAssembly.h copyCtorAndEqOperator:${CMAKE_SOURCE_DIR}/Framework/Geometry/inc/MantidGeometry/Instrument/Container.h copyCtorAndEqOperator:${CMAKE_SOURCE_DIR}/Framework/Geometry/inc/MantidGeometry/Instrument/ObjCompAssembly.h copyCtorAndEqOperator:${CMAKE_SOURCE_DIR}/Framework/Geometry/inc/MantidGeometry/Rendering/GeometryHandler.h copyCtorAndEqOperator:${CMAKE_SOURCE_DIR}/qt/widgets/plotting/inc/MantidQtWidgets/Plotting/Qwt/QwtWorkspaceBinData.h copyCtorAndEqOperator:${CMAKE_SOURCE_DIR}/qt/widgets/plotting/inc/MantidQtWidgets/Plotting/Qwt/QwtWorkspaceSpectrumData.h noCopyConstructor:${CMAKE_SOURCE_DIR}/Framework/DataHandling/inc/MantidDataHandling/BankPulseTimes.h noCopyConstructor:${CMAKE_SOURCE_DIR}/Framework/DataHandling/src/LoadRaw/isisraw.h noCopyConstructor:${CMAKE_SOURCE_DIR}/Framework/Geometry/inc/MantidGeometry/Rendering/vtkGeometryCacheWriter.h // ----------------- Upstream libs --------------- // All ANN files as they are upstream anyway *:*${CMAKE_SOURCE_DIR}/Framework/Kernel/src/ANN/* // Libs we have in-source *:${CMAKE_SOURCE_DIR}/Framework/ICat/src/GSoap/* *:${CMAKE_SOURCE_DIR}/Framework/ICat/src/ICat3/GSoapGenerated/* *:${CMAKE_SOURCE_DIR}/Framework/ICat/src/ICat4/GSoapGenerated/*