diff --git a/src/fftwf_tools.cpp b/src/fftwf_tools.cpp
index c2ca949c3055b229ae2cb90d94a8ce4b61b18636..9f49e2c9be17dcc8d9ea7a9c896ee15a461d336b 100644
--- a/src/fftwf_tools.cpp
+++ b/src/fftwf_tools.cpp
@@ -167,8 +167,9 @@ fftwf_plan plan_transpose(
     howmany_dims[1].os = rows;
     const int howmany_rank = sizeof(howmany_dims)/sizeof(howmany_dims[0]);
 
-    return fftw_plan_guru_r2r(/*rank*/0, /*dims*/NULL,
-                              howmany_rank, howmany_dims,
-                              in, out, /*kind*/NULL, flags);
+    return fftwf_plan_guru_r2r(
+            /*rank*/0, /*dims*/NULL,
+            howmany_rank, howmany_dims,
+            in, out, /*kind*/NULL, flags);
 }
 
diff --git a/src/field_descriptor.cpp b/src/field_descriptor.cpp
index 3bbfdc74cc0e0071673c73a55c6be6ea68f94eea..2e1396b2246bb5049f77625bcdf31772fc550c1c 100644
--- a/src/field_descriptor.cpp
+++ b/src/field_descriptor.cpp
@@ -86,11 +86,12 @@ int field_descriptor::read(
     MPI_Info_create(&info);
     MPI_File f;
 
-    f = MPI::File::Open(
+    MPI_File_open(
             this->comm,
             fname,
             MPI_MODE_RDONLY,
-            info);
+            info,
+            &f);
     MPI_File_set_view(
             f,
             0,
@@ -117,11 +118,12 @@ int field_descriptor::write(
     MPI_Info_create(&info);
     MPI_File f;
 
-    f = MPI::File::Open(
+    MPI_File_open(
             this->comm,
             fname,
             MPI_MODE_CREATE | MPI_MODE_WRONLY,
-            info);
+            info,
+            &f);
     MPI_File_set_view(
             f,
             0,
@@ -147,7 +149,6 @@ int field_descriptor::transpose(
     // IMPORTANT NOTE:
     // for 3D transposition, the input data is messed up
     fftwf_plan tplan;
-    ptrdiff_t dim1;
     if (this->ndims == 3)
     {
         // transpose the two local dimensions 1 and 2