tomtom-international / asciidoxy

AsciiDoxy generates API documentation from Doxygen XML output to AsciiDoc.
Apache License 2.0
31 stars 10 forks source link

Lots of Warning messages that I can't follow back on #35

Closed r0ckarong closed 2 years ago

r0ckarong commented 3 years ago

I get a bunch of warnings like this on build:

WARNING: No name found in `(`,`section`,`(`,`".hilscher_version"`,`)`,`,`,` `,`used`,`)`,` `
WARNING: No name found in `*`
WARNING: Unexpected trailing token(s) `(`,`void`,` `,`*`,`)`,` ` in `void`,`(`,`*`,`)`,`(`,`void`,` `,`*`,`)`,` `
WARNING: Failed to parse args: Failed to parse type: Unexpected end of nested types: `(* `
[... repeats many times]
WARNING: Failed to parse args: Failed to parse type: Unexpected end of nested types: `(* `
WARNING: No name found in `*`
[... repeats many times]
WARNING: No name found in `*`
WARNING: Failed to parse args: Failed to parse type: Unexpected end of nested types: `(* `
[... repeats many times]
WARNING: Failed to parse args: Failed to parse type: Unexpected end of nested types: `(* `
WARNING: No name found in `*`
[... repeats many times]
WARNING: No name found in `*`
WARNING: Unexpected trailing token(s) `(`,`void`,` `,`*`,`)`,` ` in `void`,`(`,`*`,`)`,`(`,`void`,` `,`*`,`)`,` `
WARNING: Failed to parse args: Failed to parse type: Unexpected end of nested types: `(* `
WARNING: Failed to parse args: Failed to parse type: Unexpected end of nested types: `(* `
WARNING: Failed to parse args: Failed to parse type: Unexpected end of nested types: `(* `
WARNING: Failed to parse args: Failed to parse type: Unexpected end of nested types: `(* `
WARNING: Failed to parse args: Failed to parse type: Unexpected end of nested types: `(* `
WARNING: Failed to parse args: Failed to parse type: Unexpected end of nested types: `(* `

How can I debug where this comes from? The output doesn't tell me much about the origin. I can find the first string in some version includes in my code but I fail to see at the moment if this is a problem with doxygen or asciidoxy or something else altogether.

silvester747 commented 3 years ago

There are still some cases where the parsing goes wrong. This parsing only affects whether AsciiDoxy is able to create hyperlinks for the types. I think I need to improve these messages, and hide some of the debug details in there.

silvester747 commented 3 years ago

In the next version the log output will be different. It will explain what exactly the result of the issue is. See https://github.com/tomtom-international/asciidoxy/blob/develop/documentation/reference/known-issues.adoc for instructions on how to provide more information to help me fix the issues.

RerrerBuub commented 3 years ago

I become the parsing error

WARNING: Failed to parse args: Failed to parse type: Unexdpected end of nested types:(* ``

Root cause seemed to be a defined type of callback at my headerfile. I use ANSI C.

/*****************************************************************************/
/*! function type of my Callback
 *
 * this type defines the default callback function
 *
 * \param   pvArg - User argument
 * \param   ulResult  - result code
 */
typedef uint32_t  (* DEFAULT_CB) (void* pvArg, uint32_t ulResult);
silvester747 commented 2 years ago

Looks like Doxygen is also having a bit of a hard time parsing it.

        <type>uint32_t(*</type>
        <definition>typedef uint32_t(* DEFAULT_CB) (void *pvArg, uint32_t ulResult)</definition>
        <argsstring>)(void *pvArg, uint32_t ulResult)</argsstring>
        <name>DEFAULT_CB</name>

Extending the parser to fix up the Doxygen generated XML and extending the type parser.