about summary refs log tree commit diff
path: root/src/libexpr/primops.cc
diff options
context:
space:
mode:
authorEelco Dolstra <e.dolstra@tudelft.nl>2010-10-24T14·20+0000
committerEelco Dolstra <e.dolstra@tudelft.nl>2010-10-24T14·20+0000
commit2dc6d5094183edee523a48d449eab1a376e839a2 (patch)
tree0a5268947074eff0be7428d891817d60a193c28f /src/libexpr/primops.cc
parent0b305c534f989dbc3645ff03e070b0e4665fdeb7 (diff)
* Don't create thunks for variable lookups (if possible). This
  significantly reduces the number of values allocated (e.g. from 8.7m
  to 4.9m for the Bittorrent test).

Diffstat (limited to 'src/libexpr/primops.cc')
-rw-r--r--src/libexpr/primops.cc2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/libexpr/primops.cc b/src/libexpr/primops.cc
index 20b8395088d7..3e32dd3ffc0e 100644
--- a/src/libexpr/primops.cc
+++ b/src/libexpr/primops.cc
@@ -1070,7 +1070,7 @@ void EvalState::createBaseEnv()
     /* Add a wrapper around the derivation primop that computes the
        `drvPath' and `outPath' attributes lazily. */
     string s = "attrs: let res = derivationStrict attrs; in attrs // { drvPath = res.drvPath; outPath = res.outPath; type = \"derivation\"; }";
-    mkThunk(v, baseEnv, parseExprFromString(*this, s, "/"));
+    mkThunk_(v, parseExprFromString(*this, s, "/"));
     addConstant("derivation", v);
 
     // Paths