diff --git a/SystemTools.hxx.in b/SystemTools.hxx.in
index 0561bc1225fb2bbde128ec4ded403f5451a318fe..2ce7543e74f266a25f2e30975afabb64c66605cf 100644
--- a/SystemTools.hxx.in
+++ b/SystemTools.hxx.in
@@ -22,6 +22,10 @@
 
 #include <sys/types.h>
 
+#if defined( _MSC_VER )
+typedef unsigned short mode_t;
+#endif
+
 /* Define these macros temporarily to keep the code readable.  */
 #if !defined (KWSYS_NAMESPACE) && !@KWSYS_NAMESPACE@_NAME_IS_KWSYS
 # define kwsys_stl @KWSYS_NAMESPACE@_stl