I started to eyeball old and new generated output side by side. New table of contents shows one level, old two. No objection; the navigation thingie on the left is more useful anyway.
The new generator elides unreferenced types. Generally good, but two observations: * QapiErrorClass is unreferenced, but its members are mentioned in Errors sections. QapiErrorClass serves as better than nothing error code documentation, but it's gone in the new doc. So this is a minor regression. We can figure out what to do about it later. * Section "QMP errors" is empty in the new doc, because its entire contents is elided. I guess we should elide the section as well, but it's fine to leave that for later. Old doc shows a definition's since information like any other section. New doc has it in the heading box. Looks prettier and uses much less space. Not sure the heading box is the best place, but it'll do for now, we can always move it around later. The new doc's headings use "Struct" or "Union" where the old one uses just "Object". Let's keep "Object", please. In the new doc, some member references are no longer rendered as such, e.g. @on-source-error and @on-target-error in BackupCommon's note. Another small regression. Union branches are busted in the new generator's output. I know they used to work, so I'm not worried about it. The new doc shows the return type, the old doc doesn't. Showing it is definitely an improvement, but we need to adjust the doc text to avoid silliness like "Returns: SnapshotInfo – SnapshotInfo". The new doc shows Arguments / Members, Returns, and Errors in two-column format. Looks nice. But for some reason, the two columns don't align horizontally for Errors like they do for the others. Certainly not a blocker of anything, but we should try to fix it at some point. The new doc doesn't show non-definition conditionals, as mentioned in the cover letter. It shows definition conditionals twice. Once should suffice. There's probably more, but this is it for now.