tree dd53ce1ebf874ac04939e5684fc39e81d87c2008
parent fce90bf1c6dedf72ce95516903dc0456fecd7e02
author Roland McGrath <mcgrathr@google.com> 1793049656 -0700
committer gn-scoped@luci-project-accounts.iam.gserviceaccount.com <gn-scoped@luci-project-accounts.iam.gserviceaccount.com> 1793089882 -0700

Propagate should_generate to sub-configs

Previously, Builder::ConfigDefined() did not propagate should_generate
to sub-configs (only calling ScheduleItemLoadIfNecessary()), assuming
that the flag was irrelevant for configs since they are not written
directly to Ninja files.

However, Builder::CheckForBadItems() only populates bad_records with
unresolved items that have should_generate() set, and only checks
direct unresolved dependencies of bad_records for missing definitions.
When a config chain had an undefined sub-config (or cycle) and an
intermediate config was defined after the referencing target or parent
config, the intermediate config did not have should_generate() set. It
was omitted from bad_records, and CheckForBadItems() fell through to
the unhelpful "I have no idea what went wrong, but these are
unresolved, possibly due to an internal error:" message.

Update Builder::ConfigDefined() to call RecursiveSetShouldGenerate()
when record->should_generate() is true, and update
Builder::CheckForCircularDependencies() to check all bad_records rather
than only bad_records[0].

Produced with Gemini assistance; reviewed and verified by the author.

Test: gn_unittests
Ai-Assisted: true
Change-Id: I16e1120d476ddc8b9ba82c7198c90ea1272c56a4
Reviewed-on: https://gn-review.googlesource.com/c/gn/+/27880
Commit-Queue: Roland McGrath <mcgrathr@google.com>
Reviewed-by: David Turner <digit@google.com>
