Whither Fortran type-bound procedure documentation?

"Hambley, Matthew" <[email protected]>
Newsgroups gmane.text.doxygen.general
Message-ID <9D6D53CDFA223440815D6981FDC99A9F34793D69@EXXCMPD1DAG3.cmpd1.metoffice.gov.uk>
My original attempt to send this overtook my joining the mailing list so it is lost in limbo somewhere.

Doxygen's approach to type-bound procedures in Fortran seems a little problematic. I've looked through my Doxyfile but can't see anything obvious which I should be changing but haven't.

Let me elucidate:

There are two places where one could put the documentation. Along with the declaration of the procedure, in the type definition. Alternatively it could go with the definition in the module body.

Currently Doxygen seems to expect it to accompany declaration and ignores anything provided with definition.

There are a number of issues with this.

The calling signature of the procedure is not described in the declaration so Doxygen complains that you have @param clauses for non-existent arguments. Of course they do exist, just down in the definition.

If you have a "generic" procedure, one which maps to a number of different implementations, i.e. overloaded, It can not be sensibly documented at declaration as there are multiple procedures but only one comment block.

The upshot of all this is that the support for documentation seems to be in the wrong place. It would seem to make more sense for it to be with the procedure definition in the module body rather than in the module header in the type definition.

Am I missing something? Is there already a way to get the behaviour I want? Or is this a shortcoming in the tool?

-- 
Matthew Hambley
  Scientific Software Engineer
  Met Office Hadley Centre, Exeter, UK



------------------------------------------------------------------------------
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.