I am using Doxygen 1.8.3.1 for Windows as downloaded from the Doxygen
download page.

I am using Windows 7 Pro

I have attached my test Doxyfile and .c/.h files.

I defined the alias "change" to take a parameter. In c_test.c, I
invoke the alias twice, each with a differnet value. In the generated
document, the second expansion used the same value as the first
expansion:

<dl class="change1"><dt><b><a class="el"
href="change1.html#_change1000001">Changes
(1.3):</a></b></dt><dd>Simplify display format. </dd></dl>
<dl class="bug"><dt><b><a class="el"
href="bug.html#_bug000002">Bug:</a></b></dt><dd>Doxygen alias, below,
expanded incorectly - got 1.3, expected 1.2 </dd></dl>
<dl class="change1"><dt><b><a class="el"
href="change1.html#_change1000002">Changes
(1.3):</a></b></dt><dd>Display an internal global variable. </dd></dl>



DOXYFILE_ENCODING      = UTF-8


PROJECT_NAME           = Tools


PROJECT_NUMBER         = 


PROJECT_BRIEF          = 


PROJECT_LOGO           = 


OUTPUT_DIRECTORY       = C:\Projects\Tools\Documents


CREATE_SUBDIRS         = NO


OUTPUT_LANGUAGE        = English


BRIEF_MEMBER_DESC      = YES


REPEAT_BRIEF           = YES


ABBREVIATE_BRIEF       = "The $name class" \
                         "The $name widget" \
                         "The $name file" \
                         is \
                         provides \
                         specifies \
                         contains \
                         represents \
                         a \
                         an \
                         the


ALWAYS_DETAILED_SEC    = NO


INLINE_INHERITED_MEMB  = NO


FULL_PATH_NAMES        = NO


STRIP_FROM_PATH        = 


STRIP_FROM_INC_PATH    = 


SHORT_NAMES            = NO


JAVADOC_AUTOBRIEF      = YES


QT_AUTOBRIEF           = YES


MULTILINE_CPP_IS_BRIEF = NO


INHERIT_DOCS           = YES


SEPARATE_MEMBER_PAGES  = NO


TAB_SIZE               = 8


ALIASES                = "change{1}=\xrefitem change\1 \"Changes (\1)\" 
\"Changes in Rel \1\"" \
                         "req=\par Requirements" \
                         "global{1}=\param [global \1]" \
                         "misra=\xrefitem misraX \"MISRA Exception\" \"MISRA 
Exceptions\""


TCL_SUBST              = 


OPTIMIZE_OUTPUT_FOR_C  = YES


OPTIMIZE_OUTPUT_JAVA   = NO


OPTIMIZE_FOR_FORTRAN   = NO


OPTIMIZE_OUTPUT_VHDL   = NO


EXTENSION_MAPPING      = 


MARKDOWN_SUPPORT       = NO


AUTOLINK_SUPPORT       = YES


BUILTIN_STL_SUPPORT    = NO


CPP_CLI_SUPPORT        = NO


SIP_SUPPORT            = NO


IDL_PROPERTY_SUPPORT   = YES


DISTRIBUTE_GROUP_DOC   = YES


SUBGROUPING            = YES


INLINE_GROUPED_CLASSES = NO


INLINE_SIMPLE_STRUCTS  = NO


TYPEDEF_HIDES_STRUCT   = NO


SYMBOL_CACHE_SIZE      = 0


LOOKUP_CACHE_SIZE      = 0



EXTRACT_ALL            = YES


EXTRACT_PRIVATE        = NO


EXTRACT_PACKAGE        = NO


EXTRACT_STATIC         = YES


EXTRACT_LOCAL_CLASSES  = YES


EXTRACT_LOCAL_METHODS  = NO


EXTRACT_ANON_NSPACES   = NO


HIDE_UNDOC_MEMBERS     = NO


HIDE_UNDOC_CLASSES     = NO


HIDE_FRIEND_COMPOUNDS  = NO


HIDE_IN_BODY_DOCS      = NO


INTERNAL_DOCS          = NO


CASE_SENSE_NAMES       = NO


HIDE_SCOPE_NAMES       = NO


SHOW_INCLUDE_FILES     = YES


FORCE_LOCAL_INCLUDES   = NO


INLINE_INFO            = YES


SORT_MEMBER_DOCS       = YES


SORT_BRIEF_DOCS        = NO


SORT_MEMBERS_CTORS_1ST = NO


SORT_GROUP_NAMES       = NO


SORT_BY_SCOPE_NAME     = NO


STRICT_PROTO_MATCHING  = NO


GENERATE_TODOLIST      = YES


GENERATE_TESTLIST      = YES


GENERATE_BUGLIST       = YES


GENERATE_DEPRECATEDLIST= YES


ENABLED_SECTIONS       = 


MAX_INITIALIZER_LINES  = 50


SHOW_USED_FILES        = YES


SHOW_FILES             = YES


SHOW_NAMESPACES        = YES


FILE_VERSION_FILTER    = 


LAYOUT_FILE            = 


CITE_BIB_FILES         = 



QUIET                  = NO


WARNINGS               = YES


WARN_IF_UNDOCUMENTED   = YES


WARN_IF_DOC_ERROR      = YES


WARN_NO_PARAMDOC       = NO


WARN_FORMAT            = "$file:$line: $text"


WARN_LOGFILE           = 



INPUT                  = C:\Projects\Tools


INPUT_ENCODING         = UTF-8


FILE_PATTERNS          = *.c \
                         *.dox


RECURSIVE              = NO


EXCLUDE                = 


EXCLUDE_SYMLINKS       = NO


EXCLUDE_PATTERNS       = 


EXCLUDE_SYMBOLS        = 


EXAMPLE_PATH           = 


EXAMPLE_PATTERNS       = *


EXAMPLE_RECURSIVE      = NO


IMAGE_PATH             = 


INPUT_FILTER           = 


FILTER_PATTERNS        = 


FILTER_SOURCE_FILES    = NO


FILTER_SOURCE_PATTERNS = 


USE_MDFILE_AS_MAINPAGE = 



SOURCE_BROWSER         = NO


INLINE_SOURCES         = NO


STRIP_CODE_COMMENTS    = YES


REFERENCED_BY_RELATION = NO


REFERENCES_RELATION    = NO


REFERENCES_LINK_SOURCE = YES


USE_HTAGS              = NO


VERBATIM_HEADERS       = YES



ALPHABETICAL_INDEX     = YES


COLS_IN_ALPHA_INDEX    = 5


IGNORE_PREFIX          = 



GENERATE_HTML          = YES


HTML_OUTPUT            = html


HTML_FILE_EXTENSION    = .html


HTML_HEADER            = 


HTML_FOOTER            = 


HTML_STYLESHEET        = 


HTML_EXTRA_STYLESHEET  = 


HTML_EXTRA_FILES       = 


HTML_COLORSTYLE_HUE    = 220


HTML_COLORSTYLE_SAT    = 100


HTML_COLORSTYLE_GAMMA  = 80


HTML_TIMESTAMP         = YES


HTML_DYNAMIC_SECTIONS  = NO


HTML_INDEX_NUM_ENTRIES = 100


GENERATE_DOCSET        = NO


DOCSET_FEEDNAME        = "Doxygen generated docs"


DOCSET_BUNDLE_ID       = org.doxygen.Project


DOCSET_PUBLISHER_ID    = org.doxygen.Publisher


DOCSET_PUBLISHER_NAME  = Publisher


GENERATE_HTMLHELP      = NO


CHM_FILE               = 


HHC_LOCATION           = 


GENERATE_CHI           = NO


CHM_INDEX_ENCODING     = 


BINARY_TOC             = NO


TOC_EXPAND             = NO


GENERATE_QHP           = NO


QCH_FILE               = 


QHP_NAMESPACE          = org.doxygen.Project


QHP_VIRTUAL_FOLDER     = doc


QHP_CUST_FILTER_NAME   = 


QHP_CUST_FILTER_ATTRS  = 


QHP_SECT_FILTER_ATTRS  = 


QHG_LOCATION           = 


GENERATE_ECLIPSEHELP   = NO


ECLIPSE_DOC_ID         = org.doxygen.Project


DISABLE_INDEX          = NO


GENERATE_TREEVIEW      = NO


ENUM_VALUES_PER_LINE   = 4


TREEVIEW_WIDTH         = 250


EXT_LINKS_IN_WINDOW    = NO


FORMULA_FONTSIZE       = 10


FORMULA_TRANSPARENT    = YES


USE_MATHJAX            = NO


MATHJAX_FORMAT         = HTML-CSS


MATHJAX_RELPATH        = http://www.mathjax.org/mathjax


MATHJAX_EXTENSIONS     = 


SEARCHENGINE           = NO


SERVER_BASED_SEARCH    = NO


EXTERNAL_SEARCH        = NO


SEARCHENGINE_URL       = 


SEARCHDATA_FILE        = searchdata.xml


EXTERNAL_SEARCH_ID     = 


EXTRA_SEARCH_MAPPINGS  = 



GENERATE_LATEX         = NO


LATEX_OUTPUT           = latex


LATEX_CMD_NAME         = latex


MAKEINDEX_CMD_NAME     = makeindex


COMPACT_LATEX          = NO


PAPER_TYPE             = a4


EXTRA_PACKAGES         = 


LATEX_HEADER           = 


LATEX_FOOTER           = 


PDF_HYPERLINKS         = YES


USE_PDFLATEX           = YES


LATEX_BATCHMODE        = NO


LATEX_HIDE_INDICES     = NO


LATEX_SOURCE_CODE      = NO


LATEX_BIB_STYLE        = plain



GENERATE_RTF           = NO


RTF_OUTPUT             = rtf


COMPACT_RTF            = NO


RTF_HYPERLINKS         = NO


RTF_STYLESHEET_FILE    = 


RTF_EXTENSIONS_FILE    = 



GENERATE_MAN           = NO


MAN_OUTPUT             = man


MAN_EXTENSION          = .3


MAN_LINKS              = NO



GENERATE_XML           = NO


XML_OUTPUT             = xml


XML_SCHEMA             = 


XML_DTD                = 


XML_PROGRAMLISTING     = NO



GENERATE_AUTOGEN_DEF   = NO



GENERATE_PERLMOD       = YES


PERLMOD_LATEX          = YES


PERLMOD_PRETTY         = YES


PERLMOD_MAKEVAR_PREFIX = 



ENABLE_PREPROCESSING   = YES


MACRO_EXPANSION        = YES


EXPAND_ONLY_PREDEF     = YES


SEARCH_INCLUDES        = YES


INCLUDE_PATH           = 


INCLUDE_FILE_PATTERNS  = 


PREDEFINED             = "USAGE(x)=/** x */"


EXPAND_AS_DEFINED      = 


SKIP_FUNCTION_MACROS   = YES



TAGFILES               = 


GENERATE_TAGFILE       = 


ALLEXTERNALS           = NO


EXTERNAL_GROUPS        = YES


PERL_PATH              = /usr/bin/perl



CLASS_DIAGRAMS         = NO


MSCGEN_PATH            = 


HIDE_UNDOC_RELATIONS   = YES


HAVE_DOT               = NO


DOT_NUM_THREADS        = 0


DOT_FONTNAME           = Helvetica


DOT_FONTSIZE           = 10


DOT_FONTPATH           = 


CLASS_GRAPH            = YES


COLLABORATION_GRAPH    = YES


GROUP_GRAPHS           = YES


UML_LOOK               = NO


UML_LIMIT_NUM_FIELDS   = 10


TEMPLATE_RELATIONS     = NO


INCLUDE_GRAPH          = YES


INCLUDED_BY_GRAPH      = YES


CALL_GRAPH             = NO


CALLER_GRAPH           = NO


GRAPHICAL_HIERARCHY    = YES


DIRECTORY_GRAPH        = YES


DOT_IMAGE_FORMAT       = png


INTERACTIVE_SVG        = NO


DOT_PATH               = 


DOTFILE_DIRS           = 


MSCFILE_DIRS           = 


DOT_GRAPH_MAX_NODES    = 50


MAX_DOT_GRAPH_DEPTH    = 0


DOT_TRANSPARENT        = NO


DOT_MULTI_TARGETS      = NO


GENERATE_LEGEND        = YES


DOT_CLEANUP            = YES
/**
 * \file
 *
 * Test harness for functions generated from Simulink.
 *
 * \req
 * Internal request.
 *
 * \note
 * Besides being a test harness for SimuLink S-Functions, this 
 * is a test bed for Doxygen mark-up. 
 */

#include <stdio.h>
#include "Undertest.h"

typedef unsigned char UINT8;

/** Kinds of ports */
enum PortType {
	Input,
	Output,
	IO
};

/** IO Descriptor */
struct Port {
	enum PortType type;  ///< Input, Output or IO
	UINT8         index; ///< Internal reference
};

/** IO Descriptor */
typedef struct Port CommPort;

/** Current active communications port */
CommPort Communication;

/** Correction descriptor */
typedef struct {
	UINT16 gamma; ///< correction factor \pre 0..255=0..100 %
	UINT16 theta; ///< skew angle
} Correction;


/// Format for displaying OutPort.
/// Formats the Port and Gain values for display.
char OutPort[] = "OutPort: %d\nGain: %d\n";

/// Data input format.
/// Used to extract the Port and Gain values from the input.
char DataIn[] = "%d %d"

Correction Shim; ///< Correction Factor.

/**
 * Basic test harness function. Set inputs and read outputs of 
 * the function under test. 
 *
 * @return TRUE if successful.
 */
int Test(
	UINT8 InVal,    ///< [in] Input value for function under test. @b Preconditions 0..150
	char  OutFormat ///< [in] OutFormat Format for parsing OutPort string.
	)
{
    /// \misra
    /// Used in diagnostic interface \@ __LINE__
	/// \bug
	/// Doxygen's preprocessor did not expand the line reference macro
    printf("This is a test.\n");
    InPort = InVal;
    printf("InPort: %d\n", (int)InPort); /** \change{1.3} Simplify display format. */
    Undertest();
    printf("OutPort: %d\n", (int)OutPort);
    /// \bug
    /// Doxygen alias, below, expanded incorectly - got 1.3, expected 1.2
    printf("gain: %d\n", (int)Gain_002); /** \change{1.2} Display an internal global variable. */
    return 1;
}

/**
 * Basic test harness function. Set inputs and read outputs of
 * the function under test. 
 *
 * \param [in] OutPort Format for writing OutPort string.
 *
 * @return Always 1, at this time.
 */
int main(void)
{
    /// \misra
    /// Used in diagnostic interface \@ __LINE__
    printf("This is a test.\n");
    Test(19, OutPort);
    return 1;
}

/**************************************************************************************************\
 ***
 *** Simulink model       : Test
 *** TargetLink subsystem : Test/Undertest
 *** Codefile             : Undertest.h
 ***
 *** Generated by TargetLink, the dSPACE production quality code generator
 *** Generation date: 2011-07-29 17:09:47
 ***
 *** CODE GENERATOR OPTIONS:
 *** Compiler                            : <unknown>
 *** Target                              : Generic
 *** ANSI-C compatible code              : yes
 *** Optimization level                  : 2
 *** Constant style                      : decimal
 *** Clean code option                   : disabled
 *** Logging mode                        : According to block-specific data
 *** Linker sections                     : enabled
 *** Assembler statements                : disabled
 *** Variable name length                : 31 chars
 *** Use global bitfields                : disabled
 *** Stateflow: use of bitfields         : enabled
 *** State activity encoding limit       : 5
 *** Omit zero inits in restart function : disabled
 *** Share fcns between TL subsystems    : disabled
 *** Generate 64bit functions            : enabled
 *** Inlining Threshold                  : 6
 *** Line break limit                    : 100
 *** Target optimized boolean data type  : enabled
 *** Keep saturation elements            : disabled
 *** Extended variable sharing           : disabled
 *** Style definition file               : C:\dSPACE5p4_TL2p2p1_R2007a\Matlab\Tl\config\codegen\ccon
 ***                                       fig.xml
 *** Root style sheet                    : C:\dSPACE5p4_TL2p2p1_R2007a\Matlab\Tl\XML\CodeGen\Stylesh
 ***                                       eets\TL_CSourceCodeSS.xsl
 *** Enable Multirate codegeneration     : disabled
 *** Add model checksum                  : disabled
 ***
 *** TargetLink version      : 2.2.1 from 21-Jun-2007
 *** Code generator version  : Build Id 2.2.1.9 from 2007-06-21 12:36:51
 *** Copyright (c) 2006 dSPACE GmbH
\**************************************************************************************************/

#ifndef _UNDERTEST_H_
#define _UNDERTEST_H_

/*----------------------------------------------------------------------------*\
  DEFINES (OPT)
\*----------------------------------------------------------------------------*/
/*----------------------------------------------------------------------------*\
  INCLUDES
\*----------------------------------------------------------------------------*/
#include "tl_defines_b.h"
#include "tl_basetypes.h"
/*----------------------------------------------------------------------------*\
  DEFINES
\*----------------------------------------------------------------------------*/
/*----------------------------------------------------------------------------*\
  TYPEDEFS
\*----------------------------------------------------------------------------*/
/*----------------------------------------------------------------------------*\
  ENUMS
\*----------------------------------------------------------------------------*/
/*----------------------------------------------------------------------------*\
  VARIABLES
\*----------------------------------------------------------------------------*/

/******************************************************************************\
   DISP: global observable variables (RAM) | Width: 16
\******************************************************************************/
extern DISP T_UINT16 Gain_002 /* LSB: 2^-14 OFF:  0 MIN/MAX:  0 .. 3.9999389648438 */;
extern DISP T_UINT16 Gain_0_000001 /* LSB: 2^-18 OFF:  0 MIN/MAX:  0 .. 0.2499961853027 */;

/******************************************************************************\
   TLAUSGANG_GLOBAL: Globale Variablen fuer Schnittstelle zu anderen Subsystemen | Width: 16
\******************************************************************************/
extern TLAUSGANG_GLOBAL T_UINT16 OutPort /* LSB: 2^-18 OFF:  0 MIN/MAX:  0 .. 0.2499961853027 */;

/******************************************************************************\
   CAL: global calibratable flashable parameters (ROM) | Width: 16
\******************************************************************************/

// #pragma CONST_SEG AF_PARS
extern CAL T_UINT16 P_Veh_tTimestampResDR /*
   Unit       : s
   Description: Time base associated with the Wheel Distance Timestamp signal of the rear wheels
   LSB: 2^-33 OFF:  0 MIN/MAX:  0 .. 7.6292781e-006 */;
// #pragma CONST_SEG DEFAULT

/******************************************************************************\
   TLEINGANG_GLOBAL: Globale Variablen fuer Schnittstelle von anderen Subsystemen | Width: 16
\******************************************************************************/
extern TLEINGANG_GLOBAL T_UINT16 InPort;

/******************************************************************************\
   SLGlobal: Default storage class for global variables | Width: 16
\******************************************************************************/
extern T_UINT16 Sb1_stamp /* LSB: 1e-007 OFF:  0 MIN/MAX:  0 .. 0.0065535 */;

/*----------------------------------------------------------------------------*\
  PARAMETERIZED MACROS
\*----------------------------------------------------------------------------*/
/*----------------------------------------------------------------------------*\
  FUNCTION PROTOTYPES
\*----------------------------------------------------------------------------*/
/******************************************************************************\
   GlobalStep: Default function class for not static model step functions
\******************************************************************************/
extern Void Undertest(Void);


#endif/*_UNDERTEST_H_ */
/*----------------------------------------------------------------------------*\
  END OF FILE
\*----------------------------------------------------------------------------*/
------------------------------------------------------------------------------
AlienVault Unified Security Management (USM) platform delivers complete
security visibility with the essential security capabilities. Easily and
efficiently configure, manage, and operate all of your security controls
from a single console and one unified framework. Download a free trial.
http://p.sf.net/sfu/alienvault_d2d
_______________________________________________
Doxygen-users mailing list
Doxygen-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/doxygen-users

Reply via email to