diff --git a/Modules/Adapters/GdalAdapters/include/otbOGRFieldWrapper.h b/Modules/Adapters/GdalAdapters/include/otbOGRFieldWrapper.h
index c5af3e93bd98e9fe967d2f3ff9567dfa50fe80d1..14eefed3ee4d78e760d6556ddbef2ce9d4046f14 100644
--- a/Modules/Adapters/GdalAdapters/include/otbOGRFieldWrapper.h
+++ b/Modules/Adapters/GdalAdapters/include/otbOGRFieldWrapper.h
@@ -166,6 +166,9 @@ public:
    */
   void Assign(Field const& f);
 
+  /** \copydoc Field::ogr() const */
+  OGRField & ogr();
+  
   /** Access to the raw underlying OGR data.
    * This function provides an abstraction leak in case deeper control on the
    * underlying \c OGRFeature is required.
@@ -174,9 +177,6 @@ public:
    */
   OGRField & ogr() const;
 
-  /** \copydoc Field::ogr() const */
-  OGRField & ogr();
-
 private:
   /**\name Unchecked definitions
    * All the definitions that follow do the real work. However, they are not the
diff --git a/Modules/Adapters/GdalAdapters/include/otbOGRFieldWrapper.txx b/Modules/Adapters/GdalAdapters/include/otbOGRFieldWrapper.txx
index a1c3e6752e5c5dde3a8b2982253b38d5fc3bfc7e..76e624156593b2ea43e84c6972de30bf1f7204d7 100644
--- a/Modules/Adapters/GdalAdapters/include/otbOGRFieldWrapper.txx
+++ b/Modules/Adapters/GdalAdapters/include/otbOGRFieldWrapper.txx
@@ -465,12 +465,6 @@ void otb::ogr::Field::Assign(Field const& f)
   CheckInvariants();
 }
 
-inline
-OGRField & otb::ogr::Field::ogr() const
-{
-  return const_cast <Field*>(this)->ogr();
-}
-
 inline
 OGRField & otb::ogr::Field::ogr()
 {
@@ -480,4 +474,10 @@ OGRField & otb::ogr::Field::ogr()
   return *f;
 }
 
+inline
+OGRField & otb::ogr::Field::ogr() const
+{
+  return const_cast <Field*>(this)->ogr();
+}
+
 #endif // otbOGRFieldWrapper_txx