Tue, 05/14/2013 - 14:44
Hi,
when creating documentation for my source code with doxygen I quite often recognize that doxygen has problems with handles. For example this declaration
Handle(TColgp_HArray1OfPnt2d) HandleOutputPoints( std::vector
causes the error message
Found ';' while parsing initializer list! (doxygen could be confused by a macro call without semicolon).
These errors even spread: if doxygen gets confused with one declaration it sometimes can't even understand the following declarations.
I have already played around with the doxygen parameters for macro expansion (i.e. I allowed macro expansion), but this did not help.
Does anyone know a workaround so that I get correct documentation without error messages?
Thank you,
Benjamin
Fri, 05/17/2013 - 18:36
Forgot to add: I use doxygen 1.8.3.1 on Windows and on Linux.
Is there no one experiencing the same problems?
Mon, 05/20/2013 - 12:50
Dear Benjamin,
You may try the trick we use in OCCT doc generator.
Define Handle and other OCCT-specific macros In Doxyfile as follows:
PREDEFINED = Standard_EXPORT __Standard_API __Draw_API Handle(a):=Handle DEFINE_STANDARD_ALLOC DEFINE_NCOLLECTION_ALLOC
Regards
Tue, 05/21/2013 - 14:57
Thank you very much! This works. For those who want to try the same trick: MACRO_EXPANSION should be set to YES in the doxyfile for the predefines to be used.