From 0c0f518b0c26a9dbaf818ed3729c22c908b1861d Mon Sep 17 00:00:00 2001 From: lacatoire Date: Thu, 23 Jul 2026 10:47:21 +0200 Subject: [PATCH 1/2] configure.php: recover failed XIncludes inside classsynopsis xinclude_residual_fixup handled listitem/refentry/refsect1/tbody/variablelist parents but not classsynopsis, so a failed XInclude targeting a methodsynopsis or fieldsynopsis inside a class synopsis hit the default branch and hard-failed the build (Unknown parent of failed XInclude: classsynopsis). Add a classsynopsis case that injects a carrying the failure marker. This is a valid child of classsynopsis per the DocBook 5.2 RNG (verified), so translations with a missing class-member include now surface the failure and keep validating, as intended for the other parents. --- configure.php | 3 +++ 1 file changed, 3 insertions(+) diff --git a/configure.php b/configure.php index 1a07591639..b097798772 100755 --- a/configure.php +++ b/configure.php @@ -839,6 +839,9 @@ function xinclude_residual_fixup( DOMDocument $dom ) case "variablelist": $fixup = "$alert"; break; + case "classsynopsis": + $fixup = "$alert"; + break; default: echo " (Unknown parent of failed XInclude: $parent)\n"; $hardfail = true; From e64e10a4b0ac27f1a24ae4483e7a0689724242b0 Mon Sep 17 00:00:00 2001 From: lacatoire Date: Thu, 23 Jul 2026 17:13:43 +0200 Subject: [PATCH 2/2] Use single-quoted role='comment', keep the attribute for PhD Dropping the attribute passes RNG but PhD's format_classsynopsisinfo (Generic/XHTML.php:1145) treats a role-less classsynopsisinfo as the class-body opener: it appends ' {', sets classsynopsis close=true and asserts legacy rendering. role='comment' renders the marker as '/* ... */' instead, which is what the fixup needs. --- configure.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/configure.php b/configure.php index b097798772..1f52de3608 100755 --- a/configure.php +++ b/configure.php @@ -840,7 +840,7 @@ function xinclude_residual_fixup( DOMDocument $dom ) $fixup = "$alert"; break; case "classsynopsis": - $fixup = "$alert"; + $fixup = "$alert"; break; default: echo " (Unknown parent of failed XInclude: $parent)\n";