diff --git a/src/DynamicModel.cc b/src/DynamicModel.cc
index 5168145b94d807cabdfa2c31f5bc25b59a285cf1..1b38a87d409b512a45e3fcdfc6db546c16adfabc 100644
--- a/src/DynamicModel.cc
+++ b/src/DynamicModel.cc
@@ -1780,7 +1780,7 @@ DynamicModel::writeDynamicCFile(const string &basename) const
                   << "void mexFunction(int nlhs, mxArray *plhs[], int nrhs, const mxArray *prhs[])" << endl
                   << "{" << endl
                   << "  /* Check that no derivatives of higher order than computed are being requested */" << endl
-                  << "  if (nlhs > " << computed_derivs_order << ")" << endl
+                  << "  if (nlhs > " << computed_derivs_order + 1 << ")" << endl
                   << R"(    mexErrMsgTxt("Derivatives of higher order than computed have been requested");)" << endl
                   << "  /* Create a pointer to the input matrix y. */" << endl
                   << "  double *y = mxGetPr(prhs[0]);" << endl