The symbols are parsed by the parsers which are copied from the Universal ctags project. The parsers in Geany are fairly old. You could look to see if ctags gets it right, then to see if an improved parser can be included in Geany.
Fair warning however, IIRC there have been infrastructure changes in ctags that made it necessary for changes to Geany to be a single giant pull request that nobody has the time to review or test, so it has not been merged. And no matter how much we trust the PR provider they can't know all languages and their previous PR did break a couple.
Cheers Lex
On Mon, 31 Aug 2020 at 23:24, Jean-Baptiste FAURE jean-baptiste.faure@inrae.fr wrote:
Hi,
Let a Fortran source code file containing a module, this module containing several subroutines. The symbol panel shows all subroutines inside the module.
Now, if one subroutine contains a block construct, then all subroutine that follow the subroutine with the block construct appears to be out of the module in the symbol panel.
If we have some source code like that:
module AAA
contains
subroutine bbb
end subroutine bbb
subroutine ccc
end subroutine ccc
subroutine ddd
end subroutine ddd
end module AAA
In the symbol panel we see:
Module
AAA bbb ccc ddd
If subroutine ccc contains a block construct, the symbol panel looks like that:
Module
AAA bbb ccc
Functions / subroutines
ddd
as if ddd was outside the AAA module.
Is there something I can do to fix the problem ?
Best regards.
-- Jean-Baptiste FAURE Institut National de Recherche pour l'Agriculture, l'Alimentation et l'Environnement INRAE https://www.inrae.fr - Unité de Recherche RiverLY / Hydraulique 5 rue de la Doua - CS 20244 - 69625 VILLEURBANNE Cedex - FRANCE
Users mailing list Users@lists.geany.org https://lists.geany.org/cgi-bin/mailman/listinfo/users