[Geany-Devel] Fortran tags: 2 pull request

Alexander Eberspächer alex.eberspaecher at xxxxx
Wed Jun 12 19:08:53 UTC 2013


Dear Geany devs,

I have opened the two pull requests

https://github.com/geany/geany/pull/145
https://github.com/geany/geany/pull/146

that fix two problems with (modern) Fortran tag generation.

The problem addressed by the first PR concerns forall blocks. The 
(secondary keyword) 'forall in 'end forall' was not interpreted as the 
end of a forall block. Instead, 'end forall' is interpreted as the end 
statement for higher level blocks. Compare the attached screenshots 
forall_module.png and unproblematic_module.png (sources are also 
atttached). You'll note that in the former the function two() shows as a 
function that is not part of the module.

The second PR fixes tag generation for procedure pointers. Declarations
such as 'procedure(my_proc), pointer :: my_pointer' are now treated just 
like declarations of e.g. a real variable. To illustrate what's going 
wrong at the moment please compare procedure_pointer_module.f90 and 
unproblematic_module.png. Note that in the former the pointer variable 
'my_pointer' is missing in the symbol list.

The screenshot with_fixes.png shows the patched symbol browser for a 
module that has both problematic constructs. The problems are gone.

I hope someone finds the time to review both PRs. Thanks!

Best regards

Alex
-------------- next part --------------
A non-text attachment was scrubbed...
Name: forall_module.f90
Type: text/x-fortran
Size: 391 bytes
Desc: not available
URL: <http://lists.geany.org/pipermail/devel/attachments/20130612/88f448f3/attachment-0004.bin>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: forall_module.png
Type: image/png
Size: 7830 bytes
Desc: not available
URL: <http://lists.geany.org/pipermail/devel/attachments/20130612/88f448f3/attachment-0005.png>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: problematic_module.f90
Type: text/x-fortran
Size: 463 bytes
Desc: not available
URL: <http://lists.geany.org/pipermail/devel/attachments/20130612/88f448f3/attachment-0005.bin>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: problematic_module.png
Type: image/png
Size: 7304 bytes
Desc: not available
URL: <http://lists.geany.org/pipermail/devel/attachments/20130612/88f448f3/attachment-0006.png>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: procedure_pointer_module.f90
Type: text/x-fortran
Size: 362 bytes
Desc: not available
URL: <http://lists.geany.org/pipermail/devel/attachments/20130612/88f448f3/attachment-0006.bin>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: procedure_pointer_module.png
Type: image/png
Size: 5355 bytes
Desc: not available
URL: <http://lists.geany.org/pipermail/devel/attachments/20130612/88f448f3/attachment-0007.png>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: unproblematic_module.f90
Type: text/x-fortran
Size: 420 bytes
Desc: not available
URL: <http://lists.geany.org/pipermail/devel/attachments/20130612/88f448f3/attachment-0007.bin>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: unproblematic_module.png
Type: image/png
Size: 7569 bytes
Desc: not available
URL: <http://lists.geany.org/pipermail/devel/attachments/20130612/88f448f3/attachment-0008.png>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: with_fixes.png
Type: image/png
Size: 7657 bytes
Desc: not available
URL: <http://lists.geany.org/pipermail/devel/attachments/20130612/88f448f3/attachment-0009.png>


More information about the Devel mailing list