This file is indexed.

/usr/include/nickle/gram.h is in nickle 2.77-1.

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
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
/* A Bison parser, made by GNU Bison 2.5.  */

/* Bison interface for Yacc-like parsers in C
   
      Copyright (C) 1984, 1989-1990, 2000-2011 Free Software Foundation, Inc.
   
   This program is free software: you can redistribute it and/or modify
   it under the terms of the GNU General Public License as published by
   the Free Software Foundation, either version 3 of the License, or
   (at your option) any later version.
   
   This program is distributed in the hope that it will be useful,
   but WITHOUT ANY WARRANTY; without even the implied warranty of
   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
   GNU General Public License for more details.
   
   You should have received a copy of the GNU General Public License
   along with this program.  If not, see <http://www.gnu.org/licenses/>.  */

/* As a special exception, you may create a larger work that contains
   part or all of the Bison parser skeleton and distribute that work
   under terms of your choice, so long as that work isn't itself a
   parser generator using the skeleton or a modified version thereof
   as a parser skeleton.  Alternatively, if you modify or redistribute
   the parser skeleton itself, you may (at your option) remove this
   special exception, which will cause the skeleton and the resulting
   Bison output files to be licensed under the GNU General Public
   License without this special exception.
   
   This special exception was added by the Free Software Foundation in
   version 2.2 of Bison.  */


/* Tokens.  */
#ifndef YYTOKENTYPE
# define YYTOKENTYPE
   /* Put the tokens into the symbol table, so that GDB and other debuggers
      know about them.  */
   enum yytokentype {
     VAR = 258,
     EXPR = 259,
     ARRAY = 260,
     STRUCT = 261,
     UNION = 262,
     ENUM = 263,
     COMP = 264,
     HASH = 265,
     SEMI = 266,
     MOD = 267,
     OC = 268,
     CC = 269,
     DOLLAR = 270,
     DOTDOTDOT = 271,
     ENDFILE = 272,
     GLOBAL = 273,
     AUTO = 274,
     STATIC = 275,
     CONST = 276,
     POLY = 277,
     INTEGER = 278,
     NATURAL = 279,
     RATIONAL = 280,
     REAL = 281,
     STRING = 282,
     FOREIGN = 283,
     FILET = 284,
     MUTEX = 285,
     SEMAPHORE = 286,
     CONTINUATION = 287,
     THREAD = 288,
     VOID = 289,
     BOOL = 290,
     FUNCTION = 291,
     FUNC = 292,
     EXCEPTION = 293,
     RAISE = 294,
     TYPEDEF = 295,
     IMPORT = 296,
     NEW = 297,
     ANONINIT = 298,
     NAMESPACE = 299,
     PUBLIC = 300,
     PROTECTED = 301,
     EXTEND = 302,
     WHILE = 303,
     DO = 304,
     FOR = 305,
     SWITCH = 306,
     BREAK = 307,
     CONTINUE = 308,
     RETURNTOK = 309,
     FORK = 310,
     CASE = 311,
     DEFAULT = 312,
     TWIXT = 313,
     NAME = 314,
     TYPENAME = 315,
     NAMESPACENAME = 316,
     COMMAND = 317,
     NAMECOMMAND = 318,
     TEN_NUM = 319,
     OCTAL0_NUM = 320,
     OCTAL_NUM = 321,
     BINARY_NUM = 322,
     HEX_NUM = 323,
     TEN_FLOAT = 324,
     OCTAL0_FLOAT = 325,
     OCTAL_FLOAT = 326,
     BINARY_FLOAT = 327,
     HEX_FLOAT = 328,
     CHAR_CONST = 329,
     STRING_CONST = 330,
     POLY_CONST = 331,
     THREAD_CONST = 332,
     COMMENT_CONST = 333,
     VOIDVAL = 334,
     BOOLVAL = 335,
     DARROW = 336,
     ISTYPE = 337,
     HASMEMBER = 338,
     POUND = 339,
     COMMA = 340,
     ASSIGNAND = 341,
     ASSIGNOR = 342,
     ASSIGNLOR = 343,
     ASSIGNLAND = 344,
     ASSIGNLXOR = 345,
     ASSIGNSHIFTR = 346,
     ASSIGNSHIFTL = 347,
     ASSIGNPOW = 348,
     ASSIGNMOD = 349,
     ASSIGNDIV = 350,
     ASSIGNDIVIDE = 351,
     ASSIGNTIMES = 352,
     ASSIGNMINUS = 353,
     ASSIGNPLUS = 354,
     ASSIGN = 355,
     COLON = 356,
     QUEST = 357,
     OR = 358,
     AND = 359,
     LOR = 360,
     LXOR = 361,
     LAND = 362,
     NE = 363,
     EQ = 364,
     GE = 365,
     LE = 366,
     GT = 367,
     LT = 368,
     SHIFTR = 369,
     SHIFTL = 370,
     MINUS = 371,
     PLUS = 372,
     DIV = 373,
     DIVIDE = 374,
     TIMES = 375,
     POW3 = 376,
     POW2 = 377,
     STARSTAR = 378,
     POW = 379,
     UNIONCAST = 380,
     THREADID = 381,
     AMPER = 382,
     STAR = 383,
     DEC = 384,
     INC = 385,
     LNOT = 386,
     FACT = 387,
     BANG = 388,
     UMINUS = 389,
     CP = 390,
     OP = 391,
     CALL = 392,
     STAROS = 393,
     ARROW = 394,
     DOT = 395,
     CS = 396,
     OS = 397,
     POINTER = 398,
     COLONCOLON = 399,
     NONL = 400,
     TRY = 401,
     IF = 402,
     NL = 403,
     CATCH = 404,
     ELSE = 405
   };
#endif
/* Tokens.  */
#define VAR 258
#define EXPR 259
#define ARRAY 260
#define STRUCT 261
#define UNION 262
#define ENUM 263
#define COMP 264
#define HASH 265
#define SEMI 266
#define MOD 267
#define OC 268
#define CC 269
#define DOLLAR 270
#define DOTDOTDOT 271
#define ENDFILE 272
#define GLOBAL 273
#define AUTO 274
#define STATIC 275
#define CONST 276
#define POLY 277
#define INTEGER 278
#define NATURAL 279
#define RATIONAL 280
#define REAL 281
#define STRING 282
#define FOREIGN 283
#define FILET 284
#define MUTEX 285
#define SEMAPHORE 286
#define CONTINUATION 287
#define THREAD 288
#define VOID 289
#define BOOL 290
#define FUNCTION 291
#define FUNC 292
#define EXCEPTION 293
#define RAISE 294
#define TYPEDEF 295
#define IMPORT 296
#define NEW 297
#define ANONINIT 298
#define NAMESPACE 299
#define PUBLIC 300
#define PROTECTED 301
#define EXTEND 302
#define WHILE 303
#define DO 304
#define FOR 305
#define SWITCH 306
#define BREAK 307
#define CONTINUE 308
#define RETURNTOK 309
#define FORK 310
#define CASE 311
#define DEFAULT 312
#define TWIXT 313
#define NAME 314
#define TYPENAME 315
#define NAMESPACENAME 316
#define COMMAND 317
#define NAMECOMMAND 318
#define TEN_NUM 319
#define OCTAL0_NUM 320
#define OCTAL_NUM 321
#define BINARY_NUM 322
#define HEX_NUM 323
#define TEN_FLOAT 324
#define OCTAL0_FLOAT 325
#define OCTAL_FLOAT 326
#define BINARY_FLOAT 327
#define HEX_FLOAT 328
#define CHAR_CONST 329
#define STRING_CONST 330
#define POLY_CONST 331
#define THREAD_CONST 332
#define COMMENT_CONST 333
#define VOIDVAL 334
#define BOOLVAL 335
#define DARROW 336
#define ISTYPE 337
#define HASMEMBER 338
#define POUND 339
#define COMMA 340
#define ASSIGNAND 341
#define ASSIGNOR 342
#define ASSIGNLOR 343
#define ASSIGNLAND 344
#define ASSIGNLXOR 345
#define ASSIGNSHIFTR 346
#define ASSIGNSHIFTL 347
#define ASSIGNPOW 348
#define ASSIGNMOD 349
#define ASSIGNDIV 350
#define ASSIGNDIVIDE 351
#define ASSIGNTIMES 352
#define ASSIGNMINUS 353
#define ASSIGNPLUS 354
#define ASSIGN 355
#define COLON 356
#define QUEST 357
#define OR 358
#define AND 359
#define LOR 360
#define LXOR 361
#define LAND 362
#define NE 363
#define EQ 364
#define GE 365
#define LE 366
#define GT 367
#define LT 368
#define SHIFTR 369
#define SHIFTL 370
#define MINUS 371
#define PLUS 372
#define DIV 373
#define DIVIDE 374
#define TIMES 375
#define POW3 376
#define POW2 377
#define STARSTAR 378
#define POW 379
#define UNIONCAST 380
#define THREADID 381
#define AMPER 382
#define STAR 383
#define DEC 384
#define INC 385
#define LNOT 386
#define FACT 387
#define BANG 388
#define UMINUS 389
#define CP 390
#define OP 391
#define CALL 392
#define STAROS 393
#define ARROW 394
#define DOT 395
#define CS 396
#define OS 397
#define POINTER 398
#define COLONCOLON 399
#define NONL 400
#define TRY 401
#define IF 402
#define NL 403
#define CATCH 404
#define ELSE 405




#if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
typedef union YYSTYPE
{

/* Line 2068 of yacc.c  */
#line 72 "gram.y"

    int		    ints;
    Value	    value;
    Class	    class;
    ArgType	    *argType;
    Type	    *type;
    Publish	    publish;
    ExprPtr	    expr;
    Atom	    atom;
    DeclListPtr	    declList;
    MemListPtr	    memList;
    Fulltype	    fulltype;
    ArgDecl	    argDecl;
    SymbolPtr	    symbol;
    NamespacePtr    namespace;
    CodePtr	    code;
    Bool	    bool;
    AtomListPtr	    atomList;
    FuncDecl	    funcDecl;



/* Line 2068 of yacc.c  */
#line 373 "gram.h"
} YYSTYPE;
# define YYSTYPE_IS_TRIVIAL 1
# define yystype YYSTYPE /* obsolescent; will be withdrawn */
# define YYSTYPE_IS_DECLARED 1
#endif

extern YYSTYPE yylval;