Tidy: modernize-use-nullptr
[alexxy/gromacs.git] / src / gromacs / fileio / checkpoint.cpp
index 4530329127de6fda1f46db101f194abaecf64387..23f037fcad995ad3af534818b6c38d73a959ceba 100644 (file)
@@ -1,7 +1,7 @@
 /*
  * This file is part of the GROMACS molecular simulation package.
  *
- * Copyright (c) 2008,2009,2010,2011,2012,2013,2014,2015,2016, by the GROMACS development team, led by
+ * Copyright (c) 2008,2009,2010,2011,2012,2013,2014,2015,2016,2017, by the GROMACS development team, led by
  * Mark Abraham, David van der Spoel, Berk Hess, and Erik Lindahl,
  * and including many others, as listed in the AUTHORS file in the
  * top-level source directory and at http://www.gromacs.org.
@@ -180,7 +180,7 @@ static const char *entryName(StatePart part, int ecpt)
         case StatePart::freeEnergyHistory: return edfh_names[ecpt];
     }
 
-    return NULL;
+    return nullptr;
 }
 
 static void cp_warning(FILE *fp)
@@ -376,7 +376,7 @@ static inline xdrproc_t xdrProc(int xdrType)
         default: GMX_RELEASE_ASSERT(false, "XDR data type not implemented");
     }
 
-    return NULL;
+    return nullptr;
 }
 
 /*! \brief Lists or only reads an xdr vector from checkpoint file
@@ -395,7 +395,7 @@ static bool_t listXdrVector(XDR *xd, StatePart part, int ecpt, int nf, int xdrTy
     std::vector<char>  data(nf*elemSize);
     res = xdr_vector(xd, data.data(), nf, elemSize, xdrProc(xdrType));
 
-    if (list != NULL)
+    if (list != nullptr)
     {
         switch (xdrType)
         {
@@ -485,23 +485,23 @@ static int doVectorLow(XDR *xd, StatePart part, int ecpt, int sflags,
                        T **v, std::vector<T> *vector,
                        FILE *list, CptElementType cptElementType)
 {
-    GMX_RELEASE_ASSERT(list != NULL || (v != NULL && vector == NULL) || (v == NULL && vector != NULL), "Without list, we should have exactly one of v and vector != NULL");
+    GMX_RELEASE_ASSERT(list != nullptr || (v != nullptr && vector == nullptr) || (v == nullptr && vector != nullptr), "Without list, we should have exactly one of v and vector != NULL");
 
     bool_t res = 0;
 
     int    numElemInTheFile;
-    if (list == NULL)
+    if (list == nullptr)
     {
         if (nval >= 0)
         {
-            GMX_RELEASE_ASSERT(nptr == NULL, "With nval>=0 we should have nptr==NULL");
+            GMX_RELEASE_ASSERT(nptr == nullptr, "With nval>=0 we should have nptr==NULL");
             numElemInTheFile = nval;
         }
         else
         {
-            if (v != NULL)
+            if (v != nullptr)
             {
-                GMX_RELEASE_ASSERT(nptr != NULL, "With nval<0 we should have nptr!=NULL");
+                GMX_RELEASE_ASSERT(nptr != nullptr, "With nval<0 we should have nptr!=NULL");
                 // cppcheck-suppress nullPointer
                 numElemInTheFile = *nptr;
             }
@@ -526,7 +526,7 @@ static int doVectorLow(XDR *xd, StatePart part, int ecpt, int sflags,
         return -1;
     }
 
-    if (list == NULL && (sflags & (1 << ecpt)))
+    if (list == nullptr && (sflags & (1 << ecpt)))
     {
         if (nval >= 0)
         {
@@ -535,7 +535,7 @@ static int doVectorLow(XDR *xd, StatePart part, int ecpt, int sflags,
                 gmx_fatal(FARGS, "Count mismatch for state entry %s, code count is %d, file count is %d\n", entryName(part, ecpt), nval, numElemInTheFile);
             }
         }
-        else if (nptr != NULL)
+        else if (nptr != nullptr)
         {
             *nptr = numElemInTheFile;
         }
@@ -559,9 +559,9 @@ static int doVectorLow(XDR *xd, StatePart part, int ecpt, int sflags,
         }
 
         T *vp;
-        if (v != NULL)
+        if (v != nullptr)
         {
-            if (*v == NULL)
+            if (*v == nullptr)
             {
                 snew(*v, numElemInTheFile);
             }
@@ -623,7 +623,7 @@ template <typename T>
 static int doVector(XDR *xd, StatePart part, int ecpt, int sflags,
                     std::vector<T> *vector, FILE *list)
 {
-    return doVectorLow<T>(xd, part, ecpt, sflags, -1, NULL, NULL, vector, list, CptElementType::real);
+    return doVectorLow<T>(xd, part, ecpt, sflags, -1, nullptr, nullptr, vector, list, CptElementType::real);
 }
 
 //! \brief Read/Write an std::vector, on read checks the number of elements matches \p numElements
@@ -631,7 +631,7 @@ template <typename T>
 static int doVector(XDR *xd, StatePart part, int ecpt, int sflags,
                     int numElements, std::vector<T> *vector, FILE *list)
 {
-    return doVectorLow<T>(xd, part, ecpt, sflags, numElements, NULL, NULL, vector, list, CptElementType::real);
+    return doVectorLow<T>(xd, part, ecpt, sflags, numElements, nullptr, nullptr, vector, list, CptElementType::real);
 }
 
 //! \brief Read/Write a PaddedRVecVector, on read checks the number of elements matches \p numElements
@@ -640,7 +640,7 @@ static int doPaddedVector(XDR *xd, StatePart part, int ecpt, int sflags,
 {
     rvec *v_rvec;
 
-    if (list == NULL && (sflags & (1 << ecpt)))
+    if (list == nullptr && (sflags & (1 << ecpt)))
     {
         /* We resize the vector here to avoid pointer reallocation in
          * do_cpte_reals_low. Note the we allocate 1 element extra for SIMD.
@@ -650,11 +650,11 @@ static int doPaddedVector(XDR *xd, StatePart part, int ecpt, int sflags,
     }
     else
     {
-        v_rvec = NULL;
+        v_rvec = nullptr;
     }
 
     return doVectorLow<real>(xd, part, ecpt, sflags,
-                             numElements*DIM, NULL, (real **)(&v_rvec), NULL,
+                             numElements*DIM, nullptr, (real **)(&v_rvec), nullptr,
                              list, CptElementType::real3);
 }
 
@@ -665,7 +665,7 @@ static int doPaddedVector(XDR *xd, StatePart part, int ecpt, int sflags,
 static int do_cpte_reals(XDR *xd, StatePart part, int ecpt, int sflags,
                          int n, real **v, FILE *list)
 {
-    return doVectorLow<real>(xd, part, ecpt, sflags, n, NULL, v, NULL, list, CptElementType::real);
+    return doVectorLow<real>(xd, part, ecpt, sflags, n, nullptr, v, nullptr, list, CptElementType::real);
 }
 
 /* This function does the same as do_cpte_reals,
@@ -675,19 +675,19 @@ static int do_cpte_reals(XDR *xd, StatePart part, int ecpt, int sflags,
 static int do_cpte_n_reals(XDR *xd, StatePart part, int ecpt, int sflags,
                            int *n, real **v, FILE *list)
 {
-    return doVectorLow<real>(xd, part, ecpt, sflags, -1, n, v, NULL, list, CptElementType::real);
+    return doVectorLow<real>(xd, part, ecpt, sflags, -1, n, v, nullptr, list, CptElementType::real);
 }
 
 static int do_cpte_real(XDR *xd, StatePart part, int ecpt, int sflags,
                         real *r, FILE *list)
 {
-    return doVectorLow<real>(xd, part, ecpt, sflags, 1, NULL, &r, NULL, list, CptElementType::real);
+    return doVectorLow<real>(xd, part, ecpt, sflags, 1, nullptr, &r, nullptr, list, CptElementType::real);
 }
 
 static int do_cpte_ints(XDR *xd, StatePart part, int ecpt, int sflags,
                         int n, int **v, FILE *list)
 {
-    return doVectorLow<int>(xd, part, ecpt, sflags, n, NULL, v, NULL, list, CptElementType::integer);
+    return doVectorLow<int>(xd, part, ecpt, sflags, n, nullptr, v, nullptr, list, CptElementType::integer);
 }
 
 static int do_cpte_int(XDR *xd, StatePart part, int ecpt, int sflags,
@@ -699,7 +699,7 @@ static int do_cpte_int(XDR *xd, StatePart part, int ecpt, int sflags,
 static int do_cpte_doubles(XDR *xd, StatePart part, int ecpt, int sflags,
                            int n, double **v, FILE *list)
 {
-    return doVectorLow<double>(xd, part, ecpt, sflags, n, NULL, v, NULL, list, CptElementType::real);
+    return doVectorLow<double>(xd, part, ecpt, sflags, n, nullptr, v, nullptr, list, CptElementType::real);
 }
 
 static int do_cpte_double(XDR *xd, StatePart part, int ecpt, int sflags,
@@ -716,7 +716,7 @@ static int do_cpte_matrix(XDR *xd, StatePart part, int ecpt, int sflags,
 
     vr  = &(v[0][0]);
     ret = doVectorLow<real>(xd, part, ecpt, sflags,
-                            DIM*DIM, NULL, &vr, NULL, NULL, CptElementType::matrix3x3);
+                            DIM*DIM, nullptr, &vr, nullptr, nullptr, CptElementType::matrix3x3);
 
     if (list && ret == 0)
     {
@@ -735,13 +735,13 @@ static int do_cpte_nmatrix(XDR *xd, StatePart part, int ecpt, int sflags,
     char  name[CPTSTRLEN];
 
     ret = 0;
-    if (v == NULL)
+    if (v == nullptr)
     {
         snew(v, n);
     }
     for (i = 0; i < n; i++)
     {
-        reti = doVectorLow<real>(xd, part, ecpt, sflags, n, NULL, &(v[i]), NULL, NULL, CptElementType::matrix3x3);
+        reti = doVectorLow<real>(xd, part, ecpt, sflags, n, nullptr, &(v[i]), nullptr, nullptr, CptElementType::matrix3x3);
         if (list && reti == 0)
         {
             sprintf(name, "%s[%d]", entryName(part, ecpt), i);
@@ -759,7 +759,7 @@ static int do_cpte_matrices(XDR *xd, StatePart part, int ecpt, int sflags,
                             int n, matrix **v, FILE *list)
 {
     bool_t  res = 0;
-    matrix *vp, *va = NULL;
+    matrix *vp, *va = nullptr;
     real   *vr;
     int     nf, i, j, k;
     int     ret;
@@ -770,7 +770,7 @@ static int do_cpte_matrices(XDR *xd, StatePart part, int ecpt, int sflags,
     {
         return -1;
     }
-    if (list == NULL && nf != n)
+    if (list == nullptr && nf != n)
     {
         gmx_fatal(FARGS, "Count mismatch for state entry %s, code count is %d, file count is %d\n", entryName(part, ecpt), n, nf);
     }
@@ -781,7 +781,7 @@ static int do_cpte_matrices(XDR *xd, StatePart part, int ecpt, int sflags,
     }
     else
     {
-        if (*v == NULL)
+        if (*v == nullptr)
         {
             snew(*v, nf);
         }
@@ -799,7 +799,7 @@ static int do_cpte_matrices(XDR *xd, StatePart part, int ecpt, int sflags,
         }
     }
     ret = doVectorLow<real>(xd, part, ecpt, sflags,
-                            nf*DIM*DIM, NULL, &vr, NULL, NULL,
+                            nf*DIM*DIM, nullptr, &vr, nullptr, nullptr,
                             CptElementType::matrix3x3);
     for (i = 0; i < nf; i++)
     {
@@ -893,7 +893,7 @@ static void do_cpt_header(XDR *xd, gmx_bool bRead, int *file_version,
     if (*file_version >= 12)
     {
         do_cpt_string_err(xd, bRead, "generating host", &fhost, list);
-        if (list == NULL)
+        if (list == nullptr)
         {
             sfree(fhost);
         }
@@ -1049,10 +1049,10 @@ static int do_cpt_state(XDR *xd,
                 /* The RNG entries are no longer written,
                  * the next 4 lines are only for reading old files.
                  */
-                case estLD_RNG:  ret      = do_cpte_ints(xd, part, i, sflags, 0, NULL, list); break;
-                case estLD_RNGI: ret      = do_cpte_ints(xd, part, i, sflags, 0, NULL, list); break;
-                case estMC_RNG:  ret      = do_cpte_ints(xd, part, i, sflags, 0, NULL, list); break;
-                case estMC_RNGI: ret      = do_cpte_ints(xd, part, i, sflags, 0, NULL, list); break;
+                case estLD_RNG:  ret      = do_cpte_ints(xd, part, i, sflags, 0, nullptr, list); break;
+                case estLD_RNGI: ret      = do_cpte_ints(xd, part, i, sflags, 0, nullptr, list); break;
+                case estMC_RNG:  ret      = do_cpte_ints(xd, part, i, sflags, 0, nullptr, list); break;
+                case estMC_RNGI: ret      = do_cpte_ints(xd, part, i, sflags, 0, nullptr, list); break;
                 case estDISRE_INITF:  ret = do_cpte_real (xd, part, i, sflags, &state->hist.disre_initf, list); break;
                 case estDISRE_RM3TAV: ret = do_cpte_n_reals(xd, part, i, sflags, &state->hist.ndisrepairs, &state->hist.disre_rm3tav, list); break;
                 case estORIRE_INITF:  ret = do_cpte_real (xd, part, i, sflags, &state->hist.orire_initf, list); break;
@@ -1111,7 +1111,7 @@ static int do_cpt_swapstate(XDR *xd, gmx_bool bRead,
         return 0;
     }
 
-    if (*swapstatePtr == NULL)
+    if (*swapstatePtr == nullptr)
     {
         snew(*swapstatePtr, 1);
     }
@@ -1160,7 +1160,7 @@ static int do_cpt_swapstate(XDR *xd, gmx_bool bRead,
                 do_cpt_int_err(xd, "swap influx net p", gs->inflow_net_p[ic], list);
             }
 
-            if (bRead && (NULL == gs->nMolPast[ic]) )
+            if (bRead && (nullptr == gs->nMolPast[ic]) )
             {
                 snew(gs->nMolPast[ic], swapstate->nAverage);
             }
@@ -1349,7 +1349,7 @@ static int do_cpt_df_hist(XDR *xd, int fflags, int nlambda, df_history_t **dfhis
         return 0;
     }
 
-    if (*dfhistPtr == NULL)
+    if (*dfhistPtr == nullptr)
     {
         snew(*dfhistPtr, 1);
         (*dfhistPtr)->nlambda = nlambda;
@@ -1401,7 +1401,7 @@ static int do_cpt_EDstate(XDR *xd, gmx_bool bRead,
         return 0;
     }
 
-    if (*EDstatePtr == NULL)
+    if (*EDstatePtr == nullptr)
     {
         snew(*EDstatePtr, 1);
     }
@@ -1488,7 +1488,7 @@ static int do_cpt_files(XDR *xd, gmx_bool bRead,
         {
             do_cpt_string_err(xd, bRead, "output filename", &buf, list);
             std::strncpy(outputfiles[i].filename, buf, CPTSTRLEN-1);
-            if (list == NULL)
+            if (list == nullptr)
             {
                 sfree(buf);
             }
@@ -1687,11 +1687,11 @@ void write_checkpoint(const char *fn, gmx_bool bNumberAndKeep,
     do_cpt_header(gmx_fio_getxdr(fp), FALSE, &file_version,
                   &version, &btime, &buser, &bhost, &double_prec, &fprog, &ftime,
                   &eIntegrator, &simulation_part, &step, &t, &nppnodes,
-                  DOMAINDECOMP(cr) ? domdecCells : NULL, &npmenodes,
+                  DOMAINDECOMP(cr) ? domdecCells : nullptr, &npmenodes,
                   &state->natoms, &state->ngtc, &state->nnhpres,
                   &state->nhchainlength, &nlambda, &state->flags, &flags_eks, &flags_enh, &flags_dfh,
                   &nED, &eSwapCoords,
-                  NULL);
+                  nullptr);
 
     sfree(version);
     sfree(btime);
@@ -1699,13 +1699,13 @@ void write_checkpoint(const char *fn, gmx_bool bNumberAndKeep,
     sfree(bhost);
     sfree(fprog);
 
-    if ((do_cpt_state(gmx_fio_getxdr(fp), state->flags, state, NULL) < 0)        ||
-        (do_cpt_ekinstate(gmx_fio_getxdr(fp), flags_eks, &state->ekinstate, NULL) < 0) ||
-        (do_cpt_enerhist(gmx_fio_getxdr(fp), FALSE, flags_enh, enerhist, NULL) < 0)  ||
-        (do_cpt_df_hist(gmx_fio_getxdr(fp), flags_dfh, nlambda, &state->dfhist, NULL) < 0)  ||
-        (do_cpt_EDstate(gmx_fio_getxdr(fp), FALSE, nED, &state->edsamstate, NULL) < 0)      ||
-        (do_cpt_swapstate(gmx_fio_getxdr(fp), FALSE, eSwapCoords, &state->swapstate, NULL) < 0) ||
-        (do_cpt_files(gmx_fio_getxdr(fp), FALSE, &outputfiles, &noutputfiles, NULL,
+    if ((do_cpt_state(gmx_fio_getxdr(fp), state->flags, state, nullptr) < 0)        ||
+        (do_cpt_ekinstate(gmx_fio_getxdr(fp), flags_eks, &state->ekinstate, nullptr) < 0) ||
+        (do_cpt_enerhist(gmx_fio_getxdr(fp), FALSE, flags_enh, enerhist, nullptr) < 0)  ||
+        (do_cpt_df_hist(gmx_fio_getxdr(fp), flags_dfh, nlambda, &state->dfhist, nullptr) < 0)  ||
+        (do_cpt_EDstate(gmx_fio_getxdr(fp), FALSE, nED, &state->edsamstate, nullptr) < 0)      ||
+        (do_cpt_swapstate(gmx_fio_getxdr(fp), FALSE, eSwapCoords, &state->swapstate, nullptr) < 0) ||
+        (do_cpt_files(gmx_fio_getxdr(fp), FALSE, &outputfiles, &noutputfiles, nullptr,
                       file_version) < 0))
     {
         gmx_file("Cannot read/write checkpoint; corrupt file, or maybe you are out of disk space?");
@@ -1726,7 +1726,7 @@ void write_checkpoint(const char *fn, gmx_bool bNumberAndKeep,
                 "Cannot fsync '%s'; maybe you are out of disk space?",
                 gmx_fio_getname(ret));
 
-        if (getenv(GMX_IGNORE_FSYNC_FAILURE_ENV) == NULL)
+        if (getenv(GMX_IGNORE_FSYNC_FAILURE_ENV) == nullptr)
         {
             gmx_file(buf);
         }
@@ -1994,7 +1994,7 @@ static void read_checkpoint(const char *fn, FILE **pfplog,
                   &nppnodes_f, dd_nc_f, &npmenodes_f,
                   &natoms, &ngtc, &nnhpres, &nhchainlength, &nlambda,
                   &fflags, &flags_eks, &flags_enh, &flags_dfh,
-                  &nED, &eSwapCoords, NULL);
+                  &nED, &eSwapCoords, nullptr);
 
     if (bAppendOutputFiles &&
         file_version >= 13 && double_prec != GMX_DOUBLE)
@@ -2002,7 +2002,7 @@ static void read_checkpoint(const char *fn, FILE **pfplog,
         gmx_fatal(FARGS, "Output file appending requested, but the code and checkpoint file precision (single/double) don't match");
     }
 
-    if (cr == NULL || MASTER(cr))
+    if (cr == nullptr || MASTER(cr))
     {
         fprintf(stderr, "\nReading checkpoint file %s generated: %s\n\n",
                 fn, ftime);
@@ -2102,7 +2102,7 @@ static void read_checkpoint(const char *fn, FILE **pfplog,
                           "You can try with the -noappend option, and get more info in the log file.\n");
             }
 
-            if (getenv("GMX_ALLOW_CPT_MISMATCH") == NULL)
+            if (getenv("GMX_ALLOW_CPT_MISMATCH") == nullptr)
             {
                 gmx_fatal(FARGS, "You seem to have switched ensemble, integrator, T and/or P-coupling algorithm between the cpt and tpr file. The recommended way of doing this is passing the cpt file to grompp (with option -t) instead of to mdrun. If you know what you are doing, you can override this error by setting the env.var. GMX_ALLOW_CPT_MISMATCH");
             }
@@ -2128,14 +2128,14 @@ static void read_checkpoint(const char *fn, FILE **pfplog,
                         reproducibilityRequested);
         }
     }
-    ret             = do_cpt_state(gmx_fio_getxdr(fp), fflags, state, NULL);
+    ret             = do_cpt_state(gmx_fio_getxdr(fp), fflags, state, nullptr);
     *init_fep_state = state->fep_state;  /* there should be a better way to do this than setting it here.
                                             Investigate for 5.0. */
     if (ret)
     {
         cp_error();
     }
-    ret = do_cpt_ekinstate(gmx_fio_getxdr(fp), flags_eks, &state->ekinstate, NULL);
+    ret = do_cpt_ekinstate(gmx_fio_getxdr(fp), flags_eks, &state->ekinstate, nullptr);
     if (ret)
     {
         cp_error();
@@ -2144,7 +2144,7 @@ static void read_checkpoint(const char *fn, FILE **pfplog,
                   ((flags_eks & (1<<eeksEKINSCALEF)) | (flags_eks & (1<<eeksEKINSCALEH)) | (flags_eks & (1<<eeksVSCALE))));
 
     ret = do_cpt_enerhist(gmx_fio_getxdr(fp), TRUE,
-                          flags_enh, enerhist, NULL);
+                          flags_enh, enerhist, nullptr);
     if (ret)
     {
         cp_error();
@@ -2163,25 +2163,25 @@ static void read_checkpoint(const char *fn, FILE **pfplog,
         enerhist->nsum_sim = *step;
     }
 
-    ret = do_cpt_df_hist(gmx_fio_getxdr(fp), flags_dfh, nlambda, &state->dfhist, NULL);
+    ret = do_cpt_df_hist(gmx_fio_getxdr(fp), flags_dfh, nlambda, &state->dfhist, nullptr);
     if (ret)
     {
         cp_error();
     }
 
-    ret = do_cpt_EDstate(gmx_fio_getxdr(fp), TRUE, nED, &state->edsamstate, NULL);
+    ret = do_cpt_EDstate(gmx_fio_getxdr(fp), TRUE, nED, &state->edsamstate, nullptr);
     if (ret)
     {
         cp_error();
     }
 
-    ret = do_cpt_swapstate(gmx_fio_getxdr(fp), TRUE, eSwapCoords, &state->swapstate, NULL);
+    ret = do_cpt_swapstate(gmx_fio_getxdr(fp), TRUE, eSwapCoords, &state->swapstate, nullptr);
     if (ret)
     {
         cp_error();
     }
 
-    ret = do_cpt_files(gmx_fio_getxdr(fp), TRUE, &outputfiles, &nfiles, NULL, file_version);
+    ret = do_cpt_files(gmx_fio_getxdr(fp), TRUE, &outputfiles, &nfiles, nullptr, file_version);
     if (ret)
     {
         cp_error();
@@ -2401,7 +2401,7 @@ void read_checkpoint_part_and_step(const char  *filename,
     int       nED, eSwapCoords;
     t_fileio *fp;
 
-    if (filename == NULL ||
+    if (filename == nullptr ||
         !gmx_fexist(filename) ||
         (!(fp = gmx_fio_open(filename, "r"))))
     {
@@ -2419,7 +2419,7 @@ void read_checkpoint_part_and_step(const char  *filename,
                   &eIntegrator, simulation_part, step, &t, &nppnodes, dd_nc, &npme,
                   &state.natoms, &state.ngtc, &state.nnhpres, &state.nhchainlength,
                   &nlambda, &state.flags, &flags_eks, &flags_enh, &flags_dfh,
-                  &nED, &eSwapCoords, NULL);
+                  &nED, &eSwapCoords, nullptr);
 
     gmx_fio_close(fp);
 }
@@ -2438,7 +2438,7 @@ static void read_checkpoint_data(t_fileio *fp, int *simulation_part,
     int                  flags_eks, flags_enh, flags_dfh;
     int                  nED, eSwapCoords;
     int                  nfiles_loc;
-    gmx_file_position_t *files_loc = NULL;
+    gmx_file_position_t *files_loc = nullptr;
     int                  ret;
 
     do_cpt_header(gmx_fio_getxdr(fp), TRUE, &file_version,
@@ -2446,14 +2446,14 @@ static void read_checkpoint_data(t_fileio *fp, int *simulation_part,
                   &eIntegrator, simulation_part, step, t, &nppnodes, dd_nc, &npme,
                   &state->natoms, &state->ngtc, &state->nnhpres, &state->nhchainlength,
                   &nlambda, &state->flags, &flags_eks, &flags_enh, &flags_dfh,
-                  &nED, &eSwapCoords, NULL);
+                  &nED, &eSwapCoords, nullptr);
     ret =
-        do_cpt_state(gmx_fio_getxdr(fp), state->flags, state, NULL);
+        do_cpt_state(gmx_fio_getxdr(fp), state->flags, state, nullptr);
     if (ret)
     {
         cp_error();
     }
-    ret = do_cpt_ekinstate(gmx_fio_getxdr(fp), flags_eks, &state->ekinstate, NULL);
+    ret = do_cpt_ekinstate(gmx_fio_getxdr(fp), flags_eks, &state->ekinstate, nullptr);
     if (ret)
     {
         cp_error();
@@ -2461,24 +2461,24 @@ static void read_checkpoint_data(t_fileio *fp, int *simulation_part,
 
     energyhistory_t enerhist;
     ret = do_cpt_enerhist(gmx_fio_getxdr(fp), TRUE,
-                          flags_enh, &enerhist, NULL);
+                          flags_enh, &enerhist, nullptr);
     if (ret)
     {
         cp_error();
     }
-    ret = do_cpt_df_hist(gmx_fio_getxdr(fp), flags_dfh, nlambda, &state->dfhist, NULL);
+    ret = do_cpt_df_hist(gmx_fio_getxdr(fp), flags_dfh, nlambda, &state->dfhist, nullptr);
     if (ret)
     {
         cp_error();
     }
 
-    ret = do_cpt_EDstate(gmx_fio_getxdr(fp), TRUE, nED, &state->edsamstate, NULL);
+    ret = do_cpt_EDstate(gmx_fio_getxdr(fp), TRUE, nED, &state->edsamstate, nullptr);
     if (ret)
     {
         cp_error();
     }
 
-    ret = do_cpt_swapstate(gmx_fio_getxdr(fp), TRUE, eSwapCoords, &state->swapstate, NULL);
+    ret = do_cpt_swapstate(gmx_fio_getxdr(fp), TRUE, eSwapCoords, &state->swapstate, nullptr);
     if (ret)
     {
         cp_error();
@@ -2487,7 +2487,7 @@ static void read_checkpoint_data(t_fileio *fp, int *simulation_part,
     ret = do_cpt_files(gmx_fio_getxdr(fp), TRUE,
                        &files_loc,
                        &nfiles_loc,
-                       NULL, file_version);
+                       nullptr, file_version);
     if (outputfiles != nullptr)
     {
         *outputfiles = files_loc;
@@ -2526,7 +2526,7 @@ read_checkpoint_state(const char *fn, int *simulation_part,
     t_fileio *fp;
 
     fp = gmx_fio_open(fn, "r");
-    read_checkpoint_data(fp, simulation_part, step, t, state, NULL, NULL);
+    read_checkpoint_data(fp, simulation_part, step, t, state, nullptr, nullptr);
     if (gmx_fio_close(fp) != 0)
     {
         gmx_file("Cannot read/write checkpoint; corrupt file, or maybe you are out of disk space?");
@@ -2546,7 +2546,7 @@ void read_checkpoint_trxframe(t_fileio *fp, t_trxframe *fr)
 
     init_state(&state, 0, 0, 0, 0, 0);
 
-    read_checkpoint_data(fp, &simulation_part, &step, &t, &state, NULL, NULL);
+    read_checkpoint_data(fp, &simulation_part, &step, &t, &state, nullptr, nullptr);
 
     fr->natoms  = state.natoms;
     fr->bTitle  = FALSE;