about summary refs log tree commit diff
path: root/src/eval.cc
diff options
context:
space:
mode:
Diffstat (limited to 'src/eval.cc')
-rw-r--r--src/eval.cc6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/eval.cc b/src/eval.cc
index 3f8aa7b2326b..7cb13d9ccaae 100644
--- a/src/eval.cc
+++ b/src/eval.cc
@@ -279,7 +279,7 @@ Expr evalValue(Expr e)
         string fn = queryValuePath(evalHash(e2));
         ATerm e3 = ATreadFromNamedFile(fn.c_str());
         if (!e3) throw Error("reading aterm from " + fn);
-        return e3;
+        return evalValue(e3);
     }
 
     /* Execution primitive. */
@@ -298,8 +298,8 @@ Expr evalValue(Expr e)
         evalArgs(args, argsNF, env);
 
         Hash sourceHash = hashExpr(
-            ATmake("Exec(Str(<str>), Hash(<str>), [])",
-                buildPlatform.c_str(), ((string) prog).c_str()));
+            ATmake("Exec(Str(<str>), Hash(<str>), <term>)",
+                buildPlatform.c_str(), ((string) prog).c_str(), argsNF));
 
         /* Do we know a normal form for sourceHash? */
         Hash targetHash;