From 03ec8c658e6a94babb9fe766c4fb77d2761a4d46 Mon Sep 17 00:00:00 2001 From: Neri Marschik Date: Mon, 16 Feb 2026 13:59:34 +0900 Subject: [PATCH] fixup! fixup! fixup! Fix spurious rebuilds for phony targets with validations --- src/graph.cc | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/graph.cc b/src/graph.cc index e50e0716..8e6ff697 100644 --- a/src/graph.cc +++ b/src/graph.cc @@ -285,8 +285,8 @@ bool DependencyScan::RecomputeOutputDirty(const Edge* edge, if (edge->is_phony()) { // Phony edges don't write any output. Outputs are only dirty if // there are no inputs or validations and we're missing the output. - // If a phony target has inputs or validations, they are used for dirty - // calculation instead of this fallback. + // If a phony target has inputs or validations, or the output exists, + // they are used for dirty calculation instead of this fallback. if (edge->inputs_.empty() && edge->validations_.empty() && !output->exists()) { explanations_.Record(