Procedure Pointers for gfortran
Google Summer of Code 2009 project
Student: Janus Weil
Mentor: Tobias Burnus
This page will be used to collect some useful information about this project, and to document my progress.
Summary
gfortran 4.3: Abstract interfaces and basic PROCEDURE declarations are available (no procedure pointers yet).
gfortran 4.4: Support for procedure pointers has been added. However, advanced features like procedure pointer components and procedure pointers as return values are not available yet.
gfortran 4.5: Full support for procedure pointers & procedure pointer components.
gfortran 4.6: Pointer initialization [F08] and a few bug fixes.
gfortran 4.7/4.8/4.9: Continued bug fixing.
GSoC 2007: PROCEDURE statements
Patches
Abstract Interfaces, committed to 4.3 trunk as r127612 on 2007-08-18, plus a bugfix (r127718) on 2007-08-22.
Procedure Declarations, committed to 4.3 trunk as r128081 on 2007-09-04.
Update on Procedure Declarations, committed to 4.4 trunk as r134867 on 2008-05-01.
Related PRs
fixed in 4.3: PR33162 PR33917 PR33945
fixed in 4.4: PR35830 PR36114 PR36322 PR36325 PR36361 PR36426 PR36459 PR36463 PR38289
fixed in 4.5: PR37254 PR39414 PR39946 PR40591
fixed in 4.6: PR47352
fixed in 4.7: PR50659
fixed in 4.8: PR42418 PR53956 PR54107
fixed in 4.9: PR35831
GSoC 2008: Procedure Pointers
Patches
Procedure Pointers, first patch, committed to 4.4 trunk as r137386 on 2008-07-02.
Preparation for Procedure Pointer Components, committed to 4.4 trunk as r139524 on 2008-08-23.
Related PRs
fixed in 4.4: PR32580 PR36592 PR36705 PR37253 PR38152 PR38415
fixed in 4.5: PR36704 PR38290 PR39692 PR39735 PR39997 PR39998 PR40176 PR40450 PR40451 PR40541 PR40593 PR42072
fixed in 4.6: PR44718 PR45366 PR46067
fixed in 4.8: PR51081 PR52585 PR52909 PR54387
fixed in 4.9: PR46271 PR49397 PR54949 PR56814 PR56968 PR58099
fixed in 7.x: PR52832
open:
PR39695: [F03] ProcPtr function results: wrong name in error message
PR42122: -fdump-tree-original shows wrong static decl for functions with procptr argument
GSoC 2009: Procedure Pointer Components and beyond
Patches
Procedure Pointers Components, NOPASS only, committed to 4.5 trunk as r147206 on 2009-05-06.
Procedure Pointers Components with PASS, committed to 4.5 trunk as r150078 on 2009-07-25.
Related PRs
fixed in 4.5: PR39630 PR40164 PR40427 PR40646 PR40869 PR40870 PR40882 PR41022 PR41106 PR41139 PR41242 PR41978 PR42045 PR42104
fixed in 4.6: PR43227 PR46060 PR46201 PR46662 PR46841 PR47224 PR47240 PR47768
fixed in 4.8: PR51082 PR54147 PR54285 PR54286 PR54603
fixed in 5.0: PR45290 PR58023 PR63674 PR63727 PR64508
open:
PR50438: [F03] proc pointer to subroutine in structure constructors