diff --git a/Code/Mantid/Framework/Geometry/src/Math/Acomp.cpp b/Code/Mantid/Framework/Geometry/src/Math/Acomp.cpp
index e324cc001390b151194b6a7a26cf4bff32ffacd7..0788103182bd08ed8d4202180f43ed171f722ee3 100644
--- a/Code/Mantid/Framework/Geometry/src/Math/Acomp.cpp
+++ b/Code/Mantid/Framework/Geometry/src/Math/Acomp.cpp
@@ -6,6 +6,7 @@
 #include "MantidGeometry/Math/RotCounter.h"
 #include <algorithm>
 #include <iostream>
+#include <functional>
 
 namespace Mantid {
 
diff --git a/Code/Mantid/Framework/Geometry/src/Math/BnId.cpp b/Code/Mantid/Framework/Geometry/src/Math/BnId.cpp
index c1e3193dfbabb825234c56bf6e847179630d3036..25a999388cb556f39dac36496cb77df09b1f7b84 100644
--- a/Code/Mantid/Framework/Geometry/src/Math/BnId.cpp
+++ b/Code/Mantid/Framework/Geometry/src/Math/BnId.cpp
@@ -9,6 +9,7 @@
 #include <sstream>
 #include <algorithm>
 #include <iterator>
+#include <functional>
 
 #include "MantidGeometry/Math/BnId.h"
 
diff --git a/Code/Mantid/Framework/Geometry/src/Math/PolyBase.cpp b/Code/Mantid/Framework/Geometry/src/Math/PolyBase.cpp
index fae868d89f9cfbd05d959126c1725a640f00464d..eac6ba5b99a7b0fb476bc5bed2e86b2f2860906f 100644
--- a/Code/Mantid/Framework/Geometry/src/Math/PolyBase.cpp
+++ b/Code/Mantid/Framework/Geometry/src/Math/PolyBase.cpp
@@ -4,6 +4,7 @@
 #include <vector>
 #include <algorithm>
 #include <iterator>
+#include <functional>
 #include <gsl/gsl_poly.h>
 
 #include "MantidKernel/Exception.h"
diff --git a/Code/Mantid/Framework/Kernel/src/Statistics.cpp b/Code/Mantid/Framework/Kernel/src/Statistics.cpp
index 795a1cc009b951303d64a141c6ae2340e4317ac9..5cefc6fec5e06c3243e70f66c777face67f059da 100644
--- a/Code/Mantid/Framework/Kernel/src/Statistics.cpp
+++ b/Code/Mantid/Framework/Kernel/src/Statistics.cpp
@@ -9,6 +9,7 @@
 #include <numeric>
 #include <sstream>
 #include <stdexcept>
+#include <functional>
 
 
 namespace Mantid {