http://gcc.gnu.org/bugzilla/show_bug.cgi?id=52101

--- Comment #8 from Steve Kargl <sgk at troutmask dot apl.washington.edu> 
2012-02-05 18:00:59 UTC ---
On Sun, Feb 05, 2012 at 09:58:46AM +0000, burnus at gcc dot gnu.org wrote:
> http://gcc.gnu.org/bugzilla/show_bug.cgi?id=52101
> 
> --- Comment #7 from Tobias Burnus <burnus at gcc dot gnu.org> 2012-02-05 
> 09:58:46 UTC ---
> (In reply to comment #4)
> > I believe that John is correct.  The form 'CHARACTER*n string'
> > is obsolescent while the form 'CHARACTER string*n' is not.
> 
> After re-checking the standard, I concur. However, I want to point out that a
> simple quoting such as
> 
> > From Sec 5.1 in the F2003 standard, 
> > R504  entity-decl is object-name [( array-spec )] [ * char-length ]
> >                      [ initialization ]
> >                   or function-name [ * char-length ]
> 
> is insufficient as one cannot see whether '[ * char-length ]' is obsolescent:
> 
> "The descriptions of obsolescent features appear in a smaller type size."
> (F2008, 1.4.5 Text conventions).
> 
> However, I have just check it and the font size seems to be the normal one.
> 

It is sufficient once one reads B.2.8.

  B.2.8   CHARACTER* form of CHARACTER declaration

  In addition to the CHARACTER*char-length form introduced in Fortran
  77, Fortran 90 provided the CHARACTER([ LEN = ] type-param-value)
  form.  The older form (CHARACTER*char-length) is redundant.

This clear applies to the BNF give by R403 -> R404 -> R421.

Reply via email to