Open befeleme opened 11 months ago
This appears to be caused by some sphinx bug. The failure is reproducible with doxygen 1.9.7 and Sphinx 7.0.1 but not with Sphinx 7.1.2 (implemented via https://src.fedoraproject.org/rpms/python-sphinx/pull-request/56) nor with Sphinx 7.2.5 (latest upstream).
I get the same error with Sphinx 7.2.5 and Doxygen 1.9.8
I have looked further into this issue and compared the output of doxygen cpp_anon.cfg
(from examples/specific
) between Doxygen 1.9.4 and Doxygen 1.9.8.
As it turns out, the older Doxygen used to auto-generate names such as @0
, @1
, @2
,… for anonymous entities, and the newer Doxygen leaves the name
tag empty in its XML output, which (I assume) results in broken doxygen*::
directives.
This was originally reported in https://github.com/breathe-doc/breathe/issues/933, but then closed, so let me open another issue on this. With doxygen 1.9.7 Breathe documentation build fails with
specific.rst
containsC++ Anonymous Entities
around the line where error was detected: https://github.com/breathe-doc/breathe/blob/main/documentation/source/specific.rst?plain=1#L190There are some doxygen fixes in 1.9.7 that caught my eye, looking at the changelog namely: https://github.com/doxygen/doxygen/commit/a18e4c76ed6415893800c7d77a2f798614fb638b https://github.com/doxygen/doxygen/issues/9668
For the sake of completeness, there is the output of the build with
breathe_debug_trace_directives = True
for readingspecific.rst
(I can't make much of it):