GNOME Bugzilla – Bug 684574
Bug 639716 "A strange member __pad0__ appears in the document" again in 1.8.2
Last modified: 2013-01-12 14:07:50 UTC
This bug is back in version 1.8.2 for windows
This only happens when I have an INPUT_FILTER containing: sed -e "s: PACKED;:;/**\#PACKED*/:" -e "s:__attribute__.*((.*)):/** &*/:" %1% [note: "%1%" is the DOS equivalent of "$1"]
Problem will go away if you change "sed" above to "@sed" - DOS is inserting the exanded command from the bat file into STDOUT. I don't know how this can be fixed in Doxygen!
You can try to put the command in a batch file. From your comments I gather that this is not a general problem in doxygen, but rather a very specific use. If you think something needs to be fixed in doxygen then please attach a self-contained example (source+config file in a tar or zip) that allows me to reproduce the problem.
The problem was that I did put the command into a batch file & DOS's normal method of expanding scripts is similar to running "bash -v <script-name>". To work around this problem, all commands in the .bat file should be prefaced with th '@' character [i.e. use "@sed ..." in the script above instead of just "sed ..."]. Where the magic variables "__pad[0-9]*__" come from is a mystery, but there should probably be something added to the FAQs about how to format DOS scripts for use as INPUT_FILTERs. I found this by setting "FILTER_SOURCE_FILES = YES" in Doxyfile, clicking "Go to the source code of this file." in the generated documentation and noting the expanded lines from the script were inserted ahead of the emitted filtered source file. Putting the "sed" command above into a "filter.bat" file and invoking it with "INPUT_FILTER = filter.bat" in the Doxyfile. [The example files, "foo.hpp" and "bar.hpp" used in the original bug report 639716 can be used to illustrate the problem]
Note: this problem also occurs with Cygwin and the solution of prepending the '@' signs in the .bat file fixes it there also.
I could not reproduce the problem with the example in bug 639716. Can you show me what the output is if you run doxygen with the -d filteroutput option. Then doxygen will dump the output after filtering.
Closing this bug report as no further information has been provided. Please feel free to reopen this bug if you can provide the information asked for. Thanks!