diff --git a/src/libstore/build.cc b/src/libstore/build.cc
index ada1cf8ec4dc2722485431b6e65e1aa52d6602e2..c82f607486902ef43cd632a9bd42691008b72ea5 100644
--- a/src/libstore/build.cc
+++ b/src/libstore/build.cc
@@ -23,8 +23,8 @@
 #include <chrono>
 #include <regex>
 #include <queue>
+#include <climits>
 
-#include <limits.h>
 #include <sys/time.h>
 #include <sys/wait.h>
 #include <sys/types.h>
diff --git a/src/libutil/util.cc b/src/libutil/util.cc
index 34c1d96dcb87c19226ab092b4a0869b9e11d7e58..79716c5a7b8ed813afbf43a434e2709f3887e47b 100644
--- a/src/libutil/util.cc
+++ b/src/libutil/util.cc
@@ -10,6 +10,7 @@
 #include <cstdio>
 #include <cstdlib>
 #include <cstring>
+#include <climits>
 #include <iostream>
 #include <sstream>
 #include <thread>
@@ -17,7 +18,6 @@
 
 #include <fcntl.h>
 #include <grp.h>
-#include <limits.h>
 #include <pwd.h>
 #include <sys/ioctl.h>
 #include <sys/types.h>
diff --git a/src/libutil/xml-writer.cc b/src/libutil/xml-writer.cc
index e5cc2e9fc719befd3c56339368f689d6aa0522d8..68857e34dc11b5f2cceb6fb715fa16a48a374031 100644
--- a/src/libutil/xml-writer.cc
+++ b/src/libutil/xml-writer.cc
@@ -1,10 +1,10 @@
-#include <assert.h>
+#include <cassert>
 
 #include "xml-writer.hh"
 
 
 namespace nix {
-    
+
 
 XMLWriter::XMLWriter(bool indent, std::ostream & output)
     : output(output), indent(indent)
diff --git a/src/nix-daemon/nix-daemon.cc b/src/nix-daemon/nix-daemon.cc
index da17ddcba07c8f34f4a94b0afa7d600a553f7d46..65ae88fafe46b11aee50dd97c2fc822b92f3c59c 100644
--- a/src/nix-daemon/nix-daemon.cc
+++ b/src/nix-daemon/nix-daemon.cc
@@ -10,8 +10,9 @@
 #include "daemon.hh"
 
 #include <algorithm>
-
+#include <climits>
 #include <cstring>
+
 #include <unistd.h>
 #include <signal.h>
 #include <sys/types.h>
@@ -23,7 +24,6 @@
 #include <pwd.h>
 #include <grp.h>
 #include <fcntl.h>
-#include <limits.h>
 
 #if __APPLE__ || __FreeBSD__
 #include <sys/ucred.h>