This file is indexed.

/usr/share/ada/adainclude/asis/asis-implementation-permissions.ads is in libasis2017-dev 2017-2.

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
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
------------------------------------------------------------------------------
--                                                                          --
--                   ASIS-for-GNAT INTERFACE COMPONENTS                     --
--                                                                          --
--       A S I S . I M P L E M E N T A T I O N . P E R M I S S I O N S      --
--                                                                          --
--                                 S p e c                                  --
--                                                                          --
-- This   specification  is  adapted   from  the  Ada   Semantic  Interface --
-- Specification Standard (ISO/IEC 15291) for use with GNAT.  In accordance --
-- with the copyright of that document, you can freely copy and modify this --
-- specification, provided that if you redistribute a modified version, any --
-- changes that you have made are clearly indicated.                        --
--                                                                          --
------------------------------------------------------------------------------

------------------------------------------------------------------------------
--  7  package Asis.Implementation.Permissions
------------------------------------------------------------------------------

package Asis.Implementation.Permissions is

------------------------------------------------------------------------------
--  7.1   function Is_Formal_Parameter_Named_Notation_Supported
------------------------------------------------------------------------------

   function Is_Formal_Parameter_Named_Notation_Supported return Boolean;

------------------------------------------------------------------------------
--  Returns True if it is possible to detect usage of named notation.
--
--  Returns False if this implementation will always change parameter lists
--  using named notation to positional lists in function, subprogram, and
--  entry calls.  In that case, the Formal_Parameter query will always return
--  a Nil_Element unless the parameter list is obtained with Normalized = True.
--
--  This function affects association lists for aggregates, instantiations,
--  discriminant lists, entry calls, and subprogram calls.
--
------------------------------------------------------------------------------
--  7.2   function Default_In_Mode_Supported
------------------------------------------------------------------------------

   function Default_In_Mode_Supported return Boolean;

------------------------------------------------------------------------------
--  Returns True if the A_Default_In_Mode kind is supported by this
--  implementation.
--
------------------------------------------------------------------------------
--  7.3   function Generic_Actual_Part_Normalized
------------------------------------------------------------------------------

   function Generic_Actual_Part_Normalized return Boolean;

------------------------------------------------------------------------------
--  Returns True if the query Generic_Actual_Part will always return artificial
--  Is_Normalized associations using the defining_identifier instead of the
--  generic_formal_parameter_selector_name, and using default_expression or
--  default_name.
--
--  if Generic_Actual_Part_Normalized then the query Generic_Actual_Part will
--  always behave as if called with Normalized => True.
--
------------------------------------------------------------------------------
--  7.4   function Record_Component_Associations_Normalized
------------------------------------------------------------------------------

   function Record_Component_Associations_Normalized return Boolean;

------------------------------------------------------------------------------
--  Returns True if the query Record_Component_Associations will always return
--  artificial Is_Normalized associations using the defining_identifier instead
--  of the component_selector_name.
--
--  if Record_Component_Associations_Normalized then the query
--  Record_Component_Associations will always behave as if called with
--  Normalized => True.
--

------------------------------------------------------------------------------
--  7.5   function Is_Prefix_Call_Supported
------------------------------------------------------------------------------

   function Is_Prefix_Call_Supported return Boolean;

------------------------------------------------------------------------------
--  Returns True if the ASIS implementation has the ability to determine
--  whether calls are in prefix form.
--
------------------------------------------------------------------------------
--  7.6   function Function_Call_Parameters_Normalized
------------------------------------------------------------------------------

   function Function_Call_Parameters_Normalized return Boolean;

------------------------------------------------------------------------------
--  Returns True if the query Function_Call_Parameters will always return
--  artificial Is_Normalized associations using the defining_identifier instead
--  of the formal_parameter_selector_name, and using the default_expression.
--
--  if Function_Call_Parameters_Normalized then the query
--  Function_Call_Parameters will always behave as if called with
--  Normalized => True.
--
------------------------------------------------------------------------------
--  7.7   function Call_Statement_Parameters_Normalized
------------------------------------------------------------------------------

   function Call_Statement_Parameters_Normalized return Boolean;

------------------------------------------------------------------------------
--  Returns True if the query Call_Statement_Parameters will always return
--  artificial Is_Normalized associations using the defining_identifier instead
--  of the formal_parameter_selector_name, and using the default_expression.
--
--  if Call_Statement_Parameters_Normalized then the query
--  Call_Statement_Parameters will always behave as if called with
--  Normalized => True.
--
------------------------------------------------------------------------------
--  It is not possible to obtain either a normalized or
--  unnormalized Discriminant_Association list for an unconstrained record
--  or derived subtype_indication where the discriminant_association is
--  supplied by default; there is no constraint to query, and a Nil_Element
--  is returned from the query Subtype_Constraint.
--
------------------------------------------------------------------------------
--  7.8   function Discriminant_Associations_Normalized
------------------------------------------------------------------------------

   function Discriminant_Associations_Normalized return Boolean;

------------------------------------------------------------------------------
--  Returns True if the query Discriminant_Associations will always return
--  artificial Is_Normalized associations using the defining_identifier instead
--  of the discriminant_selector_name.
--
--  if Discriminant_Associations_Normalized then the query
--  Discriminant_Associations will always behave as if called with
--  Normalized => True.
--

------------------------------------------------------------------------------
--  7.9   function Is_Line_Number_Supported
------------------------------------------------------------------------------

   function Is_Line_Number_Supported return Boolean;

------------------------------------------------------------------------------
--  Returns True if the implementation can return valid line numbers for
--  Elements.
--
--  An implementation may choose to ignore line number values in which case
--  this function returns False.
--
------------------------------------------------------------------------------
--  7.10  function Is_Span_Column_Position_Supported
------------------------------------------------------------------------------

   function Is_Span_Column_Position_Supported return Boolean;

------------------------------------------------------------------------------
--  Returns True if the implementation can return valid character positions for
--  elements.
--
--  An implementation may choose to ignore column character position values
--  within spans in which case this function returns False.  This function will
--  be False if Is_Line_Number_Supported = False.
--
------------------------------------------------------------------------------
--  7.11  function Is_Commentary_Supported
------------------------------------------------------------------------------

   function Is_Commentary_Supported return Boolean;

------------------------------------------------------------------------------
--  Returns True if the implementation can return comments.
--
--  An implementation may choose to ignore comments in the text in which case
--  the function Is_Commentary_Supported returns False.
--
------------------------------------------------------------------------------
--  7.12  function Attributes_Are_Supported
------------------------------------------------------------------------------

   function Attributes_Are_Supported return Boolean;

------------------------------------------------------------------------------
--  Returns True if an implementation supports compilation unit attributes.
--  Returns False if all attributes will return Has_Attribute() = False.
--
------------------------------------------------------------------------------
--  7.13  function Implicit_Components_Supported
------------------------------------------------------------------------------

   function Implicit_Components_Supported return Boolean;

------------------------------------------------------------------------------
--  Returns True if the implementation provides elements representing
--  implicit implementation-defined record components.
--
------------------------------------------------------------------------------
--  7.14  function Object_Declarations_Normalized
------------------------------------------------------------------------------

   function Object_Declarations_Normalized return Boolean;

------------------------------------------------------------------------------
--  Returns True if the implementation normalizes multiple object declarations
--  to an equivalent sequence of single declarations.
--
------------------------------------------------------------------------------
--  7.15  function Predefined_Operations_Supported
------------------------------------------------------------------------------

   function Predefined_Operations_Supported return Boolean;

------------------------------------------------------------------------------
--  Returns True if the implementation supports queries of predefined
--  operations.
--
------------------------------------------------------------------------------
--  7.16  function Inherited_Declarations_Supported
------------------------------------------------------------------------------

   function Inherited_Declarations_Supported return Boolean;

------------------------------------------------------------------------------
--  Returns True if the implementation supports queries of inherited
--  declarations.
--
------------------------------------------------------------------------------
--  7.17  function Inherited_Subprograms_Supported
------------------------------------------------------------------------------

   function Inherited_Subprograms_Supported return Boolean;

------------------------------------------------------------------------------
--  Returns True if the implementation supports queries of inherited
--  subprograms.
--
------------------------------------------------------------------------------
--  7.18  function Generic_Macro_Expansion_Supported
------------------------------------------------------------------------------

   function Generic_Macro_Expansion_Supported return Boolean;

------------------------------------------------------------------------------
--  Returns True if the implementation expands generics using macros to
--  supports queries.
------------------------------------------------------------------------------

end Asis.Implementation.Permissions;