Language extension not being removed

Leonardo Pereira Santos <[email protected]> Wed, 4 Nov 2020 14:47:41 +0000
Newsgroups gmane.text.doxygen.general
Message-ID <19D444D2299FEE43A99CCB03048F8520011357B8BB@usaz01ws0033.ad.onsemi.com>
--===============5993905652032889164==
Content-Language: en-US
Content-Type: multipart/alternative;
	boundary="_000_19D444D2299FEE43A99CCB03048F8520011357B8BBusaz01ws0033a_"

--_000_19D444D2299FEE43A99CCB03048F8520011357B8BBusaz01ws0033a_
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable

Hello all!

I'm documenting some DSP code that use a language extension. I've tried to =
follow the documentation here:

https://www.doxygen.nl/manual/preprocessing.html

My function is as follows:

/**
* @brief       Set the internal oscillator base operating frequency; the
*              oscillator multiplication setting is not a component
*              of the base operating frequency configuration.
* @param[in]   frequency_index Index corresponding to the desired
*                              trim value in the calibration table.
*                              Operating frequency index; use
*                              SYS_FREQ_*
* @return      If 0, new operating frequency set If 1, could not set freque=
ncy
*              (no calibration found for the requested operating frequency)
* @assumptions Calibration table loaded.
*
* @examplecode syslib_c_examples.c SYSLIB_SetOperatingFrequency_Example
* @examplecode syslib_examples.S SYSLIB_SetOperatingFrequency_ASM_Example
*/
extern "C" uint24_t chess_storage(x0) SYSLIB_SetOperatingFrequency(
       uint24_t chess_storage(x0) frequency_index);


My Doxyfile has:


ENABLE_PREPROCESSING    =3D YES
MACRO_EXPANSION         =3D YES
EXPAND_ONLY_PREDEF      =3D YES
PREDEFINED              =3D __attribute__(x)
PREDEFINED              =3D chess_storage(x)=3D


According to the documentation, the above should "will make sure the __decl=
spec(dllexport) is removed before doxygen parses the source code."

However, that's not what I'm seeing. I have a warning when running Doxygen:


warning: argument 'frequency_index' of command @param is not found in the a=
rgument list of chess_storage(x0)

And the output thinks chess_storage is the function name:



uint24_t

chess_storage<group___s_y_s_l_i_bg.html#ga35208b7fdf582aa39608ca71b0d50282>=
 (x0) SYSLIB_SetOperatingFrequency(uint24_t chess_storage(x0) frequency_ind=
ex)



Set the internal oscillator base operating frequency; the oscillator multip=
lication setting is not a component of the base operating frequency configu=
ration. More...<group___s_y_s_l_i_bg.html#ga35208b7fdf582aa39608ca71b0d5028=
2>



Could someone help understand what I'm doing wrong?

Thank you very much!

Best Regards,

Leonardo Pereira Santos | ON Semiconductor
Design Engineer

200-611 Kumpf Dr        | Waterloo, Ontario, Canada, N2N 1A8
519-884-9696 x2269 (O)  | [email protected]<mailto:Leonardo=
[email protected]>


--_000_19D444D2299FEE43A99CCB03048F8520011357B8BBusaz01ws0033a_
Content-Type: text/html; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable

<html xmlns:v=3D"urn:schemas-microsoft-com:vml" xmlns:o=3D"urn:schemas-micr=
osoft-com:office:office" xmlns:w=3D"urn:schemas-microsoft-com:office:word" =
xmlns:m=3D"http://schemas.microsoft.com/office/2004/12/omml" xmlns=3D"http:=
//www.w3.org/TR/REC-html40">
<head>
<meta http-equiv=3D"Content-Type" content=3D"text/html; charset=3Dus-ascii"=
>
<meta name=3D"Generator" content=3D"Microsoft Word 15 (filtered medium)">
<style><!--
/* Font Definitions */
@font-face
	{font-family:"Cambria Math";
	panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
	{font-family:Calibri;
	panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
	{font-family:Consolas;
	panose-1:2 11 6 9 2 2 4 3 2 4;}
@font-face
	{font-family:Verdana;
	panose-1:2 11 6 4 3 5 4 4 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
	{margin:0cm;
	margin-bottom:.0001pt;
	font-size:11.0pt;
	font-family:"Calibri",sans-serif;}
a:link, span.MsoHyperlink
	{mso-style-priority:99;
	color:#0563C1;
	text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
	{mso-style-priority:99;
	color:#954F72;
	text-decoration:underline;}
code
	{mso-style-priority:99;
	font-family:"Courier New";}
span.EmailStyle17
	{mso-style-type:personal-compose;
	font-family:"Calibri",sans-serif;
	color:windowtext;}
.MsoChpDefault
	{mso-style-type:export-only;
	font-family:"Calibri",sans-serif;}
@page WordSection1
	{size:612.0pt 792.0pt;
	margin:72.0pt 72.0pt 72.0pt 72.0pt;}
div.WordSection1
	{page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext=3D"edit" spidmax=3D"1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext=3D"edit">
<o:idmap v:ext=3D"edit" data=3D"1" />
</o:shapelayout></xml><![endif]-->
</head>
<body lang=3D"EN-US" link=3D"#0563C1" vlink=3D"#954F72">
<div class=3D"WordSection1">
<p class=3D"MsoNormal">Hello all!<o:p></o:p></p>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoNormal">I&#8217;m documenting some DSP code that use a langu=
age extension. I&#8217;ve tried to follow the documentation here:<o:p></o:p=
></p>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoNormal">https://www.doxygen.nl/manual/preprocessing.html<o:p=
></o:p></p>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoNormal">My function is as follows:<o:p></o:p></p>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoNormal" style=3D"text-autospace:none"><span style=3D"font-si=
ze:12.0pt;font-family:Consolas;color:#3F5FBF">/**</span><span style=3D"font=
-size:12.0pt;font-family:Consolas"><o:p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"text-autospace:none"><span style=3D"font-si=
ze:12.0pt;font-family:Consolas;color:#3F5FBF">*
</span><span style=3D"font-size:12.0pt;font-family:Consolas;color:#7F9FBF">=
@brief</span><span style=3D"font-size:12.0pt;font-family:Consolas;color:#3F=
5FBF">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Set the internal oscillator base=
 operating frequency; the</span><span style=3D"font-size:12.0pt;font-family=
:Consolas"><o:p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"text-autospace:none"><span style=3D"font-si=
ze:12.0pt;font-family:Consolas;color:#3F5FBF">*&nbsp;&nbsp;&nbsp;&nbsp;&nbs=
p;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; oscillator multiplicatio=
n setting is not a component</span><span style=3D"font-size:12.0pt;font-fam=
ily:Consolas"><o:p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"text-autospace:none"><span style=3D"font-si=
ze:12.0pt;font-family:Consolas;color:#3F5FBF">*&nbsp;&nbsp;&nbsp;&nbsp;&nbs=
p;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; of the base operating fr=
equency configuration.</span><span style=3D"font-size:12.0pt;font-family:Co=
nsolas"><o:p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"text-autospace:none"><span style=3D"font-si=
ze:12.0pt;font-family:Consolas;color:#3F5FBF">*
</span><span style=3D"font-size:12.0pt;font-family:Consolas;color:#7F9FBF">=
@param</span><span style=3D"font-size:12.0pt;font-family:Consolas;color:#3F=
5FBF">[in]&nbsp;&nbsp; frequency_index Index corresponding to the desired</=
span><span style=3D"font-size:12.0pt;font-family:Consolas"><o:p></o:p></spa=
n></p>
<p class=3D"MsoNormal" style=3D"text-autospace:none"><span style=3D"font-si=
ze:12.0pt;font-family:Consolas;color:#3F5FBF">*&nbsp;&nbsp;&nbsp;&nbsp;&nbs=
p;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&=
nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; tri=
m value in the calibration table.</span><span style=3D"font-size:12.0pt;fon=
t-family:Consolas"><o:p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"text-autospace:none"><span style=3D"font-si=
ze:12.0pt;font-family:Consolas;color:#3F5FBF">*&nbsp;&nbsp;&nbsp;&nbsp;&nbs=
p;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&=
nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Ope=
rating frequency index; use</span><span style=3D"font-size:12.0pt;font-fami=
ly:Consolas"><o:p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"text-autospace:none"><span style=3D"font-si=
ze:12.0pt;font-family:Consolas;color:#3F5FBF">*&nbsp;&nbsp;&nbsp;&nbsp;&nbs=
p;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&=
nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; SYS=
_FREQ_*</span><span style=3D"font-size:12.0pt;font-family:Consolas"><o:p></=
o:p></span></p>
<p class=3D"MsoNormal" style=3D"text-autospace:none"><span style=3D"font-si=
ze:12.0pt;font-family:Consolas;color:#3F5FBF">*
</span><span style=3D"font-size:12.0pt;font-family:Consolas;color:#7F9FBF">=
@return</span><span style=3D"font-size:12.0pt;font-family:Consolas;color:#3=
F5FBF">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; If 0, new operating frequency set If =
1, could not set frequency</span><span style=3D"font-size:12.0pt;font-famil=
y:Consolas"><o:p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"text-autospace:none"><span style=3D"font-si=
ze:12.0pt;font-family:Consolas;color:#3F5FBF">*&nbsp;&nbsp;&nbsp;&nbsp;&nbs=
p;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (no calibration found fo=
r the requested operating frequency)</span><span style=3D"font-size:12.0pt;=
font-family:Consolas"><o:p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"text-autospace:none"><span style=3D"font-si=
ze:12.0pt;font-family:Consolas;color:#3F5FBF">* @assumptions Calibration ta=
ble loaded.</span><span style=3D"font-size:12.0pt;font-family:Consolas"><o:=
p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"text-autospace:none"><span style=3D"font-si=
ze:12.0pt;font-family:Consolas;color:#3F5FBF">*</span><span style=3D"font-s=
ize:12.0pt;font-family:Consolas"><o:p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"text-autospace:none"><span style=3D"font-si=
ze:12.0pt;font-family:Consolas;color:#3F5FBF">* @<u>examplecode</u> syslib_=
c_examples.c SYSLIB_SetOperatingFrequency_Example</span><span style=3D"font=
-size:12.0pt;font-family:Consolas"><o:p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"text-autospace:none"><span style=3D"font-si=
ze:12.0pt;font-family:Consolas;color:#3F5FBF">* @<u>examplecode</u> syslib_=
examples.S SYSLIB_SetOperatingFrequency_ASM_Example</span><span style=3D"fo=
nt-size:12.0pt;font-family:Consolas"><o:p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"text-autospace:none"><span style=3D"font-si=
ze:12.0pt;font-family:Consolas;color:#3F5FBF">*/</span><span style=3D"font-=
size:12.0pt;font-family:Consolas"><o:p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"text-autospace:none"><b><span style=3D"font=
-size:12.0pt;font-family:Consolas;color:#7F0055">extern</span></b><span sty=
le=3D"font-size:12.0pt;font-family:Consolas;color:black">
</span><span style=3D"font-size:12.0pt;font-family:Consolas;color:#2A00FF">=
&quot;C&quot;</span><span style=3D"font-size:12.0pt;font-family:Consolas;co=
lor:black">
<u>uint24_t</u> </span><b><span style=3D"font-size:12.0pt;font-family:Conso=
las;color:#7F0055">chess_storage</span></b><span style=3D"font-size:12.0pt;=
font-family:Consolas;color:black">(x0)
<b>SYSLIB_SetOperatingFrequency</b>(</span><span style=3D"font-size:12.0pt;=
font-family:Consolas"><o:p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"text-autospace:none"><span style=3D"font-si=
ze:12.0pt;font-family:Consolas;color:black">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&=
nbsp;
<u>uint24_t</u> </span><b><span style=3D"font-size:12.0pt;font-family:Conso=
las;color:#7F0055">chess_storage</span></b><span style=3D"font-size:12.0pt;=
font-family:Consolas;color:black">(x0) frequency_index);</span><span style=
=3D"font-size:12.0pt;font-family:Consolas"><o:p></o:p></span></p>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoNormal">My Doxyfile has:<o:p></o:p></p>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoNormal">ENABLE_PREPROCESSING&nbsp;&nbsp;&nbsp; =3D YES<o:p><=
/o:p></p>
<p class=3D"MsoNormal">MACRO_EXPANSION&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&=
nbsp;&nbsp; =3D YES<o:p></o:p></p>
<p class=3D"MsoNormal">EXPAND_ONLY_PREDEF&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; =3D=
 YES<o:p></o:p></p>
<p class=3D"MsoNormal">PREDEFINED&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; =3D __attribute__(x)<o:p></o:p></p>
<p class=3D"MsoNormal">PREDEFINED&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; =3D chess_storage(x)=3D<o:p></o:p></p>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoNormal">According to the documentation, the above should &#8=
220;<span style=3D"font-size:10.0pt;font-family:&quot;Verdana&quot;,sans-se=
rif;color:black;background:white">will make sure the&nbsp;</span><code><spa=
n style=3D"font-size:10.0pt;color:black;background:white">__declspec(dllexp=
ort)</span></code><span style=3D"font-size:10.0pt;font-family:&quot;Verdana=
&quot;,sans-serif;color:black;background:white">&nbsp;is
 removed before doxygen parses the source code.</span>&#8221;<o:p></o:p></p=
>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoNormal">However, that&#8217;s not what I&#8217;m seeing. I h=
ave a warning when running Doxygen:<o:p></o:p></p>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoNormal">warning: argument 'frequency_index' of command @para=
m is not found in the argument list of chess_storage(x0)<o:p></o:p></p>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoNormal">And the output thinks chess_storage is the function =
name:<o:p></o:p></p>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
<table class=3D"MsoNormalTable" border=3D"0" cellpadding=3D"0" style=3D"bac=
kground:white">
<tbody>
<tr>
<td nowrap=3D"" valign=3D"top" style=3D"background:#F9FAFC;padding:.75pt 0c=
m 0cm 6.0pt">
<p class=3D"MsoNormal" align=3D"right" style=3D"margin:3.0pt;text-align:rig=
ht;line-height:16.5pt">
<span style=3D"font-size:10.5pt;font-family:&quot;Arial&quot;,sans-serif;co=
lor:black">uint24_t&nbsp;<o:p></o:p></span></p>
</td>
<td width=3D"635" valign=3D"bottom" style=3D"width:807.0pt;background:#F9FA=
FC;padding:.75pt 0cm 0cm 6.0pt;transition-property: background-color, box-s=
hadow;transition-duration: 0.5s">
<p class=3D"MsoNormal" style=3D"margin:3.0pt;line-height:16.5pt"><span styl=
e=3D"font-size:10.5pt;font-family:&quot;Arial&quot;,sans-serif;color:black"=
><a href=3D"group___s_y_s_l_i_bg.html#ga35208b7fdf582aa39608ca71b0d50282"><=
b><span style=3D"color:#4665A2;text-decoration:none">chess_storage</span></=
b></a>&nbsp;(x0)
 SYSLIB_SetOperatingFrequency(uint24_t chess_storage(x0) frequency_index)<o=
:p></o:p></span></p>
</td>
</tr>
<tr>
<td style=3D"background:#F9FAFC;padding:0cm 6.0pt 3.0pt 6.0pt;transition-pr=
operty: background-color, box-shadow;transition-duration: 0.5s">
<p class=3D"MsoNormal" style=3D"margin:3.0pt;line-height:16.5pt"><span styl=
e=3D"font-size:10.5pt;font-family:&quot;Arial&quot;,sans-serif;color:#55555=
5">&nbsp;<o:p></o:p></span></p>
</td>
<td style=3D"background:#F9FAFC;padding:0cm 6.0pt 3.0pt 6.0pt;transition-pr=
operty: background-color, box-shadow;transition-duration: 0.5s">
<p class=3D"MsoNormal" style=3D"margin:3.0pt;line-height:16.5pt"><span styl=
e=3D"font-size:10.5pt;font-family:&quot;Arial&quot;,sans-serif;color:#55555=
5">Set the internal oscillator base operating frequency; the oscillator mul=
tiplication setting is not a component of the base
 operating frequency configuration.&nbsp;<a href=3D"group___s_y_s_l_i_bg.ht=
ml#ga35208b7fdf582aa39608ca71b0d50282"><span style=3D"color:#4665A2;text-de=
coration:none">More...</span></a><o:p></o:p></span></p>
</td>
</tr>
</tbody>
</table>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoNormal">Could someone help understand what I&#8217;m doing w=
rong?<o:p></o:p></p>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoNormal">Thank you very much!<o:p></o:p></p>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoNormal">Best Regards,<o:p></o:p></p>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoNormal"><span lang=3D"PT-BR" style=3D"font-family:&quot;Cour=
ier New&quot;">Leonardo Pereira Santos | ON Semiconductor<o:p></o:p></span>=
</p>
<p class=3D"MsoNormal"><span lang=3D"PT-BR" style=3D"font-family:&quot;Cour=
ier New&quot;">Design Engineer
<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"PT-BR" style=3D"font-family:&quot;Cour=
ier New&quot;"><o:p>&nbsp;</o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"PT-BR" style=3D"font-family:&quot;Cour=
ier New&quot;">200-611 Kumpf Dr&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; |=
 Waterloo, Ontario, Canada, N2N 1A8<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"PT-BR" style=3D"font-family:&quot;Cour=
ier New&quot;">519-884-9696 x2269 (O)&nbsp; |
</span><span style=3D"font-family:&quot;Courier New&quot;"><a href=3D"mailt=
o:[email protected]"><span lang=3D"PT-BR" style=3D"color:#0=
563C1">[email protected]</span></a></span><span lang=3D"PT-=
BR" style=3D"font-family:&quot;Courier New&quot;"><o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"PT-BR"><o:p>&nbsp;</o:p></span></p>
</div>
</body>
</html>

--_000_19D444D2299FEE43A99CCB03048F8520011357B8BBusaz01ws0033a_--


--===============5993905652032889164==
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline


--===============5993905652032889164==
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

_______________________________________________
Doxygen-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/doxygen-users

--===============5993905652032889164==--