aboutsummaryrefslogtreecommitdiff
path: root/src/libexpr
diff options
context:
space:
mode:
authorEelco Dolstra <e.dolstra@tudelft.nl>2010-10-04 17:55:38 +0000
committerEelco Dolstra <e.dolstra@tudelft.nl>2010-10-04 17:55:38 +0000
commit705868a8a96a10f70e629433cfffc2d5cd2703eb (patch)
treef5d17323d9719ea3d0e4b00533a7c23df508f216 /src/libexpr
parent95f4f2cf6102f95abf6948d74907c44c3540eddd (diff)
* Make sure that config.h is included before the system headers,
because it defines _FILE_OFFSET_BITS. Without this, on OpenSolaris the system headers define it to be 32, and then the 32-bit stat() ends up being called with a 64-bit "struct stat", or vice versa. This also ensures that we get 64-bit file sizes everywhere. * Remove the redundant call to stat() in parseExprFromFile(). The file cannot be a symlink because that's the exit condition of the loop before.
Diffstat (limited to 'src/libexpr')
-rw-r--r--src/libexpr/attr-path.hh4
-rw-r--r--src/libexpr/eval.hh4
-rw-r--r--src/libexpr/get-drvs.hh4
-rw-r--r--src/libexpr/nixexpr.hh4
-rw-r--r--src/libexpr/parser.y10
-rw-r--r--src/libexpr/primops.cc2
-rw-r--r--src/libexpr/value-to-xml.hh6
7 files changed, 16 insertions, 18 deletions
diff --git a/src/libexpr/attr-path.hh b/src/libexpr/attr-path.hh
index 33587e5ed..b4f5c29d2 100644
--- a/src/libexpr/attr-path.hh
+++ b/src/libexpr/attr-path.hh
@@ -1,11 +1,11 @@
#ifndef __ATTR_PATH_H
#define __ATTR_PATH_H
+#include "eval.hh"
+
#include <string>
#include <map>
-#include "eval.hh"
-
namespace nix {
diff --git a/src/libexpr/eval.hh b/src/libexpr/eval.hh
index 8eec94fcb..501ac93d0 100644
--- a/src/libexpr/eval.hh
+++ b/src/libexpr/eval.hh
@@ -1,12 +1,12 @@
#ifndef __EVAL_H
#define __EVAL_H
-#include <map>
-
#include "nixexpr.hh"
#include "symbol-table.hh"
#include "hash.hh"
+#include <map>
+
namespace nix {
diff --git a/src/libexpr/get-drvs.hh b/src/libexpr/get-drvs.hh
index ca7d98002..7b96decf4 100644
--- a/src/libexpr/get-drvs.hh
+++ b/src/libexpr/get-drvs.hh
@@ -1,13 +1,13 @@
#ifndef __GET_DRVS_H
#define __GET_DRVS_H
+#include "eval.hh"
+
#include <string>
#include <map>
#include <boost/shared_ptr.hpp>
-#include "eval.hh"
-
namespace nix {
diff --git a/src/libexpr/nixexpr.hh b/src/libexpr/nixexpr.hh
index b1043a326..1d03220f6 100644
--- a/src/libexpr/nixexpr.hh
+++ b/src/libexpr/nixexpr.hh
@@ -1,10 +1,10 @@
#ifndef __NIXEXPR_H
#define __NIXEXPR_H
-#include <map>
-
#include "symbol-table.hh"
+#include <map>
+
namespace nix {
diff --git a/src/libexpr/parser.y b/src/libexpr/parser.y
index 7236bab19..b0c54339b 100644
--- a/src/libexpr/parser.y
+++ b/src/libexpr/parser.y
@@ -15,10 +15,6 @@
stuff. So allow it to be excluded. */
#ifndef BISON_HEADER_HACK
#define BISON_HEADER_HACK
-
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
#include "util.hh"
@@ -28,6 +24,10 @@
#include "lexer-tab.hh"
#define YYSTYPE YYSTYPE // workaround a bug in Bison 2.4
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+
using namespace nix;
@@ -480,8 +480,6 @@ Expr * parseExprFromFile(EvalState & state, Path path)
}
/* If `path' refers to a directory, append `/default.nix'. */
- if (stat(path.c_str(), &st))
- throw SysError(format("getting status of `%1%'") % path);
if (S_ISDIR(st.st_mode))
path = canonPath(path + "/default.nix");
diff --git a/src/libexpr/primops.cc b/src/libexpr/primops.cc
index 68f66acc7..973670e68 100644
--- a/src/libexpr/primops.cc
+++ b/src/libexpr/primops.cc
@@ -1,5 +1,5 @@
-#include "misc.hh"
#include "eval.hh"
+#include "misc.hh"
#include "globals.hh"
#include "store-api.hh"
#include "util.hh"
diff --git a/src/libexpr/value-to-xml.hh b/src/libexpr/value-to-xml.hh
index 0c6de3a8b..3ebc989ff 100644
--- a/src/libexpr/value-to-xml.hh
+++ b/src/libexpr/value-to-xml.hh
@@ -1,12 +1,12 @@
#ifndef __VALUE_TO_XML_H
#define __VALUE_TO_XML_H
-#include <string>
-#include <map>
-
#include "nixexpr.hh"
#include "eval.hh"
+#include <string>
+#include <map>
+
namespace nix {
void printValueAsXML(EvalState & state, bool strict, bool location,