diff --git a/Makefile.am b/Makefile.am
index 288f944b..2ad46df5 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -10,6 +10,7 @@ UTIL_INCLUDE = \
annotations.hpp \
backtrace.hpp \
debug.hpp \
+ enable_if.hpp \
except.hpp \
float.hpp \
io.hpp \
diff --git a/enable_if.hpp b/enable_if.hpp
new file mode 100644
index 00000000..a4cdedbe
--- /dev/null
+++ b/enable_if.hpp
@@ -0,0 +1,33 @@
+/*
+ * This file is part of libgim.
+ *
+ * Waif is free software: you can redistribute it and/or modify it under the
+ * terms of the GNU General Public License as published by the Free Software
+ * Foundation, either version 3 of the License, or (at your option) any later
+ * version.
+ *
+ * Waif is distributed in the hope that it will be useful, but WITHOUT ANY
+ * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
+ * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
+ * details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with libgim. If not, see .
+ *
+ * Copyright 2010 Danny Robson
+ */
+
+#ifndef __ENABLE_IF_HPP
+#define __ENABLE_IF_HPP
+
+template
+struct enable_if {
+ typedef T type;
+};
+
+
+template
+struct enable_if { };
+
+
+#endif // __ENABLE_IF_HPP