Or, simpler, you can just use is() in lower case for the Fortran is. Barry
> On Jan 26, 2025, at 7:11 PM, Barry Smith <bsm...@petsc.dev> wrote: > > > Sorry for the delay in responding. > > The easiest way is to simply skip the #include "petsc/finclude/petscksp.h" > and use type(tIS) instead of IS. > > Explanation: the #include "petsc/finclude/petscksp.h" defines a few > macros to make the current PETSc Fortran API look like the old PETSc API. For > example > > #define IS type(tIS) > > Barry > > >> On Jan 23, 2025, at 3:16 AM, Klaij, Christiaan via petsc-users >> <petsc-users@mcs.anl.gov> wrote: >> >> In fortran I'm using the following structure to check the type of >> an incoming variable: >> >> SELECT TYPE (myvar) >> TYPE IS (mytype) >> ... >> END SELECT >> >> Here IS is a fortan intrinsic, so far so good. However, when I >> add a petsc index set as follows >> >> #include "petsc/finclude/petscksp.h" >> >> use petscksp, only: tIS >> >> IS :: myIS >> >> the compiler gets confused and thinks that the intrinsic fortran >> IS is the petsc index set IS, and errors-out on the SELECT >> TYPE: >> >> error #8245: SELECT TYPE statement must be immediately followed by CLASS IS, >> TYPE IS, CLASS DEFAULT or END SELECT statement. >> SELECT TYPE (myvar) >> ----^ >> error #6410: This name has not been declared as an array or a function. >> [TYPE] >> TYPE type(tIS) (mytype) >> ---------^ >> compilation aborted >> >> What would be the right way to deal with this problem? >> <image870949.png> >> dr. ir. >> Christiaan >> Klaij >> | >> Senior Researcher >> | >> Research & Development >> T +31 317 49 33 44 <tel:+31%20317%2049%2033%2044> >> | >> c.kl...@marin.nl <mailto:c.kl...@marin.nl> >> | >> https://urldefense.us/v3/__http://www.marin.nl__;!!G_uCfscf7eWS!dPFI3QMmP_EuU0rMN41EuTIWIgbY1PFACvkhrCPOh9oKU26ve6P1d3thlPG95YAu9kEYXP5WACupHiH-gOAafpQ$ >> >> <https://urldefense.us/v3/__https://www.marin.nl/__;!!G_uCfscf7eWS!ci7RiI8WEqh81becsu6CMRqmK1It91JWMStWzWcFLARdy0n8d2WiqmINXWd-0992Ex6wcTfqupvy9nnMVdrITEk$> >> <image753651.png> >> <https://urldefense.us/v3/__https://www.facebook.com/marin.wageningen__;!!G_uCfscf7eWS!ci7RiI8WEqh81becsu6CMRqmK1It91JWMStWzWcFLARdy0n8d2WiqmINXWd-0992Ex6wcTfqupvy9nnMJEayozg$> >> >> <image316694.png> >> <https://urldefense.us/v3/__https://www.linkedin.com/company/marin__;!!G_uCfscf7eWS!ci7RiI8WEqh81becsu6CMRqmK1It91JWMStWzWcFLARdy0n8d2WiqmINXWd-0992Ex6wcTfqupvy9nnMHWYJziY$> >> >> <image966725.png> >> <https://urldefense.us/v3/__https://www.youtube.com/marinmultimedia__;!!G_uCfscf7eWS!ci7RiI8WEqh81becsu6CMRqmK1It91JWMStWzWcFLARdy0n8d2WiqmINXWd-0992Ex6wcTfqupvy9nnMGp7QgsM$>