After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 773399 - Trailing macro with arguments are truncated
Trailing macro with arguments are truncated
Status: RESOLVED NOTABUG
Product: doxygen
Classification: Other
Component: general
unspecified
Other All
: Normal normal
: ---
Assigned To: Dimitri van Heesch
Dimitri van Heesch
https://wayland.freedesktop.org/libin...
Depends on:
Blocks:
 
 
Reported: 2016-10-24 02:14 UTC by Yong Bakos
Modified: 2016-12-25 09:33 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
Screenshot of generated doc showing truncation (23.82 KB, image/png)
2016-10-24 02:14 UTC, Yong Bakos
Details

Description Yong Bakos 2016-10-24 02:14:34 UTC
Created attachment 338315 [details]
Screenshot of generated doc showing truncation

When a macro with arguments is used as part of a trailing attribute of a function, typedef and other elements, Doxygen seems to be truncating the argument list.

Given the source:

#define LIBINPUT_ATTRIBUTE_PRINTF(_format, _args) \
        __attribute__ ((format (printf, _format, _args)))

// ...
typedef void (*libinput_log_handler)(struct libinput *libinput,
                                     enum libinput_log_priority priority,
                                     const char *format, va_list args)
           LIBINPUT_ATTRIBUTE_PRINTF(3, 0);

The html doc for the typedef shows everything up to the comma in the used macro, like:

LIBINPUT_ATTRIBUTE_PRINTF(3

(image attached)
Comment 1 Dimitri van Heesch 2016-12-25 09:33:44 UTC
Hi Yong,

This is a know issue with a documented workaround, see
http://www.doxygen.org/manual/preprocessing.html