aboutsummaryrefslogtreecommitdiff
path: root/src/libexpr
diff options
context:
space:
mode:
Diffstat (limited to 'src/libexpr')
-rw-r--r--src/libexpr/primops.cc7
1 files changed, 4 insertions, 3 deletions
diff --git a/src/libexpr/primops.cc b/src/libexpr/primops.cc
index 989a68682..dce56c9a2 100644
--- a/src/libexpr/primops.cc
+++ b/src/libexpr/primops.cc
@@ -590,10 +590,11 @@ static Expr prim_toFile(EvalState & state, const ATermVector & args)
PathSet refs;
for (PathSet::iterator i = context.begin(); i != context.end(); ++i) {
- if (isDerivation(*i))
+ Path path = *i;
+ if (path.at(0) == '=') path = string(path, 1);
+ if (isDerivation(path))
throw EvalError(format("in `toFile': the file `%1%' cannot refer to derivation outputs") % name);
- /* !!! */
- refs.insert(*i);
+ refs.insert(path);
}
Path storePath = readOnlyMode