diff options
author | Eelco Dolstra <e.dolstra@tudelft.nl> | 2010-10-04 17:55:38 +0000 |
---|---|---|
committer | Eelco Dolstra <e.dolstra@tudelft.nl> | 2010-10-04 17:55:38 +0000 |
commit | 705868a8a96a10f70e629433cfffc2d5cd2703eb (patch) | |
tree | f5d17323d9719ea3d0e4b00533a7c23df508f216 /src/libexpr | |
parent | 95f4f2cf6102f95abf6948d74907c44c3540eddd (diff) | |
download | guix-705868a8a96a10f70e629433cfffc2d5cd2703eb.tar.gz |
* 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.hh | 4 | ||||
-rw-r--r-- | src/libexpr/eval.hh | 4 | ||||
-rw-r--r-- | src/libexpr/get-drvs.hh | 4 | ||||
-rw-r--r-- | src/libexpr/nixexpr.hh | 4 | ||||
-rw-r--r-- | src/libexpr/parser.y | 10 | ||||
-rw-r--r-- | src/libexpr/primops.cc | 2 | ||||
-rw-r--r-- | src/libexpr/value-to-xml.hh | 6 |
7 files changed, 16 insertions, 18 deletions
diff --git a/src/libexpr/attr-path.hh b/src/libexpr/attr-path.hh index 33587e5ede..b4f5c29d2e 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 8eec94fcbc..501ac93d01 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 ca7d980027..7b96decf4a 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 b1043a3268..1d03220f64 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 7236bab19c..b0c54339b0 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 68f66acc74..973670e683 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 0c6de3a8b2..3ebc989ffa 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, |