aboutsummaryrefslogtreecommitdiff
path: root/paludis/resolver/sanitised_dependencies.cc
diff options
context:
space:
mode:
authorAvatar Ciaran McCreesh <ciaran.mccreesh@googlemail.com> 2009-10-28 20:22:31 +0000
committerAvatar Ciaran McCreesh <ciaran.mccreesh@googlemail.com> 2009-10-28 20:22:31 +0000
commit932596077ee44f41f3c095509b56c6ea9860d7dc (patch)
tree959278f2a3db8c3e58f19274efe8d4b760d1dda0 /paludis/resolver/sanitised_dependencies.cc
parentab78efe8b9fc9f7be998e9b7c0cc117d94808280 (diff)
downloadpaludis-932596077ee44f41f3c095509b56c6ea9860d7dc.tar.gz
paludis-932596077ee44f41f3c095509b56c6ea9860d7dc.tar.xz
Also rewrite targets.
Diffstat (limited to 'paludis/resolver/sanitised_dependencies.cc')
-rw-r--r--paludis/resolver/sanitised_dependencies.cc12
1 files changed, 8 insertions, 4 deletions
diff --git a/paludis/resolver/sanitised_dependencies.cc b/paludis/resolver/sanitised_dependencies.cc
index ef6d0c5c6..f648581e6 100644
--- a/paludis/resolver/sanitised_dependencies.cc
+++ b/paludis/resolver/sanitised_dependencies.cc
@@ -20,12 +20,14 @@
#include <paludis/resolver/sanitised_dependencies.hh>
#include <paludis/resolver/resolver.hh>
#include <paludis/resolver/resolvent.hh>
+#include <paludis/resolver/spec_rewriter.hh>
#include <paludis/util/make_named_values.hh>
#include <paludis/util/save.hh>
#include <paludis/util/stringify.hh>
#include <paludis/util/options.hh>
#include <paludis/util/join.hh>
#include <paludis/util/wrapped_forward_iterator-impl.hh>
+#include <paludis/util/make_shared_copy.hh>
#include <paludis/spec_tree.hh>
#include <paludis/slot_requirement.hh>
#include <paludis/metadata_key.hh>
@@ -124,9 +126,10 @@ namespace
{
seen_any = true;
- std::tr1::shared_ptr<DependencySpecTree> if_rewritten(resolver.rewrite_if_special(spec, our_resolvent));
+ const std::tr1::shared_ptr<const RewrittenSpec> if_rewritten(resolver.rewrite_if_special(spec,
+ make_shared_copy(our_resolvent)));
if (if_rewritten)
- if_rewritten->root()->accept(*this);
+ if_rewritten->as_spec_tree()->root()->accept(*this);
else
{
if (active_sublist)
@@ -313,9 +316,10 @@ namespace
void add(const SanitisedDependency & dep)
{
- std::tr1::shared_ptr<DependencySpecTree> if_rewritten(resolver.rewrite_if_special(dep.spec(), our_resolvent));
+ const std::tr1::shared_ptr<const RewrittenSpec> if_rewritten(resolver.rewrite_if_special(dep.spec(),
+ make_shared_copy(our_resolvent)));
if (if_rewritten)
- if_rewritten->root()->accept(*this);
+ if_rewritten->as_spec_tree()->root()->accept(*this);
else
sanitised_dependencies.add(dep);
}