aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-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);
}