Why is it that my xml output no longer includes <defname> tags, when the declared and defined names for parameters differ?
For more detail - say I have a method whose parameter names differ between the declaration and definition: // sepDeclAndDef.h class SepDeclAndDef { int myFunc(int declaredName); }; // sepDeclAndDef.cpp #include "sepDeclAndDef.h" int SepDeclAndDef::myFunc(int definedName) { return 7; } I have some older doxygen output that, in situations like this, would include a <defname> tag in the xml output: // class_sep_decl_and_def.xml (old) ... <memberdef kind="function" id= "class_sep_decl_and_def_1aeb6a0f5c0c1e410803fb46a0f48eec36" prot="private" static="no" const="no" explicit="no" inline="no" virt="non-virtual"> <type>int</type> <definition>int SepDeclAndDef::myFunc</definition> <argsstring>(int declaredName)</argsstring> <name>myFunc</name> <param> <type>int</type> <declname>declaredName</declname> <defname>definedName</defname> </param> However, whenever I try and regenerate the xml now, it never includes the <defname>: // class_sep_decl_and_def.xml (old) ... <memberdef kind="function" id= "class_sep_decl_and_def_1aeb6a0f5c0c1e410803fb46a0f48eec36" prot="private" static="no" const="no" explicit="no" inline="no" virt="non-virtual"> <type>int</type> <definition>int SepDeclAndDef::myFunc</definition> <argsstring>(int declaredName)</argsstring> <name>myFunc</name> <param> <type>int</type> <declname>declaredName</declname> </param> The older xml was generated using doxygen-1.8.11... however, I've tried re-generating the xmls using 1.8.11 and current (1.8.18), and I can't reproduce the <defname> inclusions. I suspect that there's some configuration change that triggered this, but I can't find what it is. (Also, I can't compare the settings directly, because the source code base, including the doxygen configuration, is not something I have access to - I am writing a tool / plugin for a product, and the makers of that product are good enough to supply me with the doxygen-generated xmls, from which I parse some necessary information. I was hoping to give them easy instructions on how to get it to output the <defname> tags again, since I rely on them, but I can't figure out how to make them myself.) Looking at the source, ie: https://github.com/doxygen/doxygen/blob/341f860ab7ae3e5255891b0984bec8b36e7557ef/src/xmlgen.cpp#L869 if (defArg && !defArg->name.isEmpty() && defArg->name!=a.name) { t << " <defname>"; writeXMLString(t,defArg->name); t << "</defname>" << endl; } ...it would appear that the intent is to include the <defname> if it's different - but I haven't been able to figure out why this isn't happening. Any insight would be appreciated. Thanks! - Paul PS - Apologies if this ends up cross-posted on the mailing list and discussion forum. I first tried posting to the forum, but the post did not seem to go through... but it's possible it's just very delayed! <https://www.avast.com/sig-email?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=webmail&utm_term=icon> Virus-free. www.avast.com <https://www.avast.com/sig-email?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=webmail&utm_term=link> <#DAB4FAD8-2DD7-40BB-A1B8-4E2AA1F9FDF2>
_______________________________________________ Doxygen-users mailing list Doxygen-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/doxygen-users