diff --git a/src/vim.h b/src/vim.h
index b6b4e1e9be2321ee7d85f29d305e9218b7bda6bc..1264a84d7079707f789c13c6296bdece7058df38 100644
--- a/src/vim.h
+++ b/src/vim.h
@@ -2065,6 +2065,12 @@ typedef int VimClipboard;	/* This is required for the prototypes. */
 #  undef bool
 # endif
 
+/* uint32_t may be defined by configure, but perh.h may indirectly include
+ * stdint.h which tries to typedef uint32_t and fails. */
+#ifdef uint32_t
+# undef uint32_t
+#endif
+
 # ifdef __BORLANDC__
   /* Borland has the structure stati64 but not _stati64 */
 #  define _stati64 stati64