Thanks.

For what it is worth in regards to question (1), GNU Fortran (Homebrew GCC 11.3.0_2) 11.3.0 seems to need .F90 (as opposed to just .F).

-sanjay


On 8/17/23 4:50 PM, Barry Smith wrote:

On Aug 17, 2023, at 7:44 PM, Sanjay Govindjee <[email protected]> wrote:

Two questions about the PetscCall( ) etc. functionality in fortran:

(1) To use this functionality, is it required to use a .F90 naming convention? 
or should I be able to use .F?
    This likely depends on the compiler.
(2) Is it permitted to use line continuation within these calls? For example 
something like

       PetscCallMPIA(MPI_Allreduce(localval,globalsum,1,&
         MPIU_REAL,MPIU_SUM, PETSC_COMM_WORLD,ierr))

or is it required to just have an extra long line? or is there an alternate 
syntax for continuation in this case?
    Because PetscCallXXX() is a macro, it "breaks" if a continuation is used, 
so yes, you will sometimes need long lines. Most Fortran compilers have an option to 
allow infinitely long lines.

    Note that you can still use CHKERRQ() either all the time or in situations where you 
"need" a continuation character.

   Barry


-sanjay


Reply via email to