After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 661672 - ALIASES not working with Fortran source code
ALIASES not working with Fortran source code
Status: RESOLVED FIXED
Product: doxygen
Classification: Other
Component: general
1.7.5.1
Other Linux
: Normal major
: ---
Assigned To: Dimitri van Heesch
Dimitri van Heesch
Depends on:
Blocks:
 
 
Reported: 2011-10-13 14:34 UTC by paulspencer
Modified: 2011-12-03 18:22 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
Preprocessing tags in Fortran to resolve aliases (1.43 KB, patch)
2011-10-30 15:09 UTC, albert
none Details | Review

Description paulspencer 2011-10-13 14:34:28 UTC
The ALIASES configuration is working with C files, but not Fortran files.  The following source files generate 2 entries when 3 are expected.  "testf test of logical in fortran" from ftest.f is the missing entry. 

***
* Generated entries on the Related Page Logicals.html
***
Subprogram ftest
  test3 3rd test 
Member main (int argc, char *argv[])
  test test logical 

***
* Output of doxygen command
***
Generating file documentation...
Generating docs for file ftest.f...
/home/paul/oxygen_test/ftest.f:4: warning: Found unknown command `\logical'
/home/paul/oxygen_test/ftest.f:4: warning: Found unknown command `\logical'
Generating docs for file logicals.h...
Generating docs for file test.c...
Generating page documentation...

***
* Doxyfile
***
ALIASES                = "logical=\xrefitem logical \"Logical\" \"Logical\" "

***
* ftest.f
***
C> @file

C> Test application
C> @logical testf test of logical in fortran
C> @xrefitem logical "Logical" "Logical" test3 3rd test
    program ftest
      print *, "Hello World"
    end program

***
* test.c
***
/**
* @file
*/

/**
* @brief Test
* @param argc argument counter
* @param argv[] Array of arguments
* @logical test test logical
*/
int main(int argc, char * argv[])
{
// @logical test
// @ref MI_EXEC_DEV
return 0;
}
Comment 1 albert 2011-10-30 15:09:20 UTC
Created attachment 200278 [details] [review]
Preprocessing tags in Fortran to resolve aliases

ALIASES weren't resolved in Fortran as this has to be done for each language separately. For C / C++ (and friends) and for tcl this was done but not for Fortran. This patch fixes this problem.

NOTE: I think this problem might also exist for other languages! and should be fixed there too.
Comment 2 Dimitri van Heesch 2011-11-20 15:25:01 UTC
Hi Albert,

I'll include your patch, but this is not a full solution, as @cond...@endcond blocks will still not work. For the longer term I want to split the commentcnv into a language specific part that finds the comment blocks and a language independent part that resolves aliases and @cond...@endcond blocks.
Comment 3 Dimitri van Heesch 2011-12-03 18:22:42 UTC
This bug was previously marked ASSIGNED, which means it should be fixed in
doxygen version 1.7.6. Please verify if this is indeed the case. Reopen the
bug if you think it is not fixed and please include any additional information
that you think can be relevant.