diff options
author | Eelco Dolstra <edolstra@gmail.com> | 2020-02-07 14:08:24 +0100 |
---|---|---|
committer | Eelco Dolstra <edolstra@gmail.com> | 2020-02-07 14:08:24 +0100 |
commit | 0b013a54dc570395bed887369f8dd622b8ce337b (patch) | |
tree | 2c5f3b4910cfe5fac935c10531b82fc226348271 /src/nix | |
parent | 84a3a5c3cdc786a8848abf5b9096f40991205e72 (diff) |
findAlongAttrPath(): Return position
Diffstat (limited to 'src/nix')
-rw-r--r-- | src/nix/flake.cc | 2 | ||||
-rw-r--r-- | src/nix/installables.cc | 6 | ||||
-rw-r--r-- | src/nix/upgrade-nix.cc | 2 |
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)); } |