aboutsummaryrefslogtreecommitdiff
path: root/src/nix
diff options
context:
space:
mode:
authorEelco Dolstra <edolstra@gmail.com>2020-02-07 14:08:24 +0100
committerEelco Dolstra <edolstra@gmail.com>2020-02-07 14:08:24 +0100
commit0b013a54dc570395bed887369f8dd622b8ce337b (patch)
tree2c5f3b4910cfe5fac935c10531b82fc226348271 /src/nix
parent84a3a5c3cdc786a8848abf5b9096f40991205e72 (diff)
findAlongAttrPath(): Return position
Diffstat (limited to 'src/nix')
-rw-r--r--src/nix/flake.cc2
-rw-r--r--src/nix/installables.cc6
-rw-r--r--src/nix/upgrade-nix.cc2
3 files changed, 5 insertions, 5 deletions
diff --git a/src/nix/flake.cc b/src/nix/flake.cc
index 3b473de73..8945d8829 100644
--- a/src/nix/flake.cc
+++ b/src/nix/flake.cc
@@ -348,7 +348,7 @@ struct CmdFlakeCheck : FlakeCommand
Activity act(*logger, lvlChatty, actUnknown,
fmt("checking NixOS configuration '%s'", attrPath));
Bindings & bindings(*state->allocBindings(0));
- auto vToplevel = findAlongAttrPath(*state, "config.system.build.toplevel", bindings, v);
+ auto vToplevel = findAlongAttrPath(*state, "config.system.build.toplevel", bindings, v).first;
state->forceAttrs(*vToplevel, pos);
if (!state->isDerivation(*vToplevel))
throw Error("attribute 'config.system.build.toplevel' is not a derivation");
diff --git a/src/nix/installables.cc b/src/nix/installables.cc
index 752a1466f..fc9c8ab45 100644
--- a/src/nix/installables.cc
+++ b/src/nix/installables.cc
@@ -250,7 +250,7 @@ struct InstallableAttrPath : InstallableValue
Value * toValue(EvalState & state) override
{
- auto vRes = findAlongAttrPath(state, attrPath, *cmd.getAutoArgs(state), *v);
+ auto vRes = findAlongAttrPath(state, attrPath, *cmd.getAutoArgs(state), *v).first;
state.forceValue(*vRes);
return vRes;
}
@@ -360,7 +360,7 @@ std::tuple<std::string, FlakeRef, flake::EvalCache::Derivation> InstallableFlake
vOutputs = getFlakeOutputs(*state, lockedFlake);
try {
- auto * v = findAlongAttrPath(*state, attrPath, *emptyArgs, *vOutputs);
+ auto * v = findAlongAttrPath(*state, attrPath, *emptyArgs, *vOutputs).first;
state->forceValue(*v);
auto drvInfo = getDerivation(*state, *v, false);
@@ -401,7 +401,7 @@ Value * InstallableFlake::toValue(EvalState & state)
for (auto & attrPath : getActualAttrPaths()) {
try {
- auto * v = findAlongAttrPath(state, attrPath, *emptyArgs, *vOutputs);
+ auto * v = findAlongAttrPath(state, attrPath, *emptyArgs, *vOutputs).first;
state.forceValue(*v);
return v;
} catch (AttrPathNotFound & e) {
diff --git a/src/nix/upgrade-nix.cc b/src/nix/upgrade-nix.cc
index 87f1f9d1b..c05c29517 100644
--- a/src/nix/upgrade-nix.cc
+++ b/src/nix/upgrade-nix.cc
@@ -145,7 +145,7 @@ struct CmdUpgradeNix : MixDryRun, StoreCommand
auto v = state->allocValue();
state->eval(state->parseExprFromString(*res.data, "/no-such-path"), *v);
Bindings & bindings(*state->allocBindings(0));
- auto v2 = findAlongAttrPath(*state, settings.thisSystem, bindings, *v);
+ auto v2 = findAlongAttrPath(*state, settings.thisSystem, bindings, *v).first;
return store->parseStorePath(state->forceString(*v2));
}