1

I consider a Fortran API to a C code. Therefore, I have a proper documented C function execute_lua. For this function (and more functions) I have a Fortran module

MODULE CINTERFACE 
! Some definitions
CONTAINS 

!> @brief Wrap the C function execute_lua
!> @param[in]   state Global State
!> 
!> .......
SUBROUTINE EXECUTE_LUA(STATE) 
 ...
END SUBROUTINE 
END MODULE 

Now, I want to reference the Fortran EXECUTE_LUA somewhere else, for example as See Also reference. I tried

!> @sa execute_lua 

which yields a link to the C function. I tried

!> @sa EXECUTE_LUA 

where no link appears. Since doxygen generates my Fortran subroutine inside the module as cinterface::execute_lua I tried

!> @sa cinterface::execute_lua

where also no link appear.

So how does it work that I am able to reference the subroutine inside the Fortran module instead of the C one.

A complete example is given here: https://gist.github.com/grisuthedragon/01ac07ed05a865419475b7a8644b8459

M.K. aka Grisu
  • 2,338
  • 5
  • 17
  • 32
  • Which version of doxygen are you using? With version 1.8.17 I could not reproduce your problem (i.e. the `!> @sa cinterface::execute_lua`), might be due to the fact that I didn't see the C code though. – albert Jan 31 '20 at 14:40
  • I used Doxygen 1.8.13 I will try the 1.8.17. – M.K. aka Grisu Feb 01 '20 at 13:02
  • With doxygen 1.8.13 I don't see a problem either, so complete example would be good (for the changes in respect to the doxygen configuration file use `doxygen -x Doxyfile` when running 1.8.17, this will give an overview of the changes in the Doxyfile compared to the default Doxyfile). – albert Feb 01 '20 at 13:16
  • So after trying various Doxygen versions from 1.8.12 to 1.8.17 I added a minimal working example to my question which can be found in the gist. – M.K. aka Grisu Feb 01 '20 at 21:58
  • 2
    The problem is that the `MODULE CINTERFACE` is not documented, when documenting the module the links are shown as well. – albert Feb 02 '20 at 11:04

0 Answers0