[lkml]   [2020]   [Oct]   [1]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
SubjectRe: [PATCH v4 23/52] docs: trace-uses.rst: remove bogus c-domain tags
Em Thu, 1 Oct 2020 11:36:53 +0530
Kamalesh Babulal <> escreveu:

> On 30/09/20 6:54 pm, Mauro Carvalho Chehab wrote:
> > There are some c-domain tags that are wrong. While this won't
> > cause problems with Sphinx < 3.0, this cause troubles with
> > newer versions, as the C parser won't recognize the contents
> > of the tag, and will drop it from the output.
> >
> > Let's just place them at literal blocks.
> >
> tired with Sphinx v3.2.1, invalid C declaration warnings are not
> seen with the patch.

Well, it would be possible to use :c:expr: with Sphinx 3.2.1,
in order for it to check for invalid C declarations.

Btw, this is one of the improvements over the last versions: the
rewritten C parser there is a lot more pedantic with regards to the
C syntax.


That's said, the backward-compatibility code I added at
Documentation/sphinx/ will convert this into a
literal markup though, as there's no equivalent tag before
Sphinx 3.x.

As there are still one upstream issue on Sphinx 3.x that requires a fix[1],
and we don't know yet the issues with :c:expr[2], at least for now, I would
avoid adding :c:expr: markups.

[1] Right now, the C domain is not able to have two names
for different types. So, it is not possible to have
a struct "foo" and a function "foo".

Due to that, while I was able to fix all warnings with
Sphinx 2.x build, Sphinx 3.x will still have bogus

[2] One of the limitations of :c:expr: is with regards to function
prototypes. You can't use it like: :c:expr:`int foo(void);`,
as it will complain with the function return type.

> > Signed-off-by: Mauro Carvalho Chehab <>
> Reviewed-by: Kamalesh Babulal <>



 \ /
  Last update: 2020-10-01 08:42    [W:0.114 / U:3.396 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site