From 0c95776c3efdc63c4b957823d4e51d851a64ed84 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Thu, 18 Jan 2018 16:37:39 +0100 Subject: Don't define builtins.{currentSystem,currentTime} in pure mode This makes it easier to provide a default, e.g. system = builtins.currentSystem or "x86_64-linux"; --- src/libexpr/primops.cc | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) (limited to 'src/libexpr') diff --git a/src/libexpr/primops.cc b/src/libexpr/primops.cc index e90a1da25..975f0e830 100644 --- a/src/libexpr/primops.cc +++ b/src/libexpr/primops.cc @@ -1997,16 +1997,12 @@ void EvalState::createBaseEnv() addConstant(name, v); }; - if (settings.pureEval) - addPurityError("__currentTime"); - else { + if (!settings.pureEval) { mkInt(v, time(0)); addConstant("__currentTime", v); } - if (settings.pureEval) - addPurityError("__currentSystem"); - else { + if (!settings.pureEval) { mkString(v, settings.thisSystem); addConstant("__currentSystem", v); } -- cgit v1.2.3