diff --git a/Applications/DataExplorer/VtkVis/VtkRaster.cpp b/Applications/DataExplorer/VtkVis/VtkRaster.cpp
index 18eeb2a72b38525d78197130a8a036a34bbb5241..ce318fe170c79897b0654fa0e9e74afac38d114a 100644
--- a/Applications/DataExplorer/VtkVis/VtkRaster.cpp
+++ b/Applications/DataExplorer/VtkVis/VtkRaster.cpp
@@ -16,26 +16,11 @@
 
 #include <algorithm>
 #include <cmath>
-#include <iomanip>
 #include <iostream>
-#include <sstream>
+#include <limits>
 
 #include <QFileInfo>
 
-// ThirdParty/logog
-#include "logog/include/logog.hpp"
-
-#include "StringTools.h"
-
-#include "AsciiRasterInterface.h"
-
-// GeoLib
-#include "Raster.h"
-
-#include <vtkFloatArray.h>
-#include <vtkPointData.h>
-
-#include <vtkImageAlgorithm.h>
 #include <vtkImageData.h>
 #include <vtkImageImport.h>
 #include <vtkImageReader2.h>
@@ -48,6 +33,13 @@
 #include "xtiffio.h"
 #endif
 
+#include <logog/include/logog.hpp>
+
+#include "AsciiRasterInterface.h"
+
+#include "GeoLib/Raster.h"
+
+
 vtkImageAlgorithm* VtkRaster::loadImage(const std::string &fileName,
                                         double& x0, double& y0, double& delta)
 {
diff --git a/Applications/DataExplorer/VtkVis/VtkRaster.h b/Applications/DataExplorer/VtkVis/VtkRaster.h
index 14fb6b96ee143a4e2ecb0d95fd2168e7fdd8c486..dda90e6cd40e98317e3f6e4fed505e25f2f3a361 100644
--- a/Applications/DataExplorer/VtkVis/VtkRaster.h
+++ b/Applications/DataExplorer/VtkVis/VtkRaster.h
@@ -14,7 +14,7 @@
 #ifndef VTKRASTER_H
 #define VTKRASTER_H
 
-#include <fstream>
+#include <string>
 
 class vtkImageAlgorithm;
 class vtkImageImport;
diff --git a/AssemblerLib/LocalToGlobalIndexMap.h b/AssemblerLib/LocalToGlobalIndexMap.h
index 9fc07401c115b53b5890555b4d37e6ccdff68200..c4e60af9190d6b48b301fe48082e452f28d85ce2 100644
--- a/AssemblerLib/LocalToGlobalIndexMap.h
+++ b/AssemblerLib/LocalToGlobalIndexMap.h
@@ -11,7 +11,7 @@
 #define ASSEMBLERLIB_LOCALTOGLOBALINDEXMAP_H_
 
 #ifndef NDEBUG
-#include <iostream>
+#include <iosfwd>
 #endif  // NDEBUG
 
 #include <vector>
diff --git a/BaseLib/Histogram.h b/BaseLib/Histogram.h
index 73ab76bdcb01740be7c1135d70536c870a075d4a..3df0f8f38efe16b23a33a0c9e9f4a6dd9a6fe449 100644
--- a/BaseLib/Histogram.h
+++ b/BaseLib/Histogram.h
@@ -16,7 +16,7 @@
 #include <algorithm>
 #include <cmath>
 #include <iterator>
-#include <iostream>
+#include <iosfwd>
 #include <fstream>
 #include <vector>
 
diff --git a/BaseLib/StringTools.h b/BaseLib/StringTools.h
index 19704d26369021c91a2478aab6223c3ff110e053..f887ad56ec252d200f893db8d6274d8a18d2264f 100644
--- a/BaseLib/StringTools.h
+++ b/BaseLib/StringTools.h
@@ -20,8 +20,6 @@
 #include <string>
 #include <list>
 #include <sstream>
-#include <fstream>
-#include <iostream>
 
 namespace BaseLib {
 
diff --git a/BaseLib/TCLAPCustomOutput.h b/BaseLib/TCLAPCustomOutput.h
index 5d8e64a91d8bbe821c5dca6c0ab082f158e2b83a..e5caa3a77fc62908bc56f1c5450537a83fb355e5 100644
--- a/BaseLib/TCLAPCustomOutput.h
+++ b/BaseLib/TCLAPCustomOutput.h
@@ -12,7 +12,7 @@
 #include <string>
 #include <vector>
 #include <list>
-#include <iostream>
+#include <iosfwd>
 #include <algorithm>
 
 #include <tclap/CmdLineInterface.h>
diff --git a/FileIO/AsciiRasterInterface.h b/FileIO/AsciiRasterInterface.h
index c8c482da00ff4e7eab40b086e4eca38b7d5dba36..55f06df772ca06398ac414e3d0a7bbaf735daf23 100644
--- a/FileIO/AsciiRasterInterface.h
+++ b/FileIO/AsciiRasterInterface.h
@@ -37,7 +37,7 @@ public:
 
     /// Reads a Surfer GRD raster file
     static GeoLib::Raster* getRasterFromSurferFile(std::string const& fname);
-    
+
     /// Writes an Esri asc-file
     static void writeRasterAsASC(GeoLib::Raster const& raster, std::string const& file_name);
 
diff --git a/FileIO/CsvInterface.cpp b/FileIO/CsvInterface.cpp
index e6c43dca94a8482c0b5a6a8db0406764284c2cbc..dd3abc07ae0de5e57e1f744129be1af6eb9af943 100644
--- a/FileIO/CsvInterface.cpp
+++ b/FileIO/CsvInterface.cpp
@@ -13,6 +13,9 @@
 
 #include "CsvInterface.h"
 
+#include <algorithm>
+#include <stdexcept>
+
 #include "GeoLib/Point.h"
 
 namespace FileIO {
diff --git a/FileIO/CsvInterface.h b/FileIO/CsvInterface.h
index 31be7138cf6e4dc488517e9861e6483fd70eae5a..d07a9c26845fbec14868117cec60f78f725b6e60 100644
--- a/FileIO/CsvInterface.h
+++ b/FileIO/CsvInterface.h
@@ -14,14 +14,16 @@
 #ifndef CSVINTERFACE_H_
 #define CSVINTERFACE_H_
 
+#include <logog/include/logog.hpp>
+
 #include <array>
 #include <fstream>
+#include <iterator>
 #include <limits>
 #include <list>
 #include <string>
 #include <vector>
 
-#include <logog/include/logog.hpp>
 
 #include "BaseLib/StringTools.h"
 
diff --git a/FileIO/FEFLOWInterface.h b/FileIO/FEFLOWInterface.h
index 32e02e461da3dba22d03fdd534c7a15ac2a5250d..0d13a52c63d0a2ba00a6e643662ec118ef8a5865 100644
--- a/FileIO/FEFLOWInterface.h
+++ b/FileIO/FEFLOWInterface.h
@@ -9,8 +9,7 @@
 #ifndef FEFLOWINTERFACE_H_
 #define FEFLOWINTERFACE_H_
 
-#include <iostream>
-#include <fstream>
+#include <iosfwd>
 #include <string>
 #include <vector>
 
diff --git a/FileIO/GmshIO/GMSHLine.cpp b/FileIO/GmshIO/GMSHLine.cpp
index 9e62657e442df47b1b3f7aec38360df79c7a80d0..d277226476ddfdeb015698ac2e5d8d5b04307bc9 100644
--- a/FileIO/GmshIO/GMSHLine.cpp
+++ b/FileIO/GmshIO/GMSHLine.cpp
@@ -12,25 +12,26 @@
  *
  */
 
-#include <GmshIO/GMSHLine.h>
+#include <ostream>
+#include "GMSHLine.h"
 
 namespace FileIO 
 {
 namespace GMSH {
 
-GMSHLine::GMSHLine(size_t start_point_id, size_t end_point_id) :
+GMSHLine::GMSHLine(std::size_t start_point_id, std::size_t end_point_id) :
 	_start_pnt_id(start_point_id), _end_pnt_id(end_point_id)
 {}
 
 GMSHLine::~GMSHLine()
 {}
 
-void GMSHLine::write(std::ostream &os, size_t id) const
+void GMSHLine::write(std::ostream &os, std::size_t id) const
 {
 	os << "Line(" << id << ") = {" << _start_pnt_id << "," << _end_pnt_id << "};\n";
 }
 
-void GMSHLine::resetLineData(size_t start_point_id, size_t end_point_id)
+void GMSHLine::resetLineData(std::size_t start_point_id, std::size_t end_point_id)
 {
 	_start_pnt_id = start_point_id;
 	_end_pnt_id = end_point_id;
diff --git a/FileIO/GmshIO/GMSHLine.h b/FileIO/GmshIO/GMSHLine.h
index 159caacad9dbe49e0c042f8e4b5208eedae81e9e..0a53e8967a45486798631710b425355cadc00016 100644
--- a/FileIO/GmshIO/GMSHLine.h
+++ b/FileIO/GmshIO/GMSHLine.h
@@ -15,7 +15,7 @@
 #ifndef GMSHLINE_H_
 #define GMSHLINE_H_
 
-#include <ostream>
+#include <iosfwd>
 
 namespace FileIO 
 {
diff --git a/FileIO/GmshIO/GMSHLineLoop.cpp b/FileIO/GmshIO/GMSHLineLoop.cpp
index f19c035fb512b98889721e3be0600500f441505e..ef6e848e390c467d16cb1f345da39b01b4c9433f 100644
--- a/FileIO/GmshIO/GMSHLineLoop.cpp
+++ b/FileIO/GmshIO/GMSHLineLoop.cpp
@@ -12,7 +12,10 @@
  *
  */
 
-#include "GmshIO/GMSHLineLoop.h"
+#include <ostream>
+
+#include "GMSHLine.h"
+#include "GMSHLineLoop.h"
 
 namespace FileIO 
 {
@@ -24,8 +27,8 @@ GMSHLineLoop::GMSHLineLoop(bool is_sfc) :
 
 GMSHLineLoop::~GMSHLineLoop()
 {
-	const size_t n_lines (_lines.size());
-	for (size_t k(0); k<n_lines; k++) {
+	const std::size_t n_lines (_lines.size());
+	for (std::size_t k(0); k<n_lines; k++) {
 		delete _lines[k];
 	}
 }
@@ -35,14 +38,14 @@ void GMSHLineLoop::addLine(GMSHLine* line)
 	_lines.push_back(line);
 }
 
-void GMSHLineLoop::write(std::ostream &os, size_t line_offset, size_t sfc_offset) const
+void GMSHLineLoop::write(std::ostream &os, std::size_t line_offset, std::size_t sfc_offset) const
 {
-	const size_t n_lines (_lines.size());
-	for (size_t k(0); k<n_lines; k++) {
+	const std::size_t n_lines (_lines.size());
+	for (std::size_t k(0); k<n_lines; k++) {
 		(_lines[k])->write(os, line_offset+k);
 	}
 	os << "Line Loop(" << line_offset+n_lines << ") = {";
-	for (size_t k(0); k < n_lines - 1; k++)
+	for (std::size_t k(0); k < n_lines - 1; k++)
 		os << line_offset + k << ",";
 	os << line_offset + n_lines - 1 << "};\n";
 
diff --git a/FileIO/GmshIO/GMSHLineLoop.h b/FileIO/GmshIO/GMSHLineLoop.h
index 6ba80f3c81d2e35f41cda7ad40e2e382980c9a5a..2cf12a12ccb7079acb4ba225cb36661f133a1c2c 100644
--- a/FileIO/GmshIO/GMSHLineLoop.h
+++ b/FileIO/GmshIO/GMSHLineLoop.h
@@ -16,14 +16,15 @@
 #define GMSHLINELOOP_H_
 
 #include <vector>
-#include <ostream>
+#include <iosfwd>
 
-#include "GMSHLine.h"
 
 namespace FileIO 
 {
 namespace GMSH {
 
+class GMSHLine;
+
 class GMSHLineLoop {
 public:
 	GMSHLineLoop(bool is_sfc=false);
diff --git a/FileIO/Legacy/MeshIO.h b/FileIO/Legacy/MeshIO.h
index 2db272a441c4f81836c6bdf1dccd8cebac0ba348..62fe3c996ceec42122071c1c40456b19b4d39996 100644
--- a/FileIO/Legacy/MeshIO.h
+++ b/FileIO/Legacy/MeshIO.h
@@ -16,7 +16,7 @@
 #ifndef MESHIO_H_
 #define MESHIO_H_
 
-#include <iostream>
+#include <iosfwd>
 #include <string>
 #include <vector>
 #include <boost/optional.hpp>
diff --git a/FileIO/Legacy/OGSIOVer4.h b/FileIO/Legacy/OGSIOVer4.h
index c6b8363be3a277cff99b98c17ef8cab369e3b0cf..c2dc8368b3734169c96bee0d289d90c5b64e4fca 100644
--- a/FileIO/Legacy/OGSIOVer4.h
+++ b/FileIO/Legacy/OGSIOVer4.h
@@ -15,8 +15,6 @@
 #ifndef OGSIOVER4_H_
 #define OGSIOVER4_H_
 
-#include <fstream>
-#include <sstream>
 #include <string>
 #include <vector>
 
diff --git a/FileIO/MPI_IO/NodePartitionedMeshReader.h b/FileIO/MPI_IO/NodePartitionedMeshReader.h
index b713c6327116be4af707fa1dc9f9e70b0353e0cd..c59cdf1d44e718a9eb4ad8da5dd0e048d07c1d2a 100644
--- a/FileIO/MPI_IO/NodePartitionedMeshReader.h
+++ b/FileIO/MPI_IO/NodePartitionedMeshReader.h
@@ -14,7 +14,7 @@
 #ifndef NODE_PARTITIONED_MESH_READER_H
 #define NODE_PARTITIONED_MESH_READER_H
 
-#include <fstream>
+#include <iosfwd>
 #include <string>
 #include <vector>
 
diff --git a/FileIO/PetrelInterface.h b/FileIO/PetrelInterface.h
index cb2cbda1f258cfd57096791f7ced9952d5160c37..7139df11cff842f7f66032bea430afcb6edf41c1 100644
--- a/FileIO/PetrelInterface.h
+++ b/FileIO/PetrelInterface.h
@@ -18,7 +18,7 @@
 #ifndef PETRELIO_H_
 #define PETRELIO_H_
 
-#include <istream>
+#include <iosfwd>
 #include <list>
 #include <string>
 #include <vector>
diff --git a/FileIO/Writer.cpp b/FileIO/Writer.cpp
index ecc19ff0ad67f907f2ad5f429ff144df4bccf196..2afa139f9e12bcf56065e9369fb4994a80c3620c 100644
--- a/FileIO/Writer.cpp
+++ b/FileIO/Writer.cpp
@@ -15,6 +15,7 @@
 // ** INCLUDES **
 #include "Writer.h"
 
+#include <iostream>
 #include <fstream>
 #include <limits>
 
diff --git a/FileIO/Writer.h b/FileIO/Writer.h
index 378f84b73d297d6d264899078e1bf67058e835b7..15d876d5ce137bf07e724309c47d644d3a052f62 100644
--- a/FileIO/Writer.h
+++ b/FileIO/Writer.h
@@ -16,7 +16,6 @@
 #define WRITER_H
 
 #include <string>
-#include <iostream>
 #include <sstream>
 
 namespace FileIO
diff --git a/GeoLib/Color.cpp b/GeoLib/Color.cpp
index 26bc383a9e09a8bd1d764336682e17fb3aff25f6..a3319f015344ab7d555a5b0648d20e7a3830a5b3 100644
--- a/GeoLib/Color.cpp
+++ b/GeoLib/Color.cpp
@@ -13,10 +13,10 @@
  */
 
 #include <iostream>
+#include <fstream>
 #include <sstream>
 
-// ThirdParty/logog
-#include "logog/include/logog.hpp"
+#include <logog/include/logog.hpp>
 
 #include "Color.h"
 #include "StringTools.h"
@@ -34,16 +34,16 @@ Color* getRandomColor()
 
 int readColorLookupTable(std::map<std::string, Color*> &colors, const std::string &filename)
 {
-	std::string id = "", line = "";
 
 	std::ifstream in( filename.c_str() );
 
-	if (!in.is_open())
+	if (!in)
 	{
 		WARN("Color::readLookupTable() - Could not open file %s.", filename.c_str());
 		return 0;
 	}
 
+	std::string id = "", line = "";
 	while ( getline(in, line) )
 	{
 		std::list<std::string> fields = BaseLib::splitString(line, '\t');
@@ -53,11 +53,11 @@ int readColorLookupTable(std::map<std::string, Color*> &colors, const std::strin
 			Color *c = new Color();
 			id = fields.front();
 			fields.pop_front();
-			(*c)[0] = atoi(fields.front().c_str());
+			(*c)[0] = std::atoi(fields.front().c_str());
 			fields.pop_front();
-			(*c)[1] = atoi(fields.front().c_str());
+			(*c)[1] = std::atoi(fields.front().c_str());
 			fields.pop_front();
-			(*c)[2] = atoi(fields.front().c_str());
+			(*c)[2] = std::atoi(fields.front().c_str());
 			colors.insert(std::pair<std::string, Color*>(id, c));
 		}
 	}
diff --git a/GeoLib/Color.h b/GeoLib/Color.h
index 1b52611642da63ea4aa1821ef72b0f208421c456..6a7ef328264cb6a20a8660c0088b8f763e028afc 100644
--- a/GeoLib/Color.h
+++ b/GeoLib/Color.h
@@ -18,10 +18,8 @@
 
 #include "TemplatePoint.h"
 
-#include <cstdlib>
-#include <fstream>
-#include <list>
 #include <map>
+#include <string>
 
 namespace GeoLib
 {
diff --git a/MathLib/LinAlg/Lis/LisMatrix.cpp b/MathLib/LinAlg/Lis/LisMatrix.cpp
index ae264c15ac44109b3929be9cb7c0845780e0b235..9762ae805cd145c0c366614ba41b132712fc365a 100644
--- a/MathLib/LinAlg/Lis/LisMatrix.cpp
+++ b/MathLib/LinAlg/Lis/LisMatrix.cpp
@@ -14,6 +14,7 @@
 
 #include "LisMatrix.h"
 
+#include <cmath>
 #include <stdexcept>
 
 #include "LisVector.h"
diff --git a/MathLib/LinAlg/Lis/LisMatrix.h b/MathLib/LinAlg/Lis/LisMatrix.h
index 559d7018ac6c7739e9eff51ff8d20ed5e5846af0..aea7ea7f5b76747ac6fe6f5022823017116a2ce2 100644
--- a/MathLib/LinAlg/Lis/LisMatrix.h
+++ b/MathLib/LinAlg/Lis/LisMatrix.h
@@ -15,17 +15,16 @@
 #ifndef LISMATRIX_H_
 #define LISMATRIX_H_
 
-#include <iostream>
-#include <cmath>
+#include <string>
 #include <vector>
 
 #include "MathLib/LinAlg/RowColumnIndices.h"
-#include "MathLib/LinAlg/Lis/LisCheck.h"
 #include "MathLib/LinAlg/SetMatrixSparsity.h"
 
 #include "lis.h"
 
 #include "LisOption.h"
+#include "LisCheck.h"
 
 namespace MathLib
 {
diff --git a/MathLib/LinAlg/Lis/LisVector.h b/MathLib/LinAlg/Lis/LisVector.h
index 3afea331b1f00bc10a05fc54a7f91cf945e37088..da8a9d8c94a25252411e8b0f02bb7c7eeb207204 100644
--- a/MathLib/LinAlg/Lis/LisVector.h
+++ b/MathLib/LinAlg/Lis/LisVector.h
@@ -15,7 +15,7 @@
 #ifndef LISVECTOR_H_
 #define LISVECTOR_H_
 
-#include <iostream>
+#include <string>
 #include <vector>
 
 #include "lis.h"
diff --git a/MathLib/LinAlg/Sparse/CRSMatrix.h b/MathLib/LinAlg/Sparse/CRSMatrix.h
index 92fbc860901577c8fae9e83583c273b84b1e4d9f..ba04ec303b94e5895e54e6229531ba7f544a33ac 100644
--- a/MathLib/LinAlg/Sparse/CRSMatrix.h
+++ b/MathLib/LinAlg/Sparse/CRSMatrix.h
@@ -15,10 +15,10 @@
 #ifndef CRSMATRIX_H
 #define CRSMATRIX_H
 
-#include <string>
-#include <fstream>
-#include <iostream>
 #include <cassert>
+#include <fstream>
+#include <iosfwd>
+#include <string>
 
 // MathLib
 #include "SparseMatrixBase.h"
diff --git a/MathLib/Vector3.h b/MathLib/Vector3.h
index e8e29efe9417fdaccaa9f1a73d55f69bd10f7dfe..381aeb6c6e5a798b35a736c1dc2d5ddb1a7c11a5 100644
--- a/MathLib/Vector3.h
+++ b/MathLib/Vector3.h
@@ -17,15 +17,11 @@
 #ifndef VECTOR3_H
 #define VECTOR3_H
 
-// MathLib
-#include "TemplatePoint.h"
+#include <cmath>
 
-// MathLib
+#include "TemplatePoint.h"
 #include "MathTools.h"
 
-#include <cmath>
-#include <iostream>
-
 namespace MathLib
 {
 /**
diff --git a/MathLib/vector_io.h b/MathLib/vector_io.h
index 175e8a919e0dddf3c0c1b81f847278b32bd8a5f6..b1ac3ba3c96d85c24bcd774baf112830e7b6adb6 100644
--- a/MathLib/vector_io.h
+++ b/MathLib/vector_io.h
@@ -15,7 +15,6 @@
 #ifndef VECTOR_IO_H
 #define VECTOR_IO_H
 
-#include <iostream>
 #include <fstream>
 #include <string>
 
diff --git a/MeshLib/Location.cpp b/MeshLib/Location.cpp
index 19d0d6cc49fe3f03fa361d659e8049b6a859c961..5f53d24e16264840e079cf5b9dc632d531ef3a7c 100644
--- a/MeshLib/Location.cpp
+++ b/MeshLib/Location.cpp
@@ -8,6 +8,7 @@
  */
 
 #include "Location.h"
+#include <ostream>
 
 namespace MeshLib
 {
diff --git a/MeshLib/Location.h b/MeshLib/Location.h
index 60f631eeba71e55a0660ecf2f0006fdf566064cf..e874b2d57bf143f7da2763d61135b29d8f8a655d 100644
--- a/MeshLib/Location.h
+++ b/MeshLib/Location.h
@@ -10,7 +10,7 @@
  *
  */
 
-#include <iostream>
+#include <iosfwd>
 
 #ifndef LOCATION_H_
 #define LOCATION_H_
diff --git a/MeshLib/PropertyVector.h b/MeshLib/PropertyVector.h
index fe0639160888e9a502e0f80117191ff8229507d5..ad6c51fae870652a816b2e24f25084ba9aa22f8d 100644
--- a/MeshLib/PropertyVector.h
+++ b/MeshLib/PropertyVector.h
@@ -12,7 +12,7 @@
 #define PROPERTYVECTOR_H_
 
 #include <algorithm>
-#include <iostream>
+#include <iosfwd>
 #include <iterator>
 #include <vector>
 #include <type_traits>
diff --git a/NumLib/Fem/CoordinatesMapping/NaturalCoordinatesMapping-impl.h b/NumLib/Fem/CoordinatesMapping/NaturalCoordinatesMapping-impl.h
index 233c07b578badfdb52d7878104a6380572cc63a2..186f3538edd1fab0e52f156c5960c3f69ec9844c 100644
--- a/NumLib/Fem/CoordinatesMapping/NaturalCoordinatesMapping-impl.h
+++ b/NumLib/Fem/CoordinatesMapping/NaturalCoordinatesMapping-impl.h
@@ -11,12 +11,10 @@
  */
 
 
-#include <iostream>
 #include <cassert>
 
-#include "logog/include/logog.hpp"
+#include <logog/include/logog.hpp>
 
-#include "MeshLib/Node.h"
 #include "MeshLib/ElementCoordinatesMappingLocal.h"
 #include "MeshLib/CoordinateSystem.h"
 
diff --git a/NumLib/Fem/CoordinatesMapping/ShapeMatrices.h b/NumLib/Fem/CoordinatesMapping/ShapeMatrices.h
index 3632e5bd1a36a6783d2c047299033396108bc78f..c1a788535f0195e5253e9bb26ebc08d593c1997d 100644
--- a/NumLib/Fem/CoordinatesMapping/ShapeMatrices.h
+++ b/NumLib/Fem/CoordinatesMapping/ShapeMatrices.h
@@ -13,7 +13,7 @@
 #ifndef SHAPEMATRICES_H_
 #define SHAPEMATRICES_H_
 
-#include <iostream>
+#include <ostream>
 
 namespace NumLib
 {
diff --git a/Tests/FileIO/TestGLIReader.cpp b/Tests/FileIO/TestGLIReader.cpp
index 4681bde76e98f70f4ab48d1217513e6731b8b92e..5520274dc6ffdfb57efccf1c0e9fdc6e7b5f454e 100644
--- a/Tests/FileIO/TestGLIReader.cpp
+++ b/Tests/FileIO/TestGLIReader.cpp
@@ -10,6 +10,8 @@
  *
  */
 
+#include <fstream>
+
 #include <boost/filesystem.hpp>
 
 #include "gtest/gtest.h"