Fix moves that accidentally copy anyway

This commit is contained in:
Jacek Galowicz 2023-10-16 21:47:33 +01:00
parent aa4f41d796
commit abf7df2b37
4 changed files with 5 additions and 5 deletions

View file

@ -539,7 +539,7 @@ EvalState::EvalState(
auto r = resolveSearchPathPath(i.path); auto r = resolveSearchPathPath(i.path);
if (!r) continue; if (!r) continue;
auto path = *std::move(r); auto path = std::move(*r);
if (store->isInStore(path)) { if (store->isInStore(path)) {
try { try {
@ -1035,7 +1035,7 @@ std::string EvalState::mkOutputStringRaw(
/* In practice, this is testing for the case of CA derivations, or /* In practice, this is testing for the case of CA derivations, or
dynamic derivations. */ dynamic derivations. */
return optStaticOutputPath return optStaticOutputPath
? store->printStorePath(*std::move(optStaticOutputPath)) ? store->printStorePath(std::move(*optStaticOutputPath))
/* Downstream we would substitute this for an actual path once /* Downstream we would substitute this for an actual path once
we build the floating CA derivation */ we build the floating CA derivation */
: DownstreamPlaceholder::fromSingleDerivedPathBuilt(b, xpSettings).render(); : DownstreamPlaceholder::fromSingleDerivedPathBuilt(b, xpSettings).render();

View file

@ -561,7 +561,7 @@ void DerivationGoal::inputsRealised()
attempt = fullDrv.tryResolve(worker.store); attempt = fullDrv.tryResolve(worker.store);
} }
assert(attempt); assert(attempt);
Derivation drvResolved { *std::move(attempt) }; Derivation drvResolved { std::move(*attempt) };
auto pathResolved = writeDerivation(worker.store, drvResolved); auto pathResolved = writeDerivation(worker.store, drvResolved);

View file

@ -2521,7 +2521,7 @@ SingleDrvOutputs LocalDerivationGoal::registerOutputs()
ValidPathInfo newInfo0 { ValidPathInfo newInfo0 {
worker.store, worker.store,
outputPathName(drv->name, outputName), outputPathName(drv->name, outputName),
*std::move(optCA), std::move(*optCA),
Hash::dummy, Hash::dummy,
}; };
if (*scratchPath != newInfo0.path) { if (*scratchPath != newInfo0.path) {

View file

@ -63,7 +63,7 @@ std::optional<std::pair<std::string_view, ExtendedOutputsSpec>> ExtendedOutputsS
auto specOpt = OutputsSpec::parseOpt(s.substr(found + 1)); auto specOpt = OutputsSpec::parseOpt(s.substr(found + 1));
if (!specOpt) if (!specOpt)
return std::nullopt; return std::nullopt;
return std::pair { s.substr(0, found), ExtendedOutputsSpec::Explicit { *std::move(specOpt) } }; return std::pair { s.substr(0, found), ExtendedOutputsSpec::Explicit { std::move(*specOpt) } };
} }