From 0342dc2fcdd78ef28a4e59d84193a3807068d726 Mon Sep 17 00:00:00 2001 From: Boris Kolpackov Date: Mon, 11 Apr 2016 07:57:19 +0200 Subject: New configuration logic, iteration 1 --- build2/scope.cxx | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) (limited to 'build2/scope.cxx') diff --git a/build2/scope.cxx b/build2/scope.cxx index 75652a2..19f3b56 100644 --- a/build2/scope.cxx +++ b/build2/scope.cxx @@ -27,18 +27,26 @@ namespace build2 ++d; if (f) - if (auto l = s->target_vars.find (*tt, *tn, var)) + { + lookup l (s->target_vars.find (*tt, *tn, var)); + + if (l.defined ()) return make_pair (move (l), d); + } ++d; if (f && gt != nullptr) - if (auto l = s->target_vars.find (*gt, *gn, var)) + { + lookup l (s->target_vars.find (*gt, *gn, var)); + + if (l.defined ()) return make_pair (move (l), d); + } } ++d; - if (auto r = s->vars.find (var)) - return make_pair (lookup (r, &s->vars), d); + if (const value* v = s->vars.find (var)) + return make_pair (lookup (v, &s->vars), d); switch (var.visibility) { -- cgit v1.1