Hi Torsten,

Did some tests but could not figure out what went wrong must be some subtle
interaction between EXPAND_AS_DEFINED and EXPAND_ONLY_PREDEF that I,
unfortunately didn't figure out.

Note: for other readers the example as provided the description of the
Doxyfile in the original posting is not conforming the attached Doxyfiles
but the attached Doxyfiles show the observed phenomena.

Albert

On Wed, Jan 14, 2015 at 12:49 PM, Torsten Hees <a1...@gmx.net> wrote:

> Hello Albert,
>
> I use the current version for windows on windows7 64bit (1.8.9.1).
>
> I added 4 files:
> Image: The image shows the correct generated page and the not correct
> generated
>  Doxygenfiles
> Headerfile
>
> The doxygenfile ending on "working" use the MACRO_EXPANSION feature. In
> this case the page is correct (see image left side).
> The doxygenfile ending on "NotWorking" use the MACRO_EXPANSION feature +
> EXPAND_ONLY_PREDEF feature. In this case html side is not correct generated
> (see image right side).
>
> Best regards
> Torsten
>
>  *Gesendet:* Mittwoch, 14. Januar 2015 um 10:59 Uhr
> *Von:* Albert <albert.te...@gmail.com>
> *An:* "Torsten Hees" <a1...@gmx.net>
> *Cc:* "doxygen-users@lists.sourceforge.net" <
> doxygen-users@lists.sourceforge.net>
> *Betreff:* Re: [Doxygen-users] Preprocessor MACRO_EXPANSION +
> EXPAND_ONLY_PREDEF issue
>    Dear Torsten,
>
> I tried to reproduce the problem but was not able to (I used version
> 1.8.9.1 on Windows). This might be due to an error in my Doxyfile or a
> difference in the input file (cutting and pasting does not go to well from
> the mailing list, a lot of empty lines).
>
> Can you:
> - indicate which version of doxygen you were using
> - send the input file to the mailing list as an attachment
> - indicate which items are different (with in case of EXPAND AS DEFINED
> the exact line used) from the standard Doxyfile (i.e. the Doxyfile
> generated with doxygen -g), though I think I got this right seen the
> description. (See also doxygen -s -g to get a default Doxyfile without the
> comments, so you can attach the file, in compressed format due to the
> limited size of attachments in the mailing list).
> - indicate on which output page you see the problem.
>
> Albert
>
>
> On Wed, Jan 14, 2015 at 7:44 AM, Torsten Hees <a1...@gmx.net> wrote:
>>
>>    Hello Mailinglist,
>>
>>
>>
>> I want to expand macro function in my code. If I use a global setting,
>> its works correct, but if I want to do macro expansion only for individual
>> macros it don't expand correct.
>>
>>
>>
>> I added an example code to test it with the following settings (Doxy
>> Wizard – Preprocessor tab):
>>
>>
>>
>> Working case
>>
>> ===========================================================
>>
>> ENABLE_PREPROCESSING - set
>>
>> MACRO_EXPANSION - not set
>>
>> EXPAND_ONLY_PREDEF - not set
>>
>> SEARCH_INCLUDE - set
>>
>>
>>
>> INCLUDE_PATH
>>
>> -empty
>>
>>
>>
>> INCLUDE_FILE_PATTERNS
>>
>> -empty
>>
>>
>>
>> PREDEFINED
>>
>> -empty
>>
>>
>>
>> EXPAND_AS_DEFINED
>>
>> -empty
>>
>>
>>
>> SKIP_FUNCTION_AS_DEFINED - set
>>
>>
>>
>> Not working case
>>
>> ===========================================================
>>
>> ENABLE_PREPROCESSING - set
>>
>> MACRO_EXPANSION - not set
>>
>> EXPAND_ONLY_PREDEF - not set
>>
>> SEARCH_INCLUDE - set
>>
>>
>>
>> INCLUDE_PATH
>>
>> -empty
>>
>>
>>
>> INCLUDE_FILE_PATTERNS
>>
>> -empty
>>
>>
>>
>> PREDEFINED
>>
>> -empty
>>
>>
>>
>> EXPAND_AS_DEFINED
>>
>> - EVENTTYPE_TABLE
>>
>> - ENTRY
>>
>>
>>
>> SKIP_FUNCTION_AS_DEFINED - set
>>
>>
>>
>>
>>
>>
>>
>> Additional comment
>>
>> ===========================================================
>>
>> It's only documentated what happen if EXPAND_AS_DEFINED has entries and
>> PREDEFINED and EXPAND_AS_DEFINED is set. It's not defined what happen if
>> only one is set.
>>
>> It seems that Macro's are skiped if EXPAND_AS_DEFINED has entries and is
>> not set.
>>
>>
>>
>> I hope some one has an idea whats going work. Is it a still a bug in
>> doxygen or it is my fault.
>>
>> Best regrads
>>
>> Torsten
>>
>>
>>
>> MacroTest.h
>>
>> ===========================================================
>>
>>
>>
>> /** For an overview of the mappings of these events to the handling
>> methods in
>>
>> MacroTest, see @ref MacroTest.
>>
>> @file MacroTest.h
>>
>> */
>>
>>
>>
>> /// This is a documentation comment
>>
>> enum TypeType_t
>>
>> {
>>
>> bla1,
>>
>> bla2,
>>
>>
>>
>> PROGRAM_INTERNAL_ET = INT_MAX ///< Do not touch this. Required for
>> ensuring consistent enum type size across libraries.
>>
>> };
>>
>>
>>
>>
>>
>> /** For an overview of the mappings of these events to the handling
>> methods in
>>
>> MacroTest, see @ref MacroTest.
>>
>> @file MacroTest.h
>>
>> */
>>
>>
>>
>> /** @brief Program event types.
>>
>> */
>>
>>
>>
>> #define EVENTTYPE_TABLE \
>>
>> /** A key was pressed down. */ \
>>
>> ENTRY(ET_KEYDOWN) \
>>
>> /** A key was released. */ \
>>
>> ENTRY(ET_KEYUP) \
>>
>> /** A character key was pressed. */ \
>>
>> ENTRY(ET_CHAR) \
>>
>> /** The mouse was moved while a button was pressed. */ \
>>
>> ENTRY(DEPRECATED_ET_MOUSEDRAG) \
>>
>> /** The mouse was moved while all buttons were released. */ \
>>
>> ENTRY(ET_MOUSEMOVE) \
>>
>> /** The mousewheel was used. */ \
>>
>> ENTRY(ET_MOUSEWHEEL) \
>>
>> /** The left mouse button was released. */ \
>>
>> ENTRY(ET_LBUTTONUP) \
>>
>> /** The left mouse button was pressed. */ \
>>
>> ENTRY(ET_LBUTTONDOWN) \
>>
>> /** The left mouse button was double clicked. @ref
>> CGUIEventHandler::GetDoubleClickTime() */ \
>>
>> ENTRY(DEPRECATED_ET_LBUTTONDBLCLK) \
>>
>> /** The right mouse button was released. */ \
>>
>> ENTRY(ET_RBUTTONUP) \
>>
>> /** The right mouse button was pressed. */ \
>>
>> ENTRY(ET_RBUTTONDOWN) \
>>
>> /** The left mouse button was pressed longer than @ref
>> CGUIEventHandler::GetLongClickTime(). */ \
>>
>> ENTRY(DEPRECATED_ET_LBUTTONLONGCLICK) \
>>
>> /** A hot key was pressed (used on e.g. smart phones)*/ \
>>
>> ENTRY(ET_HOTKEYDOWN) \
>>
>> /** A hot key was released (used on e.g. smart phones)*/ \
>>
>> ENTRY(ET_HOTKEYUP)
>>
>>
>>
>> /// This is a documentation comment
>>
>> enum EventType_t
>>
>> {
>>
>> #define ENTRY(a) a,
>>
>> EVENTTYPE_TABLE
>>
>> #undef ENTRY
>>
>> PROGRAM_INTERNAL_ET = INT_MAX ///< Do not touch this. Required for
>> ensuring consistent enum type size across libraries.
>>
>> };
>>
>>
>>
>>
>>
>> /// MacroTest special doc
>>
>> /// Special comment bla bla bla
>>
>> /// bla bla bla
>>
>> /// bla bla bla
>>
>> /// bla bla bla
>>
>>
>>
>> class MacroTest
>>
>> {
>>
>> public:
>>
>> /// Constructor
>>
>> MacroTest();
>>
>> /// Destructor
>>
>> ~MacroTest();
>>
>> /// Getter
>>
>> /// bla bla bla
>>
>> /// @param i The param to get
>>
>> /// @return Pointer to MacroTest.
>>
>> MacroTest *GetMacro(int i ) {return this;};
>>
>>
>>
>> /// Setter
>>
>> /// bla bla bla
>>
>> /// @param i The param to get
>>
>> void SetMacro(int i ) {MacroTest i = 0;};
>>
>>
>>
>> /// Super duper member
>>
>> int m_i;
>>
>> /// BLABLA
>>
>> EventType_t m_EventType;
>>
>> /// Blabla
>>
>> TypeType_t m_TypeType;
>>
>> }
>>
>>
>> ------------------------------------------------------------------------------
>> New Year. New Location. New Benefits. New Data Center in Ashburn, VA.
>> GigeNET is offering a free month of service with a new server in Ashburn.
>> Choose from 2 high performing configs, both with 100TB of bandwidth.
>> Higher redundancy.Lower latency.Increased capacity.Completely compliant.
>> http://p.sf.net/sfu/gigenet
>> _______________________________________________
>> Doxygen-users mailing list
>> Doxygen-users@lists.sourceforge.net
>> https://lists.sourceforge.net/lists/listinfo/doxygen-users
>>
>
>
------------------------------------------------------------------------------
New Year. New Location. New Benefits. New Data Center in Ashburn, VA.
GigeNET is offering a free month of service with a new server in Ashburn.
Choose from 2 high performing configs, both with 100TB of bandwidth.
Higher redundancy.Lower latency.Increased capacity.Completely compliant.
http://p.sf.net/sfu/gigenet
_______________________________________________
Doxygen-users mailing list
Doxygen-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/doxygen-users

Reply via email to