diff --git a/mercurial/manifest.c b/mercurial/manifest.c
--- a/mercurial/manifest.c
+++ b/mercurial/manifest.c
@@ -14,15 +14,6 @@
 
 #include "util.h"
 
-/* VC9 doesn't include bool and lacks stdbool.h based on my searching */
-#ifdef _MSC_VER
-#define true 1
-#define false 0
-typedef unsigned char bool;
-#else
-#include <stdbool.h>
-#endif
-
 #define DEFAULT_LINES 100000
 
 typedef struct {
diff --git a/mercurial/util.h b/mercurial/util.h
--- a/mercurial/util.h
+++ b/mercurial/util.h
@@ -209,4 +209,13 @@ static inline double getbefloat64(const 
 	return ret;
 }
 
+/* VC9 doesn't include bool and lacks stdbool.h based on my searching */
+#ifdef _MSC_VER
+#define true 1
+#define false 0
+typedef unsigned char bool;
+#else
+#include <stdbool.h>
+#endif
+
 #endif /* _HG_UTIL_H_ */