diff --git a/src/DynamicModel.cc b/src/DynamicModel.cc
index 8419bfc3f6cddf4835da5edeca873d573c559e05..4674cff9ed9725b4661c4a0d6bd4b829b0b6df60 100644
--- a/src/DynamicModel.cc
+++ b/src/DynamicModel.cc
@@ -1716,11 +1716,12 @@ DynamicModel::writeDynamicCFile(const string &basename, const int order) const
                     << " */" << endl
                     << "#include <math.h>" << endl;
 
+  mDynamicModelFile << "#include <stdlib.h>" << endl;
+
   if (external_functions_table.get_total_number_of_unique_model_block_external_functions())
     // External Matlab function, implies Dynamic function will call mex
-    mDynamicModelFile << "#include \"mex.h\"" << endl;
-  else
-    mDynamicModelFile << "#include <stdlib.h>" << endl;
+    mDynamicModelFile << "#include <uchar.h>" << endl // For MATLAB ≤ R2011a
+                      << "#include \"mex.h\"" << endl;
 
   mDynamicModelFile << "#define max(a, b) (((a) > (b)) ? (a) : (b))" << endl
                     << "#define min(a, b) (((a) > (b)) ? (b) : (a))" << endl;
@@ -1756,6 +1757,7 @@ DynamicModel::writeDynamicCFile(const string &basename, const int order) const
                   << " */" << endl
                   << endl
                   << "#include <stdlib.h>" << endl
+                  << "#include <uchar.h>" << endl // For MATLAB ≤ R2011a
                   << "#include \"mex.h\"" << endl
                   << endl
                   << "const int ntt = " << ntt << ";" << endl
diff --git a/src/StaticModel.cc b/src/StaticModel.cc
index 5a75c2c2d32798e5c5488521fcde5af98a97c21e..ecdcb3d9765f124f87a1452c3d5c90cb38c0c79e 100644
--- a/src/StaticModel.cc
+++ b/src/StaticModel.cc
@@ -2026,11 +2026,12 @@ StaticModel::writeStaticCFile(const string &basename) const
          << " */" << endl
          << "#include <math.h>" << endl;
 
+  output << "#include <stdlib.h>" << endl;
+
   if (external_functions_table.get_total_number_of_unique_model_block_external_functions())
     // External Matlab function, implies Static function will call mex
-    output << "#include \"mex.h\"" << endl;
-  else
-    output << "#include <stdlib.h>" << endl;
+    output << "#include <uchar.h>" << endl // For MATLAB ≤ R2011a
+           << "#include \"mex.h\"" << endl;
 
   output << "#define max(a, b) (((a) > (b)) ? (a) : (b))" << endl
          << "#define min(a, b) (((a) > (b)) ? (b) : (a))" << endl;
@@ -2065,6 +2066,7 @@ StaticModel::writeStaticCFile(const string &basename) const
          << " */" << endl
          << endl
          << "#include <stdlib.h>" << endl
+         << "#include <uchar.h>" << endl // For MATLAB ≤ R2011a
          << "#include \"mex.h\"" << endl
          << endl
          << "const int ntt = " << ntt << ";" << endl