This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[PATCH] PR fortran/20248 -- accept nonstandard intinsics with -std=f95


The attached patch was bootstrapped and regression tested on
i386-*-freebsd.  There are no new regression with this patch.

I have introduced a new compiler flag, -fall-intrinsics, 
which short-circuits gfortran's normal behavior of excluding
nonstandard intrinsic procedure when -std=f95.  For example,
the following code

   ! { dg-do compile }
   ! { dg-options "-fall-intrinsics -std=f95" }
   ! PR fortran/20248
   program z
     if (iargc() /= 0) call abort
   end program z

yields

troutmask:sgk[202] gfc4x -o z iargc.f90 
troutmask:sgk[203] gfc4x -o z -std=f95 iargc.f90
/mnt1/sgk/tmp/ccrQ7PfH.o(.text+0x19): In function `MAIN__':
: undefined reference to `iargc_'
collect2: ld returned 1 exit status

The allows one to test the conformance on one's code without
having to introduce stubs for intrinsic procedure that 
gfortran already provides.

2006-03-30  Steven G. Kargl  <kargls@comcast.net>

	* lang.opt: New flag -fall-intrinsics.
	* invoke.texi:  Document option.
	* gfortran.h (options_t):  New member flag_all_intrinsics.
	* options.c (gfc_init_options, gfc_handle_option): Set new option.
	sort nearby misplaced options.
	* intrinsic.c (add_sym, make_generic, make_alias):  Use it.


2006-03-30  Steven G. Kargl  <kargls@comcast.net>

	* gfortran.dg/iargc.f90:  New test.

-- 
Steve

Attachment: iargc.f90
Description: Text document

Attachment: intrinsics.diff
Description: Text document


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]