aboutsummaryrefslogtreecommitdiff
path: root/libbuild2/build/script
diff options
context:
space:
mode:
authorBoris Kolpackov <boris@codesynthesis.com>2023-07-20 10:17:03 +0200
committerBoris Kolpackov <boris@codesynthesis.com>2023-07-20 10:17:03 +0200
commitd3ef150c45d9325bc075d33a00c8cf0a6b1bf954 (patch)
tree25ca7cd58d81d8453c6a08f45c0b94ccdfaea03d /libbuild2/build/script
parentb61e0de250d522ec9a8e16146ef979a65c181db1 (diff)
Consider unmatched prerequisites in updated_during_match() check
Diffstat (limited to 'libbuild2/build/script')
-rw-r--r--libbuild2/build/script/parser.cxx5
1 files changed, 5 insertions, 0 deletions
diff --git a/libbuild2/build/script/parser.cxx b/libbuild2/build/script/parser.cxx
index d449f4b..bb9ff66 100644
--- a/libbuild2/build/script/parser.cxx
+++ b/libbuild2/build/script/parser.cxx
@@ -2591,10 +2591,15 @@ namespace build2
{
prerequisite_target& pt (pts.back ());
+ // Note: set the include_target flag for consistency (the
+ // updated_during_match() check does not apply since it's a
+ // dynamic prerequisite).
+ //
if (pt.adhoc ())
{
pt.data = reinterpret_cast<uintptr_t> (pt.target);
pt.target = nullptr;
+ pt.include |= prerequisite_target::include_target;
}
else
pt.data = 1; // Already updated.