diff --git a/Modules/Core/Common/include/otbLogger.h b/Modules/Core/Common/include/otbLogger.h
index 32b34b06353366f4c974e701f3fb449ee9bccb90..047c225f76f77e9abddc5c6b04d7326f4494c36f 100644
--- a/Modules/Core/Common/include/otbLogger.h
+++ b/Modules/Core/Common/include/otbLogger.h
@@ -42,15 +42,15 @@ public:
   typedef itk::SmartPointer< Self >       Pointer;
   typedef itk::SmartPointer< const Self > ConstPointer;
 
-  itkTypeMacro(Logger, Object);
+  itkTypeMacro(Logger, itk::Logger);
   itkNewMacro(Self);
 
   // Overwrite this to provide custom formatting of log entries
-  std::string BuildFormattedEntry(itk::Logger::PriorityLevelType, std::string const&) ITK_OVERRIDE;
+  virtual std::string BuildFormattedEntry(itk::Logger::PriorityLevelType, std::string const&) ITK_OVERRIDE;
 
 protected:
     Logger();
-    virtual ~Logger();
+    virtual ~Logger() ITK_OVERRIDE;
 }; // class Logger
 
 } // namespace otb
diff --git a/Modules/Core/Common/src/otbLogger.cxx b/Modules/Core/Common/src/otbLogger.cxx
index f7994eed4db3a1830b7fc2e1028bd23344c205eb..09f08cb22efdc8fabf7bbcbc8c31d3312c53c14c 100644
--- a/Modules/Core/Common/src/otbLogger.cxx
+++ b/Modules/Core/Common/src/otbLogger.cxx
@@ -24,8 +24,7 @@
 namespace otb
 {
 
-Logger::Logger() :
-    itk::Logger::Logger()
+Logger::Logger()
 {
 #if OTB_DEBUG
   this->SetPriorityLevel(itk::LoggerBase::DEBUG);