This Sphinx pull: https://github.com/sphinx-doc/sphinx/pull/8313 Fixes the C domain name conflicts when both a function and an enum, struct or union have the same name. Those fixes will generate new C domain warnings if an enum is defined using :c:struct. So, we need to use different tags for structs or union. Thankfully, such change is backward compatible with Shinx 3.x. The first patch address it. The second patch fix an issue at conf.py. While Sphinx 4.0 was not released yet, the Sphinx development branch is using 4.0.0 as its version. There is a small issue at the code that excludes some macros from functions, if Sphinx major version is > 3. Mauro Carvalho Chehab (2): scripts: kernel-doc: use :c:union when needed sphinx: conf.py: properly handle Sphinx 4.0 Documentation/conf.py | 2 +- scripts/kernel-doc | 6 +++++- 2 files changed, 6 insertions(+), 2 deletions(-) -- 2.26.2