aboutsummaryrefslogtreecommitdiff
path: root/build2/parser.cxx
diff options
context:
space:
mode:
authorBoris Kolpackov <boris@codesynthesis.com>2017-11-28 18:44:21 +0200
committerBoris Kolpackov <boris@codesynthesis.com>2017-11-28 18:44:21 +0200
commitf588f2e5a62d7621d20b2a567b8835bb87ff31f4 (patch)
tree446da4620da40e9922726b0acaf0eeb570dd78e3 /build2/parser.cxx
parent0fcc1a694d1b834921b7f931018ff39fa396027a (diff)
Fix bug in importing multiple targets with single directive
Diffstat (limited to 'build2/parser.cxx')
-rw-r--r--build2/parser.cxx7
1 files changed, 7 insertions, 0 deletions
diff --git a/build2/parser.cxx b/build2/parser.cxx
index 54aa93d..1f2ab9d 100644
--- a/build2/parser.cxx
+++ b/build2/parser.cxx
@@ -1284,9 +1284,16 @@ namespace build2
if (val != nullptr)
{
if (atype == type::assign)
+ {
val->assign (move (r), var);
+ atype = type::append; // Append subsequent values.
+ }
else if (atype == type::prepend)
+ {
+ // Note: multiple values will be prepended in reverse.
+ //
val->prepend (move (r), var);
+ }
else
val->append (move (r), var);
}