[PATCH] Cray pointers to procedures

Asher Langton langton2@llnl.gov
Thu May 25 17:34:00 GMT 2006


:ADDPATCH fortran:

A while back, there was a discussion on comp.lang.fortran regarding 
Cray pointers to procedures:

http://groups.google.com/group/comp.lang.fortran/browse_frm/thread/c0528d0a3d4fd41a/

Attached is a short patch that implements this in gfortran.  This is 
very non-standard; ifort accepts Cray pointers to procedures, while 
pgf90, xlf90, and Pathscale reject them.  I don't think these are 
widely used, but as the attached patch shows, the basic functionality 
is already there, so this feature is essentially free.  This patch 
was bootstrapped and regression tested on x86 and x86_64 Linux.

-Asher


gcc/fortran/
2006-5-25  Asher Langton  <langton2@llnl.gov>
  	* symbol.c (check_conflict): Allow external, function, and 
subroutine attributes with Cray
	pointees.
	* trans-expr.c (gfc_conv_function_val): Translate Cray 
pointees that point to procedures.

gcc/testsuite/
2006-5-25  Asher Langton  <langton2@llnl.gov>
	* cray_pointers_7.f90: New test.

-------------- next part --------------
A non-text attachment was scrubbed...
Name: %procptrs.diff
Type: application/applefile
Size: 1473 bytes
Desc: not available
URL: <http://gcc.gnu.org/pipermail/fortran/attachments/20060525/5591ae51/attachment.bin>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: procptrs.diff
Type: application/octet-stream
Size: 2909 bytes
Desc: not available
URL: <http://gcc.gnu.org/pipermail/fortran/attachments/20060525/5591ae51/attachment.obj>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: %cray_pointers_7.f90
Type: application/applefile
Size: 1479 bytes
Desc: not available
URL: <http://gcc.gnu.org/pipermail/fortran/attachments/20060525/5591ae51/attachment-0001.bin>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: cray_pointers_7.f90
Type: application/octet-stream
Size: 870 bytes
Desc: not available
URL: <http://gcc.gnu.org/pipermail/fortran/attachments/20060525/5591ae51/attachment-0001.obj>


More information about the Fortran mailing list