diff --git a/InnerDetector/InDetDigitization/FastTRT_Digitization/src/TRTFastDigitizationTool.cxx b/InnerDetector/InDetDigitization/FastTRT_Digitization/src/TRTFastDigitizationTool.cxx
index 068a553a604ce660900a4b77e80dc3a9dfe77f8d..cc82b965704207d565217482b75efee6db59100b 100644
--- a/InnerDetector/InDetDigitization/FastTRT_Digitization/src/TRTFastDigitizationTool.cxx
+++ b/InnerDetector/InDetDigitization/FastTRT_Digitization/src/TRTFastDigitizationTool.cxx
@@ -182,7 +182,7 @@ StatusCode TRTFastDigitizationTool::processBunchXing( int bunchXing,
   TimedHitCollList::iterator iColl(hitCollList.begin());
   TimedHitCollList::iterator endColl(hitCollList.end());
 
-  for( ; iColl != endColl; iColl++) {
+  for( ; iColl != endColl; ++iColl) {
     TRTUncompressedHitCollection *hitCollPtr = new TRTUncompressedHitCollection(*iColl->second);
     PileUpTimeEventIndex timeIndex(iColl->first);
     ATH_MSG_DEBUG("TRTUncompressedHitCollection found with " << hitCollPtr->size() <<
diff --git a/InnerDetector/InDetDigitization/StripDigitization/src/StripDigitizationTool.cxx b/InnerDetector/InDetDigitization/StripDigitization/src/StripDigitizationTool.cxx
index 4824405f0ec38dda7c7274ebd204f22f0babb7aa..79dc757148c3cd14eeb5ec588b92bbcc09925e7e 100644
--- a/InnerDetector/InDetDigitization/StripDigitization/src/StripDigitizationTool.cxx
+++ b/InnerDetector/InDetDigitization/StripDigitization/src/StripDigitizationTool.cxx
@@ -601,7 +601,7 @@ StatusCode StripDigitizationTool::processBunchXing(int bunchXing,
     }
 
     TimedHitCollList::iterator endColl{hitCollList.end()};
-    for (TimedHitCollList::iterator iColl{hitCollList.begin()}; iColl != endColl; iColl++) {
+    for (TimedHitCollList::iterator iColl{hitCollList.begin()}; iColl != endColl; ++iColl) {
       std::unique_ptr<SiHitCollection> hitCollPtr{std::make_unique<SiHitCollection>(*iColl->second)};
       PileUpTimeEventIndex timeIndex{iColl->first};
       ATH_MSG_DEBUG("SiHitCollection found with " << hitCollPtr->size() <<
diff --git a/InnerDetector/InDetDigitization/TRT_Digitization/src/TRTDigCondBase.cxx b/InnerDetector/InDetDigitization/TRT_Digitization/src/TRTDigCondBase.cxx
index cea5fd2dc4037152d0f901751274edeefa027bf4..2333490adbf580ee85bd6aab2c8518dd1ebe1641 100644
--- a/InnerDetector/InDetDigitization/TRT_Digitization/src/TRTDigCondBase.cxx
+++ b/InnerDetector/InDetDigitization/TRT_Digitization/src/TRTDigCondBase.cxx
@@ -188,7 +188,7 @@ bool TRTDigCondBase::getNextNoisyStraw( CLHEP::HepRandomEngine* randengine, int&
   for (;m_it_hitid_to_StrawState!=m_it_hitid_to_StrawState_End;++m_it_hitid_to_StrawState) {
     noiselvl = m_it_hitid_to_StrawState->second.noiselevel;
     if ( CLHEP::RandFlat::shoot(randengine, 0.0, 1.0) < noiselvl ) {
-      m_it_hitid_to_StrawState++; //Important! if removed, iterator is not incremented in case rand<noiselevel!!!
+      ++m_it_hitid_to_StrawState; //Important! if removed, iterator is not incremented in case rand<noiselevel!!!
       hitID = m_it_hitid_to_StrawState->first;
       return true;
     };
diff --git a/InnerDetector/InDetDigitization/TRT_Digitization/src/TRTDigSettings.cxx b/InnerDetector/InDetDigitization/TRT_Digitization/src/TRTDigSettings.cxx
index d87795874cf05536fef5258d57338fd5e35ec529..b7209cbf9dad5685cc1914eaef836007ef747ba7 100644
--- a/InnerDetector/InDetDigitization/TRT_Digitization/src/TRTDigSettings.cxx
+++ b/InnerDetector/InDetDigitization/TRT_Digitization/src/TRTDigSettings.cxx
@@ -317,8 +317,8 @@ void TRTDigSettings::printFlagsForOverrideableParameters(const std::string& fron
 }
 
 //_________________________________________________________________________________________________________
-void TRTDigSettings::defineNewVariable(std::string name, double * datamember,std::string description,
-                                       std::string unitname,double unitval,double lowrange,double highrange) {
+void TRTDigSettings::defineNewVariable(const std::string & name, double * datamember,const std::string &description,
+                                       const std::string & unitname,double unitval,double lowrange,double highrange) {
 
   //sanity checks:
   if (m_intboolparMap.find(name)!=m_intboolparMap.end() || m_doubleparMap.find(name)!=m_doubleparMap.end()) {
@@ -342,7 +342,7 @@ void TRTDigSettings::defineNewVariable(std::string name, double * datamember,std
 }
 
 //_________________________________________________________________________________________________________
-void TRTDigSettings::defineNewUIntVariable(std::string name,unsigned int * datamember,std::string description,
+void TRTDigSettings::defineNewUIntVariable(const std::string &name,unsigned int * datamember, const std::string &description,
                                            unsigned int lowrange, unsigned int highrange) {
   //sanity checks:
   if (m_intboolparMap.find(name)!=m_intboolparMap.end() || m_doubleparMap.find(name)!=m_doubleparMap.end()) {
@@ -367,7 +367,7 @@ void TRTDigSettings::defineNewUIntVariable(std::string name,unsigned int * datam
 }
 
 //_________________________________________________________________________________________________________
-void TRTDigSettings::defineNewIntVariable(std::string name,int * datamember,std::string description,
+void TRTDigSettings::defineNewIntVariable(const std::string & name,int * datamember,const std::string & description,
                                           int lowrange, int highrange) {
   //sanity checks:
   if (m_intboolparMap.find(name)!=m_intboolparMap.end() || m_doubleparMap.find(name)!=m_doubleparMap.end()) {
@@ -392,7 +392,7 @@ void TRTDigSettings::defineNewIntVariable(std::string name,int * datamember,std:
 }
 
 //_________________________________________________________________________________________________________
-void TRTDigSettings::defineNewBoolVariable(std::string name,bool * datamember,std::string description) {
+void TRTDigSettings::defineNewBoolVariable(const std::string & name,bool * datamember,const std::string & description) {
   //sanity checks:
   if (m_intboolparMap.find(name)!=m_intboolparMap.end() || m_doubleparMap.find(name)!=m_doubleparMap.end()) {
     msg(MSG::FATAL) << "TRTDigSettings: Multiple definitions of "<<name<<endmsg; return;
@@ -432,7 +432,7 @@ void TRTDigSettings::fillDefaults(const InDetDD::TRT_DetectorManager* detmgr) {
   // After TRT_Digitization-00-10-74 (end of Run1) we will no longer support m_digversion<11
   if (m_digversion<11) {
     if (msgLevel(MSG::FATAL)) msg(MSG::FATAL) << "digversion < 11 (" << m_digversion << ") is no longer supported. The job will die now :(" <<endmsg;
-    throw;
+    throw std::runtime_error("fillDefaults: digversion is not supported");
   }
 
   bool gasok = false;
diff --git a/InnerDetector/InDetDigitization/TRT_Digitization/src/TRTDigSettings.h b/InnerDetector/InDetDigitization/TRT_Digitization/src/TRTDigSettings.h
index 31495bf0c14d2066255ed9d6d70e53b324c17cc9..5d4a31ae2b32669cd36c1f84333ec930d2984039 100644
--- a/InnerDetector/InDetDigitization/TRT_Digitization/src/TRTDigSettings.h
+++ b/InnerDetector/InDetDigitization/TRT_Digitization/src/TRTDigSettings.h
@@ -373,51 +373,53 @@ private:
   //Now follows infrastructure for handling all the parameters in a robust way:
 
   /** Define new double variable */
-  void defineNewVariable(std::string name,
+  void defineNewVariable(const std::string & name,
                          double * datamember,
-                         std::string description,
-                         std::string unitname,
+                         const std::string & description,
+                         const std::string & unitname,
                          double unitval,
                          double lowrange,
                          double highrange);
 
   /** Define new unsigned int variable */
-  void defineNewUIntVariable(std::string name,
+  void defineNewUIntVariable(const std::string & name,
                              unsigned int * datamember,
-                             std::string description,
+                             const std::string & description,
                              unsigned int lowrange,
                              unsigned int highrange);
 
   /** Define new int variable */
-  void defineNewIntVariable(std::string name,
+  void defineNewIntVariable(const std::string & name,
                             int * datamember,
-                            std::string description,
+                            const std::string & description,
                             int lowrange,
                             int highrange);
 
   /** Define new bool variable */
-  void defineNewBoolVariable(std::string name,
+  void defineNewBoolVariable(const std::string & name,
                              bool * datamember,
-                             std::string description);
+                             const std::string & description);
 
   /** Settable parameter, double */
   struct doubleparameter {
     std::string description;
-    double * directvaraddress;
-    std::string unitname;  double unit;
-    double okrange_low; double okrange_high;
-    double valueSetByUser;
+    double * directvaraddress{};
+    std::string unitname;  
+    double unit{};
+    double okrange_low{}; 
+    double okrange_high{};
+    double valueSetByUser{};
   };
 
   /** Settable parameter, int and bool */
   struct intboolparameter {
     std::string description;
     //Two of these are put to null to indicate type:
-    int * directvaraddress_int;
-    unsigned int * directvaraddress_uint;
-    bool * directvaraddress_bool;
-    int okrange_low; int okrange_high;
-    int valueSetByUser;
+    int * directvaraddress_int{};
+    unsigned int * directvaraddress_uint{};
+    bool * directvaraddress_bool{};
+    int okrange_low{}; int okrange_high{};
+    int valueSetByUser{};
   };
 
   /** Map of settable parameters (double) */
@@ -425,8 +427,8 @@ private:
   /** Map of settable parameters (int & bool) */
   std::map <std::string,intboolparameter> m_intboolparMap;
 
-  double m_propertyNotSetMagicNumber;
-  int m_propertyNotSetMagicNumber_int;
+  double m_propertyNotSetMagicNumber{};
+  int m_propertyNotSetMagicNumber_int{};
 
   mutable Athena::MsgStreamMember m_msg ATLAS_THREAD_SAFE;
 
diff --git a/InnerDetector/InDetDigitization/TRT_Digitization/src/TRTDigitizationTool.cxx b/InnerDetector/InDetDigitization/TRT_Digitization/src/TRTDigitizationTool.cxx
index a109370422b1e3b9323965b65d81421ac989d13b..6e46740c828f4c81c3539a9d76dedb88a7e93427 100644
--- a/InnerDetector/InDetDigitization/TRT_Digitization/src/TRTDigitizationTool.cxx
+++ b/InnerDetector/InDetDigitization/TRT_Digitization/src/TRTDigitizationTool.cxx
@@ -227,7 +227,7 @@ StatusCode TRTDigitizationTool::processBunchXing(int bunchXing,
   TimedHitCollList::iterator iColl(hitCollList.begin());
   TimedHitCollList::iterator endColl(hitCollList.end());
 
-  for( ; iColl != endColl; iColl++){
+  for( ; iColl != endColl; ++iColl){
     TRTUncompressedHitCollection  *hitCollPtr = new TRTUncompressedHitCollection(*iColl->second);
     PileUpTimeEventIndex timeIndex(iColl->first);
     ATH_MSG_DEBUG("TRTUncompressedHitCollection found with " << hitCollPtr->size() <<
diff --git a/InnerDetector/InDetDigitization/TRT_Digitization/src/TRTElectronicsProcessing.cxx b/InnerDetector/InDetDigitization/TRT_Digitization/src/TRTElectronicsProcessing.cxx
index fbd390224adff80c177710f51febd91557f8e11a..afaf0619de8ba1ac3a74302a9cd94ba29710c6fb 100644
--- a/InnerDetector/InDetDigitization/TRT_Digitization/src/TRTElectronicsProcessing.cxx
+++ b/InnerDetector/InDetDigitization/TRT_Digitization/src/TRTElectronicsProcessing.cxx
@@ -304,7 +304,7 @@ void TRTElectronicsProcessing::ProcessDeposits( const std::vector<TRTElectronics
 
   // Only attempt this if the digit is non-zero
   if ( m_settings->isOverlay() && digit ) { //doing overlay
-    digit += (1<<31);//flag digit a "MC" one
+    digit += (1u<<31);//flag digit a "MC" one
     if (m_first){
       m_first=false;
       msg(MSG::DEBUG) << "ACH666: Flagging digits as MC (for overlay)" << endmsg;
diff --git a/InnerDetector/InDetDigitization/TRT_Digitization/src/TRTNoise.h b/InnerDetector/InDetDigitization/TRT_Digitization/src/TRTNoise.h
index a96dd173c5675ef92e34941095b6c3c028ff92fe..fd4152cbcf3ae4f2cba11fe7483797061085d709 100644
--- a/InnerDetector/InDetDigitization/TRT_Digitization/src/TRTNoise.h
+++ b/InnerDetector/InDetDigitization/TRT_Digitization/src/TRTNoise.h
@@ -86,13 +86,13 @@ public:
 
 private:
 
-  const TRTDigSettings* m_settings;
-  const InDetDD::TRT_DetectorManager* m_detmgr;
+  const TRTDigSettings* m_settings{};
+  const InDetDD::TRT_DetectorManager* m_detmgr{};
 
-  TRTDigCondBase * m_pDigConditions;
-  TRTElectronicsProcessing * m_pElectronicsProcessing;
-  TRTElectronicsNoise * m_pElectronicsNoise;
-  CLHEP::HepRandomEngine* m_noise_randengine;
+  TRTDigCondBase * m_pDigConditions{};
+  TRTElectronicsProcessing * m_pElectronicsProcessing{};
+  TRTElectronicsNoise * m_pElectronicsNoise{};
+  CLHEP::HepRandomEngine* m_noise_randengine{};
 
   //---  Initialization:
 
@@ -211,7 +211,7 @@ private:
 
   Identifier getStrawIdentifier (int hitID);
 
-  int m_UseGasMix;
+  int m_UseGasMix{};
   ToolHandle<ITRT_StrawStatusSummaryTool> m_sumTool; // need for Argon
 
 };
diff --git a/InnerDetector/InDetDigitization/TRT_Digitization/src/TRTProcessingOfStraw.cxx b/InnerDetector/InDetDigitization/TRT_Digitization/src/TRTProcessingOfStraw.cxx
index 818c0fad2f6b07e03c00e37fed8a935c335f8970..f1edfc8446c2ac0fe0296f2fbed912b2a463efcf 100644
--- a/InnerDetector/InDetDigitization/TRT_Digitization/src/TRTProcessingOfStraw.cxx
+++ b/InnerDetector/InDetDigitization/TRT_Digitization/src/TRTProcessingOfStraw.cxx
@@ -304,7 +304,7 @@ void TRTProcessingOfStraw::ProcessStraw ( MagField::AtlasFieldCache& fieldCache,
   Amg::Vector3D TRThitGlobalPos(0.0,0.0,0.0);
 
   //Now we loop over all the simhits
-  for (hitCollConstIter hit_iter= i;  hit_iter != e; hit_iter++)
+  for (hitCollConstIter hit_iter= i;  hit_iter != e; ++hit_iter)
     {
       //Get the hit:
       const TimedHitPtr<TRTUncompressedHit> *theHit = &(*hit_iter);
diff --git a/InnerDetector/InDetDigitization/TRT_Digitization/src/TRT_BarrelDriftTimeData.cxx b/InnerDetector/InDetDigitization/TRT_Digitization/src/TRT_BarrelDriftTimeData.cxx
index eea271f5d34395f6eb846a3ed943df63d5357cf9..a2c214d07da599b81fab0c728b8602484d4e35e6 100644
--- a/InnerDetector/InDetDigitization/TRT_Digitization/src/TRT_BarrelDriftTimeData.cxx
+++ b/InnerDetector/InDetDigitization/TRT_Digitization/src/TRT_BarrelDriftTimeData.cxx
@@ -16,6 +16,7 @@
 #include "CLHEP/Units/SystemOfUnits.h"
 #include <iostream>
 #include <cassert>
+#include <stdexcept>
 
 //______________________________________________________________________________
 TRT_BarrelDriftTimeData::TRT_BarrelDriftTimeData(unsigned int digversion, int strawGasType) {
@@ -36,7 +37,7 @@ TRT_BarrelDriftTimeData::TRT_BarrelDriftTimeData(unsigned int digversion, int st
   if (digversion<11) {
     std::cout << "FATAL TRT_BarrelDriftTimeData::TRT_BarrelDriftTimeData digversion < 11 ("
               << digversion << ") is no longer supported. The job will die now :(" << std::endl;
-    throw;
+    throw std::runtime_error("TRT_BarrelDriftTimeData: unsupported digversion");
   }
 
   if (m_strawGas==0) {
@@ -328,7 +329,7 @@ TRT_BarrelDriftTimeData::TRT_BarrelDriftTimeData(unsigned int digversion, int st
   } else {
     std::cout << "FATAL TRT_BarrelDriftTimeData::TRT_BarrelDriftTimeData strawGas ("
               << m_strawGas << ") must be 0(Xe), 1(Kr) or 2(Ar). The job will die now :(" << std::endl;
-    throw;
+     throw std::runtime_error("TRT_BarrelDriftTimeData: unsupported gas type");
   }
 
   assert(m_tabdists_nofield.size()==m_tabdrifttime_nofield.size());
diff --git a/InnerDetector/InDetDigitization/TRT_Digitization/src/TRT_SimDriftTimeTool.cxx b/InnerDetector/InDetDigitization/TRT_Digitization/src/TRT_SimDriftTimeTool.cxx
index f97372a3a6568c821c4c437f2d60e39c8c98cd96..2be2a6b434013e90deae3dc76e4e41ac32107dae 100644
--- a/InnerDetector/InDetDigitization/TRT_Digitization/src/TRT_SimDriftTimeTool.cxx
+++ b/InnerDetector/InDetDigitization/TRT_Digitization/src/TRT_SimDriftTimeTool.cxx
@@ -19,6 +19,7 @@
 #include "CLHEP/Units/SystemOfUnits.h"
 #include "GaudiKernel/ServiceHandle.h"
 #include "TRT_ReadoutGeometry/TRT_DetectorManager.h"
+#include <stdexcept>
 
 TRT_SimDriftTimeTool::TRT_SimDriftTimeTool( const std::string& type,
                                             const std::string& name,
@@ -135,7 +136,7 @@ double TRT_SimDriftTimeTool::getAverageDriftTime( const double& dist,
     {
       ATH_MSG_FATAL("getAverageDriftTime: Somehow distIndex (" << distIndex << " ) is out of bounds ("
                     << m_nTabulatedDistances << "). The job will die now.");
-      throw;
+      throw std::runtime_error("getAverageDriftTime distIndex out of bounds");
     }
 
   const double C(m_table_of_dist2meanDT_at_noField[strawGasType][distIndex]);