diff --git a/core/clib/inc/strlcpy.h b/core/clib/inc/strlcpy.h
index b206cfb87d8b17a62c822883d08aff87081421e9..3dfdff06ddde42e79dc2a4cf5b8da57d93ef31e5 100644
--- a/core/clib/inc/strlcpy.h
+++ b/core/clib/inc/strlcpy.h
@@ -12,6 +12,7 @@
 #ifndef ROOT_RConfig
 #include "RConfig.h"
 #endif
+#include "Rtypes.h"
 
 #ifndef HAS_STRLCPY
 
diff --git a/core/cont/inc/TBits.h b/core/cont/inc/TBits.h
index 55005550dbed359a5e5127c2e6c0008a01b8b129..ed1e6a82d9a7707d18ac2510227ac5fae4f56831 100644
--- a/core/cont/inc/TBits.h
+++ b/core/cont/inc/TBits.h
@@ -20,6 +20,7 @@
 //                                                                      //
 //////////////////////////////////////////////////////////////////////////
 
+#include "Rtypes.h"
 #ifndef ROOT_TObject
 #include "TObject.h"
 #endif
diff --git a/core/cont/inc/TClonesArray.h b/core/cont/inc/TClonesArray.h
index f775a9eaae35b9f26d8bbe09248c3d5529908fb9..63a1fa4f180ba7981a97d832504d53073f70867f 100644
--- a/core/cont/inc/TClonesArray.h
+++ b/core/cont/inc/TClonesArray.h
@@ -22,6 +22,8 @@
 //                                                                      //
 //////////////////////////////////////////////////////////////////////////
 
+#include "Rtypes.h"
+
 #ifndef ROOT_TObjArray
 #include "TObjArray.h"
 #endif
diff --git a/core/cont/src/TBits.cxx b/core/cont/src/TBits.cxx
index 7542ee3b79febbfad28f27d11e92525118d9e88e..a2cdc26c6f0a63872418e4b4614706be10380a89 100644
--- a/core/cont/src/TBits.cxx
+++ b/core/cont/src/TBits.cxx
@@ -19,8 +19,11 @@ occupied by the upper bits that are 0.
 */
 
 #include "TBits.h"
-#include "string.h"
+
 #include "Riostream.h"
+#include "TObject.h"
+
+#include <string.h>
 
 ClassImp(TBits)
 
diff --git a/core/cont/src/TBtree.cxx b/core/cont/src/TBtree.cxx
index 741fa5493c70fce80368919699ff6e27f8328a2f..7d603679d3c258fbaa96edaea4290a24a6e25a78 100644
--- a/core/cont/src/TBtree.cxx
+++ b/core/cont/src/TBtree.cxx
@@ -167,6 +167,7 @@ item's own key).
 
 #include "TBtree.h"
 #include "TBuffer.h"
+#include "TObject.h"
 
 #include <stdlib.h>
 
diff --git a/core/cont/src/TClassTable.cxx b/core/cont/src/TClassTable.cxx
index 34aaa84f84b04d89df94f7a64da7d7a468254afc..1e973d976ae0314296f07cf1c337601d6f8a0f34 100644
--- a/core/cont/src/TClassTable.cxx
+++ b/core/cont/src/TClassTable.cxx
@@ -17,15 +17,8 @@ ctor of a special init class when a global of this init class is
 initialized when the program starts (see the ClassImp macro).
 */
 
-#include "RConfig.h"
-#include <stdlib.h>
-#include <string>
-#include <map>
-#include <typeinfo>
-#include "Riostream.h"
-#include <memory>
-
 #include "TClassTable.h"
+
 #include "TClass.h"
 #include "TClassEdit.h"
 #include "TProtoClass.h"
@@ -38,6 +31,14 @@ initialized when the program starts (see the ClassImp macro).
 #include "TMap.h"
 
 #include "TInterpreter.h"
+
+#include <map>
+#include <memory>
+#include "Riostream.h"
+#include <typeinfo>
+#include <stdlib.h>
+#include <string>
+
 using namespace ROOT;
 
 TClassTable *gClassTable;
diff --git a/core/cont/src/TClonesArray.cxx b/core/cont/src/TClonesArray.cxx
index 89bde6cc8ce2a827f6e1d3b150ae42e1bdf2ad95..ba1576f0fbcd582250ba46c3e2aac40309c7c2cd 100644
--- a/core/cont/src/TClonesArray.cxx
+++ b/core/cont/src/TClonesArray.cxx
@@ -123,13 +123,15 @@ When investigating misuse of TClonesArray, please make sure of the following:
      run.
 */
 
-#include <stdlib.h>
 #include "TClonesArray.h"
+
 #include "TError.h"
 #include "TROOT.h"
 #include "TClass.h"
+#include "TObject.h"
 #include "TObjectTable.h"
 
+#include <stdlib.h>
 
 ClassImp(TClonesArray)
 
diff --git a/math/mathcore/inc/Math/LCGEngine.h b/math/mathcore/inc/Math/LCGEngine.h
index 29b70dba2d88b21803683431d69d13dbd91a9a39..fa7519d8bd3746c0bce93c543647158aaf9651ad 100644
--- a/math/mathcore/inc/Math/LCGEngine.h
+++ b/math/mathcore/inc/Math/LCGEngine.h
@@ -13,9 +13,10 @@
 #ifndef ROOT_Math_LCGEngine
 #define ROOT_Math_LCGEngine
 
+#include <cassert>
 #include <cstdint>
+#include <string>
 #include <vector>
-#include <cassert>
 
 class TRandomEngine  {
 public:
diff --git a/math/mathcore/inc/TComplex.h b/math/mathcore/inc/TComplex.h
index c968fd14f96ecd6480c13ea8849299870cc13b59..f164ad9a04ae6aa80755db066813409c96f93592 100644
--- a/math/mathcore/inc/TComplex.h
+++ b/math/mathcore/inc/TComplex.h
@@ -22,6 +22,8 @@
 #include "TMath.h"
 #endif
 
+#include "Rtypes.h"
+
 
 class TComplex {