This file is indexed.

/usr/lib/petscdir/3.7.7/x86_64-linux-gnu-real-debug/include/petsc/finclude/ftn-custom/petscvec.h90 is in libpetsc3.7.7-dbg 3.7.7+dfsg1-2build5.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
#if !defined(PETSC_USE_FORTRAN_MODULES)
#include "petsc/finclude/ftn-custom/petscvecdef.h90"
#endif
#include "petsc/finclude/ftn-custom/petscishide.h90"
#include "petsc/finclude/ftn-custom/petscvechide.h90"

      Interface
        Subroutine VecGetArrayF90(v,array,ierr)
          USE_VEC_HIDE
          PetscScalar, pointer :: array(:)
          PetscErrorCode ierr
          VEC_HIDE     v
        End Subroutine
      End Interface

      Interface
        Subroutine VecRestoreArrayF90(v,array,ierr)
          USE_VEC_HIDE
          PetscScalar, pointer :: array(:)
          PetscErrorCode ierr
          VEC_HIDE     v
        End Subroutine
      End Interface

      Interface
        Subroutine VecGetArrayReadF90(v,array,ierr)
          USE_VEC_HIDE
          PetscScalar, pointer :: array(:)
          PetscErrorCode ierr
          VEC_HIDE     v
        End Subroutine
      End Interface

      Interface
        Subroutine VecRestoreArrayReadF90(v,array,ierr)
          USE_VEC_HIDE
          PetscScalar, pointer :: array(:)
          PetscErrorCode ierr
          VEC_HIDE     v
        End Subroutine
      End Interface

      Interface
        Subroutine VecSetValuesSectionF90(v,s,p,va,mode,ierr)
          USE_VEC_HIDE
          PetscScalar, pointer :: va(:)
          PetscErrorCode ierr
          VEC_HIDE     v
          PETSCSECTION_HIDE s
          PetscInt p
          InsertMode mode
        End Subroutine
      End Interface

! -------------------------------------------------------------

      Interface
        Subroutine VecDuplicateVecsF90(v,m,vs,ierr)
          USE_VEC_HIDE
          VEC_HIDE, pointer :: vs(:)
          PetscInt m
          PetscErrorCode ierr
          VEC_HIDE     v
        End Subroutine
      End Interface
!
!  Question: should VecDestroyVecsF90() take the m argument since
! the array of vectors already knows how long it is? Yes, to
! match calling sequence for C/C++.
!
      Interface
        Subroutine VecDestroyVecsF90(m,vs,ierr)
          USE_VEC_HIDE
          VEC_HIDE, pointer :: vs(:)
          PetscInt m
          PetscErrorCode ierr
        End Subroutine
      End Interface