aboutsummaryrefslogtreecommitdiff
path: root/src/libstore/misc.cc
diff options
context:
space:
mode:
authorJohn Ericson <John.Ericson@Obsidian.Systems>2023-01-15 15:16:14 -0500
committerJohn Ericson <John.Ericson@Obsidian.Systems>2023-01-15 15:16:14 -0500
commitf419ab48e6394838097f158265ac3cc531ee7958 (patch)
tree4175ea67fe1769f278cf53d2406669158eb43b92 /src/libstore/misc.cc
parent2e41ae9f93af0be2c778dda97e0ee9544a8aca1f (diff)
Try to fix build failure
Failure: https://hydra.nixos.org/build/205357257/nixlog/1 The problem seems to be trying to `std::visit` a derived class of `std::variant`. Per https://stackoverflow.com/questions/63616709/incomplete-type-stdvariant-used-in-nested-name-specifier certain C++ standard library implementations allow this, but others do not. The solution is simply to call the `raw` method, which upcasts the reference back to the `std::variant`.
Diffstat (limited to 'src/libstore/misc.cc')
-rw-r--r--src/libstore/misc.cc2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/libstore/misc.cc b/src/libstore/misc.cc
index 5758c3d93..b28768459 100644
--- a/src/libstore/misc.cc
+++ b/src/libstore/misc.cc
@@ -319,7 +319,7 @@ OutputPathMap resolveDerivedPath(Store & store, const DerivedPath::Built & bfd,
[&](const OutputsSpec::Names & names) {
return static_cast<std::set<std::string>>(names);
},
- }, bfd.outputs);
+ }, bfd.outputs.raw());
for (auto & output : outputNames) {
auto outputHash = get(outputHashes, output);
if (!outputHash)