Projects for inclusion into gfortran-4.6

This page contains the projects proposed for gfortran-4.6, with a short description, state of readiness, impact and person to contact. Please add your own projects right there, with a separate page or a short paragraph.

Note: This page has been moved from GCC 4.4 - not all items might be up to date.

Array Descriptor Update

Array Descriptor Update

Formal/actual argument checking for same file procedures

The following item is mostly solved with -fwhole-file, which is enabled by default in 4.6; however, the checking can still be improved and some whole-file/checking bugs are still to be fixed.

There are a large number of PRs associated with this. The idea would be to add a formal_arg_list to gsymbols. The main wrinkle is to deal with actual arguments for references to procedures that have not yet been seen. (Paul Thomas, paulthomas2 at wanadoo dot fr) PR26227 (refers to PRs 28809, 28443, 27587, 27586 and 27594), PR27318 and PR24878

The idea developed somewhat and I did post a first go before we got into the F95 bug-bashing frenzy. ([]). This parsed the entire code first and contained all the namespaces in a global namespace. global resolution and translation were done in sequence. This caused a relatively small number of regressions that I did not have time to track down.

Status: "-fwhole-file" was implemented on 2009-03-30:

Revamp of read_module

This is nothing more than an idea right now that is intended to deal with PR25708. (Paul Thomas, paulthomas2 at wanadoo dot fr)

13th November 2008 - Is this still an issue?

Find a way to handle STDCALL on Win32

See PR 34112 for a start. -- Works since June 2009, see GNU Manual

However, all attributes should be supported, cf. PR41209

Range checking for all array intrinsics

At the moment, not all array intrinsics do proper bounds checking; see PR 34670. (Thomas K├Ânig, tkoenig at gcc dot gnu dot org)

Add more runtime checking

I want to add more runtime checking capabilities to gfortran, such as a memory usage and memory leaks checking (both implemented by instrumenting memory allocation and deallocation routines in the library). To do that, it would make sense IMHO to regroup all runtime checking options (which all have the common trait that they slow down execution) under a common name. For example, -fbounds-check would become -fcheck=bounds; you could specify -fcheck=bounds,memusage,memleak or -fruntime-check=all.

Status: -fcheck=<all|bounds|array-temps|recursive|do> is done. memusage and memleak soon.

Better debug information

gfortran is has still some weak points at emitting debug information. (Lot of fixes were done by Jakub Jelinek. Some work started by Steven Bosscher [is he still working on this?].)

Parameterized derived types

I will post an outline design for this; first for discussion, then, hopefully, for Sa Liu to implement. (Paul T)

Sa Liu left on maternity leave before this came to fruition - certainly 4.5 and we need to renew contact with Sa, after a decent interval.

F2003 I/O Stubs

Install stubs in the frontend to accept all new I/O features and parameters. Start implementing in the run time library. Partially done. Missing are:

F2003 OOP - type extension, classes and the select type construct


Integration of libcpp into gfortran

Fix some longstanding bugs and issues with preprocessing.

Steps done:

To do:

(Daniel Franke,

None: GFortran46 (last edited 2014-05-12 20:18:32 by TobiasBurnus)