[petsc-dev] make all PETSc Fortran examples modern freeform?

Satish Balay balay at mcs.anl.gov
Thu Nov 7 09:13:48 CST 2013


freeform is not a superset of fixed form.  The following is another
example of fixed form that won't compile as free-form.

      Call foo(bar,............................................,         my comment here after the 72char fixed limit
     $   otherparms,.............)

And then fortran compilers has options to change the fixed from from
72 to 100 or 132? We don't support that [ so no petsc codes use that
stuff]

There is a way to write code thats both fixed-form and freeform
compliant.  But it means all codes need fixes support this.. [we've
done that for petsc fortran code that end in .h or .F suffix. .F90
suffix sourcefiles in PETSc are free-form only.

Satish

On Thu, 7 Nov 2013, Blaise A Bourdin wrote:

> Damn it! Considering that fixed form was declared obsolete 10 years ago, and if this is the only incompatibility, is it too much to ask that fortran people replace a "C" in first col with a "!" (which is also compatible with fixed form)?
> 
> Blaise 
> 
> 
> On Nov 7, 2013, at 8:42 AM, Jed Brown <jedbrown at mcs.anl.gov> wrote:
> 
> > Blaise A Bourdin <bourdin at lsu.edu> writes:
> > 
> >> I haven’t use fixed-form in a long time, but isn’t free-form a
> >> superset of fixed-form? Are there situation where a fixed form code
> >> cannot be compiled as free form source code?
> > 
> > $ cat foo.f
> >      program foo
> > c     a silly comment
> >      end program
> > $ gfortran foo.f
> > $ gfortran -ffree-form foo.f 
> > foo.f:2:
> > 
> > c     a silly comment
> > 1
> > Error: Unclassifiable statement at (1)
> 
> 


More information about the petsc-dev mailing list