xref: /freebsd/contrib/ntp/ntpd/ntp_parser.c (revision e27abb6689c5733dd08ce240d5402a0de3a42254)
1*e27abb66SXin LI /* A Bison parser, made by GNU Bison 3.0.4.  */
22b15cb3dSCy Schubert 
32b15cb3dSCy Schubert /* Bison implementation for Yacc-like parsers in C
42b15cb3dSCy Schubert 
5*e27abb66SXin LI    Copyright (C) 1984, 1989-1990, 2000-2015 Free Software Foundation, Inc.
62b15cb3dSCy Schubert 
72b15cb3dSCy Schubert    This program is free software: you can redistribute it and/or modify
82b15cb3dSCy Schubert    it under the terms of the GNU General Public License as published by
92b15cb3dSCy Schubert    the Free Software Foundation, either version 3 of the License, or
102b15cb3dSCy Schubert    (at your option) any later version.
112b15cb3dSCy Schubert 
122b15cb3dSCy Schubert    This program is distributed in the hope that it will be useful,
132b15cb3dSCy Schubert    but WITHOUT ANY WARRANTY; without even the implied warranty of
142b15cb3dSCy Schubert    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
152b15cb3dSCy Schubert    GNU General Public License for more details.
162b15cb3dSCy Schubert 
172b15cb3dSCy Schubert    You should have received a copy of the GNU General Public License
182b15cb3dSCy Schubert    along with this program.  If not, see <http://www.gnu.org/licenses/>.  */
192b15cb3dSCy Schubert 
202b15cb3dSCy Schubert /* As a special exception, you may create a larger work that contains
212b15cb3dSCy Schubert    part or all of the Bison parser skeleton and distribute that work
222b15cb3dSCy Schubert    under terms of your choice, so long as that work isn't itself a
232b15cb3dSCy Schubert    parser generator using the skeleton or a modified version thereof
242b15cb3dSCy Schubert    as a parser skeleton.  Alternatively, if you modify or redistribute
252b15cb3dSCy Schubert    the parser skeleton itself, you may (at your option) remove this
262b15cb3dSCy Schubert    special exception, which will cause the skeleton and the resulting
272b15cb3dSCy Schubert    Bison output files to be licensed under the GNU General Public
282b15cb3dSCy Schubert    License without this special exception.
292b15cb3dSCy Schubert 
302b15cb3dSCy Schubert    This special exception was added by the Free Software Foundation in
312b15cb3dSCy Schubert    version 2.2 of Bison.  */
322b15cb3dSCy Schubert 
332b15cb3dSCy Schubert /* C LALR(1) parser skeleton written by Richard Stallman, by
342b15cb3dSCy Schubert    simplifying the original so-called "semantic" parser.  */
352b15cb3dSCy Schubert 
362b15cb3dSCy Schubert /* All symbols defined below should begin with yy or YY, to avoid
372b15cb3dSCy Schubert    infringing on user name space.  This should be done even for local
382b15cb3dSCy Schubert    variables, as they might otherwise be expanded by user macros.
392b15cb3dSCy Schubert    There are some unavoidable exceptions within include files to
402b15cb3dSCy Schubert    define necessary library symbols; they are noted "INFRINGES ON
412b15cb3dSCy Schubert    USER NAME SPACE" below.  */
422b15cb3dSCy Schubert 
432b15cb3dSCy Schubert /* Identify Bison output.  */
442b15cb3dSCy Schubert #define YYBISON 1
452b15cb3dSCy Schubert 
462b15cb3dSCy Schubert /* Bison version.  */
47*e27abb66SXin LI #define YYBISON_VERSION "3.0.4"
482b15cb3dSCy Schubert 
492b15cb3dSCy Schubert /* Skeleton name.  */
502b15cb3dSCy Schubert #define YYSKELETON_NAME "yacc.c"
512b15cb3dSCy Schubert 
522b15cb3dSCy Schubert /* Pure parsers.  */
532b15cb3dSCy Schubert #define YYPURE 0
542b15cb3dSCy Schubert 
552b15cb3dSCy Schubert /* Push parsers.  */
562b15cb3dSCy Schubert #define YYPUSH 0
572b15cb3dSCy Schubert 
582b15cb3dSCy Schubert /* Pull parsers.  */
592b15cb3dSCy Schubert #define YYPULL 1
602b15cb3dSCy Schubert 
612b15cb3dSCy Schubert 
622b15cb3dSCy Schubert 
632b15cb3dSCy Schubert 
642b15cb3dSCy Schubert /* Copy the first part of user declarations.  */
65*e27abb66SXin LI #line 11 "../../ntpd/ntp_parser.y" /* yacc.c:339  */
662b15cb3dSCy Schubert 
672b15cb3dSCy Schubert   #ifdef HAVE_CONFIG_H
682b15cb3dSCy Schubert   # include <config.h>
692b15cb3dSCy Schubert   #endif
702b15cb3dSCy Schubert 
712b15cb3dSCy Schubert   #include "ntp.h"
722b15cb3dSCy Schubert   #include "ntpd.h"
732b15cb3dSCy Schubert   #include "ntp_machine.h"
742b15cb3dSCy Schubert   #include "ntp_stdlib.h"
752b15cb3dSCy Schubert   #include "ntp_filegen.h"
762b15cb3dSCy Schubert   #include "ntp_scanner.h"
772b15cb3dSCy Schubert   #include "ntp_config.h"
782b15cb3dSCy Schubert   #include "ntp_crypto.h"
792b15cb3dSCy Schubert 
802b15cb3dSCy Schubert   #include "ntpsim.h"		/* HMS: Do we really want this all the time? */
812b15cb3dSCy Schubert 				/* SK: It might be a good idea to always
822b15cb3dSCy Schubert 				   include the simulator code. That way
832b15cb3dSCy Schubert 				   someone can use the same configuration file
842b15cb3dSCy Schubert 				   for both the simulator and the daemon
852b15cb3dSCy Schubert 				*/
862b15cb3dSCy Schubert 
872b15cb3dSCy Schubert   #define YYMALLOC	emalloc
882b15cb3dSCy Schubert   #define YYFREE	free
892b15cb3dSCy Schubert   #define YYERROR_VERBOSE
902b15cb3dSCy Schubert   #define YYMAXDEPTH	1000	/* stop the madness sooner */
91276da39aSCy Schubert   void yyerror(const char *msg);
922b15cb3dSCy Schubert 
932b15cb3dSCy Schubert   #ifdef SIM
942b15cb3dSCy Schubert   #  define ONLY_SIM(a)	(a)
952b15cb3dSCy Schubert   #else
962b15cb3dSCy Schubert   #  define ONLY_SIM(a)	NULL
972b15cb3dSCy Schubert   #endif
982b15cb3dSCy Schubert 
99*e27abb66SXin LI #line 100 "../../ntpd/ntp_parser.c" /* yacc.c:339  */
1002b15cb3dSCy Schubert 
101*e27abb66SXin LI # ifndef YY_NULLPTR
1022b15cb3dSCy Schubert #  if defined __cplusplus && 201103L <= __cplusplus
103*e27abb66SXin LI #   define YY_NULLPTR nullptr
1042b15cb3dSCy Schubert #  else
105*e27abb66SXin LI #   define YY_NULLPTR 0
1062b15cb3dSCy Schubert #  endif
1072b15cb3dSCy Schubert # endif
1082b15cb3dSCy Schubert 
1092b15cb3dSCy Schubert /* Enabling verbose error messages.  */
1102b15cb3dSCy Schubert #ifdef YYERROR_VERBOSE
1112b15cb3dSCy Schubert # undef YYERROR_VERBOSE
1122b15cb3dSCy Schubert # define YYERROR_VERBOSE 1
1132b15cb3dSCy Schubert #else
1142b15cb3dSCy Schubert # define YYERROR_VERBOSE 0
1152b15cb3dSCy Schubert #endif
1162b15cb3dSCy Schubert 
1172b15cb3dSCy Schubert /* In a future release of Bison, this section will be replaced
1182b15cb3dSCy Schubert    by #include "y.tab.h".  */
119*e27abb66SXin LI #ifndef YY_YY_Y_TAB_H_INCLUDED
120*e27abb66SXin LI # define YY_YY_Y_TAB_H_INCLUDED
121*e27abb66SXin LI /* Debug traces.  */
1222b15cb3dSCy Schubert #ifndef YYDEBUG
1232b15cb3dSCy Schubert # define YYDEBUG 1
1242b15cb3dSCy Schubert #endif
1252b15cb3dSCy Schubert #if YYDEBUG
1262b15cb3dSCy Schubert extern int yydebug;
1272b15cb3dSCy Schubert #endif
1282b15cb3dSCy Schubert 
129*e27abb66SXin LI /* Token type.  */
1302b15cb3dSCy Schubert #ifndef YYTOKENTYPE
1312b15cb3dSCy Schubert # define YYTOKENTYPE
132*e27abb66SXin LI   enum yytokentype
133*e27abb66SXin LI   {
1342b15cb3dSCy Schubert     T_Abbrev = 258,
1352b15cb3dSCy Schubert     T_Age = 259,
1362b15cb3dSCy Schubert     T_All = 260,
1372b15cb3dSCy Schubert     T_Allan = 261,
1382b15cb3dSCy Schubert     T_Allpeers = 262,
1392b15cb3dSCy Schubert     T_Auth = 263,
1402b15cb3dSCy Schubert     T_Autokey = 264,
1412b15cb3dSCy Schubert     T_Automax = 265,
1422b15cb3dSCy Schubert     T_Average = 266,
1432b15cb3dSCy Schubert     T_Bclient = 267,
1442b15cb3dSCy Schubert     T_Beacon = 268,
1452b15cb3dSCy Schubert     T_Broadcast = 269,
1462b15cb3dSCy Schubert     T_Broadcastclient = 270,
1472b15cb3dSCy Schubert     T_Broadcastdelay = 271,
1482b15cb3dSCy Schubert     T_Burst = 272,
1492b15cb3dSCy Schubert     T_Calibrate = 273,
1502b15cb3dSCy Schubert     T_Ceiling = 274,
1512b15cb3dSCy Schubert     T_Clockstats = 275,
1522b15cb3dSCy Schubert     T_Cohort = 276,
1532b15cb3dSCy Schubert     T_ControlKey = 277,
1542b15cb3dSCy Schubert     T_Crypto = 278,
1552b15cb3dSCy Schubert     T_Cryptostats = 279,
1562b15cb3dSCy Schubert     T_Ctl = 280,
1572b15cb3dSCy Schubert     T_Day = 281,
1582b15cb3dSCy Schubert     T_Default = 282,
1592b15cb3dSCy Schubert     T_Digest = 283,
1602b15cb3dSCy Schubert     T_Disable = 284,
1612b15cb3dSCy Schubert     T_Discard = 285,
1622b15cb3dSCy Schubert     T_Dispersion = 286,
1632b15cb3dSCy Schubert     T_Double = 287,
1642b15cb3dSCy Schubert     T_Driftfile = 288,
1652b15cb3dSCy Schubert     T_Drop = 289,
166276da39aSCy Schubert     T_Dscp = 290,
167276da39aSCy Schubert     T_Ellipsis = 291,
168276da39aSCy Schubert     T_Enable = 292,
169276da39aSCy Schubert     T_End = 293,
170276da39aSCy Schubert     T_False = 294,
171276da39aSCy Schubert     T_File = 295,
172276da39aSCy Schubert     T_Filegen = 296,
173276da39aSCy Schubert     T_Filenum = 297,
174276da39aSCy Schubert     T_Flag1 = 298,
175276da39aSCy Schubert     T_Flag2 = 299,
176276da39aSCy Schubert     T_Flag3 = 300,
177276da39aSCy Schubert     T_Flag4 = 301,
178276da39aSCy Schubert     T_Flake = 302,
179276da39aSCy Schubert     T_Floor = 303,
180276da39aSCy Schubert     T_Freq = 304,
181276da39aSCy Schubert     T_Fudge = 305,
182276da39aSCy Schubert     T_Host = 306,
183276da39aSCy Schubert     T_Huffpuff = 307,
184276da39aSCy Schubert     T_Iburst = 308,
185276da39aSCy Schubert     T_Ident = 309,
186276da39aSCy Schubert     T_Ignore = 310,
187276da39aSCy Schubert     T_Incalloc = 311,
188276da39aSCy Schubert     T_Incmem = 312,
189276da39aSCy Schubert     T_Initalloc = 313,
190276da39aSCy Schubert     T_Initmem = 314,
191276da39aSCy Schubert     T_Includefile = 315,
192276da39aSCy Schubert     T_Integer = 316,
193276da39aSCy Schubert     T_Interface = 317,
194276da39aSCy Schubert     T_Intrange = 318,
195276da39aSCy Schubert     T_Io = 319,
196276da39aSCy Schubert     T_Ipv4 = 320,
197276da39aSCy Schubert     T_Ipv4_flag = 321,
198276da39aSCy Schubert     T_Ipv6 = 322,
199276da39aSCy Schubert     T_Ipv6_flag = 323,
200276da39aSCy Schubert     T_Kernel = 324,
201276da39aSCy Schubert     T_Key = 325,
202276da39aSCy Schubert     T_Keys = 326,
203276da39aSCy Schubert     T_Keysdir = 327,
204276da39aSCy Schubert     T_Kod = 328,
205276da39aSCy Schubert     T_Mssntp = 329,
206276da39aSCy Schubert     T_Leapfile = 330,
207276da39aSCy Schubert     T_Leapsmearinterval = 331,
208276da39aSCy Schubert     T_Limited = 332,
209276da39aSCy Schubert     T_Link = 333,
210276da39aSCy Schubert     T_Listen = 334,
211276da39aSCy Schubert     T_Logconfig = 335,
212276da39aSCy Schubert     T_Logfile = 336,
213276da39aSCy Schubert     T_Loopstats = 337,
214276da39aSCy Schubert     T_Lowpriotrap = 338,
215276da39aSCy Schubert     T_Manycastclient = 339,
216276da39aSCy Schubert     T_Manycastserver = 340,
217276da39aSCy Schubert     T_Mask = 341,
218276da39aSCy Schubert     T_Maxage = 342,
219276da39aSCy Schubert     T_Maxclock = 343,
220276da39aSCy Schubert     T_Maxdepth = 344,
221276da39aSCy Schubert     T_Maxdist = 345,
222276da39aSCy Schubert     T_Maxmem = 346,
223276da39aSCy Schubert     T_Maxpoll = 347,
224276da39aSCy Schubert     T_Mdnstries = 348,
225276da39aSCy Schubert     T_Mem = 349,
226276da39aSCy Schubert     T_Memlock = 350,
227276da39aSCy Schubert     T_Minclock = 351,
228276da39aSCy Schubert     T_Mindepth = 352,
229276da39aSCy Schubert     T_Mindist = 353,
230276da39aSCy Schubert     T_Minimum = 354,
231276da39aSCy Schubert     T_Minpoll = 355,
232276da39aSCy Schubert     T_Minsane = 356,
233276da39aSCy Schubert     T_Mode = 357,
234276da39aSCy Schubert     T_Mode7 = 358,
235276da39aSCy Schubert     T_Monitor = 359,
236276da39aSCy Schubert     T_Month = 360,
237276da39aSCy Schubert     T_Mru = 361,
238276da39aSCy Schubert     T_Multicastclient = 362,
239276da39aSCy Schubert     T_Nic = 363,
240276da39aSCy Schubert     T_Nolink = 364,
241276da39aSCy Schubert     T_Nomodify = 365,
242276da39aSCy Schubert     T_Nomrulist = 366,
243276da39aSCy Schubert     T_None = 367,
244276da39aSCy Schubert     T_Nonvolatile = 368,
245276da39aSCy Schubert     T_Nopeer = 369,
246276da39aSCy Schubert     T_Noquery = 370,
247276da39aSCy Schubert     T_Noselect = 371,
248276da39aSCy Schubert     T_Noserve = 372,
249276da39aSCy Schubert     T_Notrap = 373,
250276da39aSCy Schubert     T_Notrust = 374,
251276da39aSCy Schubert     T_Ntp = 375,
252276da39aSCy Schubert     T_Ntpport = 376,
253276da39aSCy Schubert     T_NtpSignDsocket = 377,
254276da39aSCy Schubert     T_Orphan = 378,
255276da39aSCy Schubert     T_Orphanwait = 379,
256*e27abb66SXin LI     T_PCEdigest = 380,
257*e27abb66SXin LI     T_Panic = 381,
258*e27abb66SXin LI     T_Peer = 382,
259*e27abb66SXin LI     T_Peerstats = 383,
260*e27abb66SXin LI     T_Phone = 384,
261*e27abb66SXin LI     T_Pid = 385,
262*e27abb66SXin LI     T_Pidfile = 386,
263*e27abb66SXin LI     T_Pool = 387,
264*e27abb66SXin LI     T_Port = 388,
265*e27abb66SXin LI     T_Preempt = 389,
266*e27abb66SXin LI     T_Prefer = 390,
267*e27abb66SXin LI     T_Protostats = 391,
268*e27abb66SXin LI     T_Pw = 392,
269*e27abb66SXin LI     T_Randfile = 393,
270*e27abb66SXin LI     T_Rawstats = 394,
271*e27abb66SXin LI     T_Refid = 395,
272*e27abb66SXin LI     T_Requestkey = 396,
273*e27abb66SXin LI     T_Reset = 397,
274*e27abb66SXin LI     T_Restrict = 398,
275*e27abb66SXin LI     T_Revoke = 399,
276*e27abb66SXin LI     T_Rlimit = 400,
277*e27abb66SXin LI     T_Saveconfigdir = 401,
278*e27abb66SXin LI     T_Server = 402,
279*e27abb66SXin LI     T_Setvar = 403,
280*e27abb66SXin LI     T_Source = 404,
281*e27abb66SXin LI     T_Stacksize = 405,
282*e27abb66SXin LI     T_Statistics = 406,
283*e27abb66SXin LI     T_Stats = 407,
284*e27abb66SXin LI     T_Statsdir = 408,
285*e27abb66SXin LI     T_Step = 409,
286*e27abb66SXin LI     T_Stepback = 410,
287*e27abb66SXin LI     T_Stepfwd = 411,
288*e27abb66SXin LI     T_Stepout = 412,
289*e27abb66SXin LI     T_Stratum = 413,
290*e27abb66SXin LI     T_String = 414,
291*e27abb66SXin LI     T_Sys = 415,
292*e27abb66SXin LI     T_Sysstats = 416,
293*e27abb66SXin LI     T_Tick = 417,
294*e27abb66SXin LI     T_Time1 = 418,
295*e27abb66SXin LI     T_Time2 = 419,
296*e27abb66SXin LI     T_Timer = 420,
297*e27abb66SXin LI     T_Timingstats = 421,
298*e27abb66SXin LI     T_Tinker = 422,
299*e27abb66SXin LI     T_Tos = 423,
300*e27abb66SXin LI     T_Trap = 424,
301*e27abb66SXin LI     T_True = 425,
302*e27abb66SXin LI     T_Trustedkey = 426,
303*e27abb66SXin LI     T_Ttl = 427,
304*e27abb66SXin LI     T_Type = 428,
305*e27abb66SXin LI     T_U_int = 429,
306*e27abb66SXin LI     T_UEcrypto = 430,
307*e27abb66SXin LI     T_UEcryptonak = 431,
308*e27abb66SXin LI     T_UEdigest = 432,
309*e27abb66SXin LI     T_Unconfig = 433,
310*e27abb66SXin LI     T_Unpeer = 434,
311*e27abb66SXin LI     T_Version = 435,
312*e27abb66SXin LI     T_WanderThreshold = 436,
313*e27abb66SXin LI     T_Week = 437,
314*e27abb66SXin LI     T_Wildcard = 438,
315*e27abb66SXin LI     T_Xleave = 439,
316*e27abb66SXin LI     T_Year = 440,
317*e27abb66SXin LI     T_Flag = 441,
318*e27abb66SXin LI     T_EOC = 442,
319*e27abb66SXin LI     T_Simulate = 443,
320*e27abb66SXin LI     T_Beep_Delay = 444,
321*e27abb66SXin LI     T_Sim_Duration = 445,
322*e27abb66SXin LI     T_Server_Offset = 446,
323*e27abb66SXin LI     T_Duration = 447,
324*e27abb66SXin LI     T_Freq_Offset = 448,
325*e27abb66SXin LI     T_Wander = 449,
326*e27abb66SXin LI     T_Jitter = 450,
327*e27abb66SXin LI     T_Prop_Delay = 451,
328*e27abb66SXin LI     T_Proc_Delay = 452
3292b15cb3dSCy Schubert   };
3302b15cb3dSCy Schubert #endif
3312b15cb3dSCy Schubert /* Tokens.  */
3322b15cb3dSCy Schubert #define T_Abbrev 258
3332b15cb3dSCy Schubert #define T_Age 259
3342b15cb3dSCy Schubert #define T_All 260
3352b15cb3dSCy Schubert #define T_Allan 261
3362b15cb3dSCy Schubert #define T_Allpeers 262
3372b15cb3dSCy Schubert #define T_Auth 263
3382b15cb3dSCy Schubert #define T_Autokey 264
3392b15cb3dSCy Schubert #define T_Automax 265
3402b15cb3dSCy Schubert #define T_Average 266
3412b15cb3dSCy Schubert #define T_Bclient 267
3422b15cb3dSCy Schubert #define T_Beacon 268
3432b15cb3dSCy Schubert #define T_Broadcast 269
3442b15cb3dSCy Schubert #define T_Broadcastclient 270
3452b15cb3dSCy Schubert #define T_Broadcastdelay 271
3462b15cb3dSCy Schubert #define T_Burst 272
3472b15cb3dSCy Schubert #define T_Calibrate 273
3482b15cb3dSCy Schubert #define T_Ceiling 274
3492b15cb3dSCy Schubert #define T_Clockstats 275
3502b15cb3dSCy Schubert #define T_Cohort 276
3512b15cb3dSCy Schubert #define T_ControlKey 277
3522b15cb3dSCy Schubert #define T_Crypto 278
3532b15cb3dSCy Schubert #define T_Cryptostats 279
3542b15cb3dSCy Schubert #define T_Ctl 280
3552b15cb3dSCy Schubert #define T_Day 281
3562b15cb3dSCy Schubert #define T_Default 282
3572b15cb3dSCy Schubert #define T_Digest 283
3582b15cb3dSCy Schubert #define T_Disable 284
3592b15cb3dSCy Schubert #define T_Discard 285
3602b15cb3dSCy Schubert #define T_Dispersion 286
3612b15cb3dSCy Schubert #define T_Double 287
3622b15cb3dSCy Schubert #define T_Driftfile 288
3632b15cb3dSCy Schubert #define T_Drop 289
364276da39aSCy Schubert #define T_Dscp 290
365276da39aSCy Schubert #define T_Ellipsis 291
366276da39aSCy Schubert #define T_Enable 292
367276da39aSCy Schubert #define T_End 293
368276da39aSCy Schubert #define T_False 294
369276da39aSCy Schubert #define T_File 295
370276da39aSCy Schubert #define T_Filegen 296
371276da39aSCy Schubert #define T_Filenum 297
372276da39aSCy Schubert #define T_Flag1 298
373276da39aSCy Schubert #define T_Flag2 299
374276da39aSCy Schubert #define T_Flag3 300
375276da39aSCy Schubert #define T_Flag4 301
376276da39aSCy Schubert #define T_Flake 302
377276da39aSCy Schubert #define T_Floor 303
378276da39aSCy Schubert #define T_Freq 304
379276da39aSCy Schubert #define T_Fudge 305
380276da39aSCy Schubert #define T_Host 306
381276da39aSCy Schubert #define T_Huffpuff 307
382276da39aSCy Schubert #define T_Iburst 308
383276da39aSCy Schubert #define T_Ident 309
384276da39aSCy Schubert #define T_Ignore 310
385276da39aSCy Schubert #define T_Incalloc 311
386276da39aSCy Schubert #define T_Incmem 312
387276da39aSCy Schubert #define T_Initalloc 313
388276da39aSCy Schubert #define T_Initmem 314
389276da39aSCy Schubert #define T_Includefile 315
390276da39aSCy Schubert #define T_Integer 316
391276da39aSCy Schubert #define T_Interface 317
392276da39aSCy Schubert #define T_Intrange 318
393276da39aSCy Schubert #define T_Io 319
394276da39aSCy Schubert #define T_Ipv4 320
395276da39aSCy Schubert #define T_Ipv4_flag 321
396276da39aSCy Schubert #define T_Ipv6 322
397276da39aSCy Schubert #define T_Ipv6_flag 323
398276da39aSCy Schubert #define T_Kernel 324
399276da39aSCy Schubert #define T_Key 325
400276da39aSCy Schubert #define T_Keys 326
401276da39aSCy Schubert #define T_Keysdir 327
402276da39aSCy Schubert #define T_Kod 328
403276da39aSCy Schubert #define T_Mssntp 329
404276da39aSCy Schubert #define T_Leapfile 330
405276da39aSCy Schubert #define T_Leapsmearinterval 331
406276da39aSCy Schubert #define T_Limited 332
407276da39aSCy Schubert #define T_Link 333
408276da39aSCy Schubert #define T_Listen 334
409276da39aSCy Schubert #define T_Logconfig 335
410276da39aSCy Schubert #define T_Logfile 336
411276da39aSCy Schubert #define T_Loopstats 337
412276da39aSCy Schubert #define T_Lowpriotrap 338
413276da39aSCy Schubert #define T_Manycastclient 339
414276da39aSCy Schubert #define T_Manycastserver 340
415276da39aSCy Schubert #define T_Mask 341
416276da39aSCy Schubert #define T_Maxage 342
417276da39aSCy Schubert #define T_Maxclock 343
418276da39aSCy Schubert #define T_Maxdepth 344
419276da39aSCy Schubert #define T_Maxdist 345
420276da39aSCy Schubert #define T_Maxmem 346
421276da39aSCy Schubert #define T_Maxpoll 347
422276da39aSCy Schubert #define T_Mdnstries 348
423276da39aSCy Schubert #define T_Mem 349
424276da39aSCy Schubert #define T_Memlock 350
425276da39aSCy Schubert #define T_Minclock 351
426276da39aSCy Schubert #define T_Mindepth 352
427276da39aSCy Schubert #define T_Mindist 353
428276da39aSCy Schubert #define T_Minimum 354
429276da39aSCy Schubert #define T_Minpoll 355
430276da39aSCy Schubert #define T_Minsane 356
431276da39aSCy Schubert #define T_Mode 357
432276da39aSCy Schubert #define T_Mode7 358
433276da39aSCy Schubert #define T_Monitor 359
434276da39aSCy Schubert #define T_Month 360
435276da39aSCy Schubert #define T_Mru 361
436276da39aSCy Schubert #define T_Multicastclient 362
437276da39aSCy Schubert #define T_Nic 363
438276da39aSCy Schubert #define T_Nolink 364
439276da39aSCy Schubert #define T_Nomodify 365
440276da39aSCy Schubert #define T_Nomrulist 366
441276da39aSCy Schubert #define T_None 367
442276da39aSCy Schubert #define T_Nonvolatile 368
443276da39aSCy Schubert #define T_Nopeer 369
444276da39aSCy Schubert #define T_Noquery 370
445276da39aSCy Schubert #define T_Noselect 371
446276da39aSCy Schubert #define T_Noserve 372
447276da39aSCy Schubert #define T_Notrap 373
448276da39aSCy Schubert #define T_Notrust 374
449276da39aSCy Schubert #define T_Ntp 375
450276da39aSCy Schubert #define T_Ntpport 376
451276da39aSCy Schubert #define T_NtpSignDsocket 377
452276da39aSCy Schubert #define T_Orphan 378
453276da39aSCy Schubert #define T_Orphanwait 379
454*e27abb66SXin LI #define T_PCEdigest 380
455*e27abb66SXin LI #define T_Panic 381
456*e27abb66SXin LI #define T_Peer 382
457*e27abb66SXin LI #define T_Peerstats 383
458*e27abb66SXin LI #define T_Phone 384
459*e27abb66SXin LI #define T_Pid 385
460*e27abb66SXin LI #define T_Pidfile 386
461*e27abb66SXin LI #define T_Pool 387
462*e27abb66SXin LI #define T_Port 388
463*e27abb66SXin LI #define T_Preempt 389
464*e27abb66SXin LI #define T_Prefer 390
465*e27abb66SXin LI #define T_Protostats 391
466*e27abb66SXin LI #define T_Pw 392
467*e27abb66SXin LI #define T_Randfile 393
468*e27abb66SXin LI #define T_Rawstats 394
469*e27abb66SXin LI #define T_Refid 395
470*e27abb66SXin LI #define T_Requestkey 396
471*e27abb66SXin LI #define T_Reset 397
472*e27abb66SXin LI #define T_Restrict 398
473*e27abb66SXin LI #define T_Revoke 399
474*e27abb66SXin LI #define T_Rlimit 400
475*e27abb66SXin LI #define T_Saveconfigdir 401
476*e27abb66SXin LI #define T_Server 402
477*e27abb66SXin LI #define T_Setvar 403
478*e27abb66SXin LI #define T_Source 404
479*e27abb66SXin LI #define T_Stacksize 405
480*e27abb66SXin LI #define T_Statistics 406
481*e27abb66SXin LI #define T_Stats 407
482*e27abb66SXin LI #define T_Statsdir 408
483*e27abb66SXin LI #define T_Step 409
484*e27abb66SXin LI #define T_Stepback 410
485*e27abb66SXin LI #define T_Stepfwd 411
486*e27abb66SXin LI #define T_Stepout 412
487*e27abb66SXin LI #define T_Stratum 413
488*e27abb66SXin LI #define T_String 414
489*e27abb66SXin LI #define T_Sys 415
490*e27abb66SXin LI #define T_Sysstats 416
491*e27abb66SXin LI #define T_Tick 417
492*e27abb66SXin LI #define T_Time1 418
493*e27abb66SXin LI #define T_Time2 419
494*e27abb66SXin LI #define T_Timer 420
495*e27abb66SXin LI #define T_Timingstats 421
496*e27abb66SXin LI #define T_Tinker 422
497*e27abb66SXin LI #define T_Tos 423
498*e27abb66SXin LI #define T_Trap 424
499*e27abb66SXin LI #define T_True 425
500*e27abb66SXin LI #define T_Trustedkey 426
501*e27abb66SXin LI #define T_Ttl 427
502*e27abb66SXin LI #define T_Type 428
503*e27abb66SXin LI #define T_U_int 429
504*e27abb66SXin LI #define T_UEcrypto 430
505*e27abb66SXin LI #define T_UEcryptonak 431
506*e27abb66SXin LI #define T_UEdigest 432
507*e27abb66SXin LI #define T_Unconfig 433
508*e27abb66SXin LI #define T_Unpeer 434
509*e27abb66SXin LI #define T_Version 435
510*e27abb66SXin LI #define T_WanderThreshold 436
511*e27abb66SXin LI #define T_Week 437
512*e27abb66SXin LI #define T_Wildcard 438
513*e27abb66SXin LI #define T_Xleave 439
514*e27abb66SXin LI #define T_Year 440
515*e27abb66SXin LI #define T_Flag 441
516*e27abb66SXin LI #define T_EOC 442
517*e27abb66SXin LI #define T_Simulate 443
518*e27abb66SXin LI #define T_Beep_Delay 444
519*e27abb66SXin LI #define T_Sim_Duration 445
520*e27abb66SXin LI #define T_Server_Offset 446
521*e27abb66SXin LI #define T_Duration 447
522*e27abb66SXin LI #define T_Freq_Offset 448
523*e27abb66SXin LI #define T_Wander 449
524*e27abb66SXin LI #define T_Jitter 450
525*e27abb66SXin LI #define T_Prop_Delay 451
526*e27abb66SXin LI #define T_Proc_Delay 452
5272b15cb3dSCy Schubert 
528*e27abb66SXin LI /* Value type.  */
5292b15cb3dSCy Schubert #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
530*e27abb66SXin LI 
531*e27abb66SXin LI union YYSTYPE
5322b15cb3dSCy Schubert {
533*e27abb66SXin LI #line 51 "../../ntpd/ntp_parser.y" /* yacc.c:355  */
5342b15cb3dSCy Schubert 
5352b15cb3dSCy Schubert 	char *			String;
5362b15cb3dSCy Schubert 	double			Double;
5372b15cb3dSCy Schubert 	int			Integer;
5382b15cb3dSCy Schubert 	unsigned		U_int;
5392b15cb3dSCy Schubert 	gen_fifo *		Generic_fifo;
5402b15cb3dSCy Schubert 	attr_val *		Attr_val;
5412b15cb3dSCy Schubert 	attr_val_fifo *		Attr_val_fifo;
5422b15cb3dSCy Schubert 	int_fifo *		Int_fifo;
5432b15cb3dSCy Schubert 	string_fifo *		String_fifo;
5442b15cb3dSCy Schubert 	address_node *		Address_node;
5452b15cb3dSCy Schubert 	address_fifo *		Address_fifo;
5462b15cb3dSCy Schubert 	setvar_node *		Set_var;
5472b15cb3dSCy Schubert 	server_info *		Sim_server;
5482b15cb3dSCy Schubert 	server_info_fifo *	Sim_server_fifo;
5492b15cb3dSCy Schubert 	script_info *		Sim_script;
5502b15cb3dSCy Schubert 	script_info_fifo *	Sim_script_fifo;
5512b15cb3dSCy Schubert 
552*e27abb66SXin LI #line 553 "../../ntpd/ntp_parser.c" /* yacc.c:355  */
553*e27abb66SXin LI };
55468ba7e87SXin LI 
555*e27abb66SXin LI typedef union YYSTYPE YYSTYPE;
5562b15cb3dSCy Schubert # define YYSTYPE_IS_TRIVIAL 1
5572b15cb3dSCy Schubert # define YYSTYPE_IS_DECLARED 1
5582b15cb3dSCy Schubert #endif
5592b15cb3dSCy Schubert 
560*e27abb66SXin LI 
5612b15cb3dSCy Schubert extern YYSTYPE yylval;
5622b15cb3dSCy Schubert 
563276da39aSCy Schubert int yyparse (void);
5642b15cb3dSCy Schubert 
565*e27abb66SXin LI #endif /* !YY_YY_Y_TAB_H_INCLUDED  */
5662b15cb3dSCy Schubert 
5672b15cb3dSCy Schubert /* Copy the second part of user declarations.  */
5682b15cb3dSCy Schubert 
569*e27abb66SXin LI #line 570 "../../ntpd/ntp_parser.c" /* yacc.c:358  */
5702b15cb3dSCy Schubert 
5712b15cb3dSCy Schubert #ifdef short
5722b15cb3dSCy Schubert # undef short
5732b15cb3dSCy Schubert #endif
5742b15cb3dSCy Schubert 
5752b15cb3dSCy Schubert #ifdef YYTYPE_UINT8
5762b15cb3dSCy Schubert typedef YYTYPE_UINT8 yytype_uint8;
5772b15cb3dSCy Schubert #else
5782b15cb3dSCy Schubert typedef unsigned char yytype_uint8;
5792b15cb3dSCy Schubert #endif
5802b15cb3dSCy Schubert 
5812b15cb3dSCy Schubert #ifdef YYTYPE_INT8
5822b15cb3dSCy Schubert typedef YYTYPE_INT8 yytype_int8;
58368ba7e87SXin LI #else
584*e27abb66SXin LI typedef signed char yytype_int8;
5852b15cb3dSCy Schubert #endif
5862b15cb3dSCy Schubert 
5872b15cb3dSCy Schubert #ifdef YYTYPE_UINT16
5882b15cb3dSCy Schubert typedef YYTYPE_UINT16 yytype_uint16;
5892b15cb3dSCy Schubert #else
5902b15cb3dSCy Schubert typedef unsigned short int yytype_uint16;
5912b15cb3dSCy Schubert #endif
5922b15cb3dSCy Schubert 
5932b15cb3dSCy Schubert #ifdef YYTYPE_INT16
5942b15cb3dSCy Schubert typedef YYTYPE_INT16 yytype_int16;
5952b15cb3dSCy Schubert #else
5962b15cb3dSCy Schubert typedef short int yytype_int16;
5972b15cb3dSCy Schubert #endif
5982b15cb3dSCy Schubert 
5992b15cb3dSCy Schubert #ifndef YYSIZE_T
6002b15cb3dSCy Schubert # ifdef __SIZE_TYPE__
6012b15cb3dSCy Schubert #  define YYSIZE_T __SIZE_TYPE__
6022b15cb3dSCy Schubert # elif defined size_t
6032b15cb3dSCy Schubert #  define YYSIZE_T size_t
604*e27abb66SXin LI # elif ! defined YYSIZE_T
6052b15cb3dSCy Schubert #  include <stddef.h> /* INFRINGES ON USER NAME SPACE */
6062b15cb3dSCy Schubert #  define YYSIZE_T size_t
6072b15cb3dSCy Schubert # else
6082b15cb3dSCy Schubert #  define YYSIZE_T unsigned int
6092b15cb3dSCy Schubert # endif
6102b15cb3dSCy Schubert #endif
6112b15cb3dSCy Schubert 
6122b15cb3dSCy Schubert #define YYSIZE_MAXIMUM ((YYSIZE_T) -1)
6132b15cb3dSCy Schubert 
6142b15cb3dSCy Schubert #ifndef YY_
6152b15cb3dSCy Schubert # if defined YYENABLE_NLS && YYENABLE_NLS
6162b15cb3dSCy Schubert #  if ENABLE_NLS
6172b15cb3dSCy Schubert #   include <libintl.h> /* INFRINGES ON USER NAME SPACE */
6182b15cb3dSCy Schubert #   define YY_(Msgid) dgettext ("bison-runtime", Msgid)
6192b15cb3dSCy Schubert #  endif
6202b15cb3dSCy Schubert # endif
6212b15cb3dSCy Schubert # ifndef YY_
6222b15cb3dSCy Schubert #  define YY_(Msgid) Msgid
6232b15cb3dSCy Schubert # endif
6242b15cb3dSCy Schubert #endif
6252b15cb3dSCy Schubert 
626*e27abb66SXin LI #ifndef YY_ATTRIBUTE
627*e27abb66SXin LI # if (defined __GNUC__                                               \
628*e27abb66SXin LI       && (2 < __GNUC__ || (__GNUC__ == 2 && 96 <= __GNUC_MINOR__)))  \
629*e27abb66SXin LI      || defined __SUNPRO_C && 0x5110 <= __SUNPRO_C
630*e27abb66SXin LI #  define YY_ATTRIBUTE(Spec) __attribute__(Spec)
631*e27abb66SXin LI # else
632*e27abb66SXin LI #  define YY_ATTRIBUTE(Spec) /* empty */
633*e27abb66SXin LI # endif
634*e27abb66SXin LI #endif
635*e27abb66SXin LI 
636*e27abb66SXin LI #ifndef YY_ATTRIBUTE_PURE
637*e27abb66SXin LI # define YY_ATTRIBUTE_PURE   YY_ATTRIBUTE ((__pure__))
638*e27abb66SXin LI #endif
639*e27abb66SXin LI 
640*e27abb66SXin LI #ifndef YY_ATTRIBUTE_UNUSED
641*e27abb66SXin LI # define YY_ATTRIBUTE_UNUSED YY_ATTRIBUTE ((__unused__))
642*e27abb66SXin LI #endif
643*e27abb66SXin LI 
644*e27abb66SXin LI #if !defined _Noreturn \
645*e27abb66SXin LI      && (!defined __STDC_VERSION__ || __STDC_VERSION__ < 201112)
646*e27abb66SXin LI # if defined _MSC_VER && 1200 <= _MSC_VER
647*e27abb66SXin LI #  define _Noreturn __declspec (noreturn)
648*e27abb66SXin LI # else
649*e27abb66SXin LI #  define _Noreturn YY_ATTRIBUTE ((__noreturn__))
6502b15cb3dSCy Schubert # endif
6512b15cb3dSCy Schubert #endif
6522b15cb3dSCy Schubert 
6532b15cb3dSCy Schubert /* Suppress unused-variable warnings by "using" E.  */
6542b15cb3dSCy Schubert #if ! defined lint || defined __GNUC__
6552b15cb3dSCy Schubert # define YYUSE(E) ((void) (E))
6562b15cb3dSCy Schubert #else
6572b15cb3dSCy Schubert # define YYUSE(E) /* empty */
6582b15cb3dSCy Schubert #endif
6592b15cb3dSCy Schubert 
660*e27abb66SXin LI #if defined __GNUC__ && 407 <= __GNUC__ * 100 + __GNUC_MINOR__
661*e27abb66SXin LI /* Suppress an incorrect diagnostic about yylval being uninitialized.  */
662*e27abb66SXin LI # define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN \
663*e27abb66SXin LI     _Pragma ("GCC diagnostic push") \
664*e27abb66SXin LI     _Pragma ("GCC diagnostic ignored \"-Wuninitialized\"")\
665*e27abb66SXin LI     _Pragma ("GCC diagnostic ignored \"-Wmaybe-uninitialized\"")
666*e27abb66SXin LI # define YY_IGNORE_MAYBE_UNINITIALIZED_END \
667*e27abb66SXin LI     _Pragma ("GCC diagnostic pop")
668*e27abb66SXin LI #else
669*e27abb66SXin LI # define YY_INITIAL_VALUE(Value) Value
670*e27abb66SXin LI #endif
671*e27abb66SXin LI #ifndef YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
672*e27abb66SXin LI # define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
673*e27abb66SXin LI # define YY_IGNORE_MAYBE_UNINITIALIZED_END
674*e27abb66SXin LI #endif
675*e27abb66SXin LI #ifndef YY_INITIAL_VALUE
676*e27abb66SXin LI # define YY_INITIAL_VALUE(Value) /* Nothing. */
677*e27abb66SXin LI #endif
6782b15cb3dSCy Schubert 
6792b15cb3dSCy Schubert 
6802b15cb3dSCy Schubert #if ! defined yyoverflow || YYERROR_VERBOSE
6812b15cb3dSCy Schubert 
6822b15cb3dSCy Schubert /* The parser invokes alloca or malloc; define the necessary symbols.  */
6832b15cb3dSCy Schubert 
6842b15cb3dSCy Schubert # ifdef YYSTACK_USE_ALLOCA
6852b15cb3dSCy Schubert #  if YYSTACK_USE_ALLOCA
6862b15cb3dSCy Schubert #   ifdef __GNUC__
6872b15cb3dSCy Schubert #    define YYSTACK_ALLOC __builtin_alloca
6882b15cb3dSCy Schubert #   elif defined __BUILTIN_VA_ARG_INCR
6892b15cb3dSCy Schubert #    include <alloca.h> /* INFRINGES ON USER NAME SPACE */
6902b15cb3dSCy Schubert #   elif defined _AIX
6912b15cb3dSCy Schubert #    define YYSTACK_ALLOC __alloca
6922b15cb3dSCy Schubert #   elif defined _MSC_VER
6932b15cb3dSCy Schubert #    include <malloc.h> /* INFRINGES ON USER NAME SPACE */
6942b15cb3dSCy Schubert #    define alloca _alloca
6952b15cb3dSCy Schubert #   else
6962b15cb3dSCy Schubert #    define YYSTACK_ALLOC alloca
697*e27abb66SXin LI #    if ! defined _ALLOCA_H && ! defined EXIT_SUCCESS
6982b15cb3dSCy Schubert #     include <stdlib.h> /* INFRINGES ON USER NAME SPACE */
6992b15cb3dSCy Schubert       /* Use EXIT_SUCCESS as a witness for stdlib.h.  */
7002b15cb3dSCy Schubert #     ifndef EXIT_SUCCESS
7012b15cb3dSCy Schubert #      define EXIT_SUCCESS 0
7022b15cb3dSCy Schubert #     endif
7032b15cb3dSCy Schubert #    endif
7042b15cb3dSCy Schubert #   endif
7052b15cb3dSCy Schubert #  endif
7062b15cb3dSCy Schubert # endif
7072b15cb3dSCy Schubert 
7082b15cb3dSCy Schubert # ifdef YYSTACK_ALLOC
709*e27abb66SXin LI    /* Pacify GCC's 'empty if-body' warning.  */
710*e27abb66SXin LI #  define YYSTACK_FREE(Ptr) do { /* empty */; } while (0)
7112b15cb3dSCy Schubert #  ifndef YYSTACK_ALLOC_MAXIMUM
7122b15cb3dSCy Schubert     /* The OS might guarantee only one guard page at the bottom of the stack,
7132b15cb3dSCy Schubert        and a page size can be as small as 4096 bytes.  So we cannot safely
7142b15cb3dSCy Schubert        invoke alloca (N) if N exceeds 4096.  Use a slightly smaller number
7152b15cb3dSCy Schubert        to allow for a few compiler-allocated temporary stack slots.  */
7162b15cb3dSCy Schubert #   define YYSTACK_ALLOC_MAXIMUM 4032 /* reasonable circa 2006 */
7172b15cb3dSCy Schubert #  endif
7182b15cb3dSCy Schubert # else
7192b15cb3dSCy Schubert #  define YYSTACK_ALLOC YYMALLOC
7202b15cb3dSCy Schubert #  define YYSTACK_FREE YYFREE
7212b15cb3dSCy Schubert #  ifndef YYSTACK_ALLOC_MAXIMUM
7222b15cb3dSCy Schubert #   define YYSTACK_ALLOC_MAXIMUM YYSIZE_MAXIMUM
7232b15cb3dSCy Schubert #  endif
7242b15cb3dSCy Schubert #  if (defined __cplusplus && ! defined EXIT_SUCCESS \
7252b15cb3dSCy Schubert        && ! ((defined YYMALLOC || defined malloc) \
7262b15cb3dSCy Schubert              && (defined YYFREE || defined free)))
7272b15cb3dSCy Schubert #   include <stdlib.h> /* INFRINGES ON USER NAME SPACE */
7282b15cb3dSCy Schubert #   ifndef EXIT_SUCCESS
7292b15cb3dSCy Schubert #    define EXIT_SUCCESS 0
7302b15cb3dSCy Schubert #   endif
7312b15cb3dSCy Schubert #  endif
7322b15cb3dSCy Schubert #  ifndef YYMALLOC
7332b15cb3dSCy Schubert #   define YYMALLOC malloc
734*e27abb66SXin LI #   if ! defined malloc && ! defined EXIT_SUCCESS
7352b15cb3dSCy Schubert void *malloc (YYSIZE_T); /* INFRINGES ON USER NAME SPACE */
7362b15cb3dSCy Schubert #   endif
7372b15cb3dSCy Schubert #  endif
7382b15cb3dSCy Schubert #  ifndef YYFREE
7392b15cb3dSCy Schubert #   define YYFREE free
740*e27abb66SXin LI #   if ! defined free && ! defined EXIT_SUCCESS
7412b15cb3dSCy Schubert void free (void *); /* INFRINGES ON USER NAME SPACE */
7422b15cb3dSCy Schubert #   endif
7432b15cb3dSCy Schubert #  endif
7442b15cb3dSCy Schubert # endif
7452b15cb3dSCy Schubert #endif /* ! defined yyoverflow || YYERROR_VERBOSE */
7462b15cb3dSCy Schubert 
7472b15cb3dSCy Schubert 
7482b15cb3dSCy Schubert #if (! defined yyoverflow \
7492b15cb3dSCy Schubert      && (! defined __cplusplus \
7502b15cb3dSCy Schubert          || (defined YYSTYPE_IS_TRIVIAL && YYSTYPE_IS_TRIVIAL)))
7512b15cb3dSCy Schubert 
7522b15cb3dSCy Schubert /* A type that is properly aligned for any stack member.  */
7532b15cb3dSCy Schubert union yyalloc
7542b15cb3dSCy Schubert {
7552b15cb3dSCy Schubert   yytype_int16 yyss_alloc;
7562b15cb3dSCy Schubert   YYSTYPE yyvs_alloc;
7572b15cb3dSCy Schubert };
7582b15cb3dSCy Schubert 
7592b15cb3dSCy Schubert /* The size of the maximum gap between one aligned stack and the next.  */
7602b15cb3dSCy Schubert # define YYSTACK_GAP_MAXIMUM (sizeof (union yyalloc) - 1)
7612b15cb3dSCy Schubert 
7622b15cb3dSCy Schubert /* The size of an array large to enough to hold all stacks, each with
7632b15cb3dSCy Schubert    N elements.  */
7642b15cb3dSCy Schubert # define YYSTACK_BYTES(N) \
7652b15cb3dSCy Schubert      ((N) * (sizeof (yytype_int16) + sizeof (YYSTYPE)) \
7662b15cb3dSCy Schubert       + YYSTACK_GAP_MAXIMUM)
7672b15cb3dSCy Schubert 
7682b15cb3dSCy Schubert # define YYCOPY_NEEDED 1
7692b15cb3dSCy Schubert 
7702b15cb3dSCy Schubert /* Relocate STACK from its old location to the new one.  The
7712b15cb3dSCy Schubert    local variables YYSIZE and YYSTACKSIZE give the old and new number of
7722b15cb3dSCy Schubert    elements in the stack, and YYPTR gives the new location of the
7732b15cb3dSCy Schubert    stack.  Advance YYPTR to a properly aligned location for the next
7742b15cb3dSCy Schubert    stack.  */
7752b15cb3dSCy Schubert # define YYSTACK_RELOCATE(Stack_alloc, Stack)                           \
7762b15cb3dSCy Schubert     do                                                                  \
7772b15cb3dSCy Schubert       {                                                                 \
7782b15cb3dSCy Schubert         YYSIZE_T yynewbytes;                                            \
7792b15cb3dSCy Schubert         YYCOPY (&yyptr->Stack_alloc, Stack, yysize);                    \
7802b15cb3dSCy Schubert         Stack = &yyptr->Stack_alloc;                                    \
7812b15cb3dSCy Schubert         yynewbytes = yystacksize * sizeof (*Stack) + YYSTACK_GAP_MAXIMUM; \
7822b15cb3dSCy Schubert         yyptr += yynewbytes / sizeof (*yyptr);                          \
7832b15cb3dSCy Schubert       }                                                                 \
784*e27abb66SXin LI     while (0)
7852b15cb3dSCy Schubert 
7862b15cb3dSCy Schubert #endif
7872b15cb3dSCy Schubert 
7882b15cb3dSCy Schubert #if defined YYCOPY_NEEDED && YYCOPY_NEEDED
7892b15cb3dSCy Schubert /* Copy COUNT objects from SRC to DST.  The source and destination do
7902b15cb3dSCy Schubert    not overlap.  */
7912b15cb3dSCy Schubert # ifndef YYCOPY
7922b15cb3dSCy Schubert #  if defined __GNUC__ && 1 < __GNUC__
7932b15cb3dSCy Schubert #   define YYCOPY(Dst, Src, Count) \
7942b15cb3dSCy Schubert       __builtin_memcpy (Dst, Src, (Count) * sizeof (*(Src)))
7952b15cb3dSCy Schubert #  else
7962b15cb3dSCy Schubert #   define YYCOPY(Dst, Src, Count)              \
7972b15cb3dSCy Schubert       do                                        \
7982b15cb3dSCy Schubert         {                                       \
7992b15cb3dSCy Schubert           YYSIZE_T yyi;                         \
8002b15cb3dSCy Schubert           for (yyi = 0; yyi < (Count); yyi++)   \
8012b15cb3dSCy Schubert             (Dst)[yyi] = (Src)[yyi];            \
8022b15cb3dSCy Schubert         }                                       \
803*e27abb66SXin LI       while (0)
8042b15cb3dSCy Schubert #  endif
8052b15cb3dSCy Schubert # endif
8062b15cb3dSCy Schubert #endif /* !YYCOPY_NEEDED */
8072b15cb3dSCy Schubert 
8082b15cb3dSCy Schubert /* YYFINAL -- State number of the termination state.  */
809*e27abb66SXin LI #define YYFINAL  214
8102b15cb3dSCy Schubert /* YYLAST -- Last index in YYTABLE.  */
811*e27abb66SXin LI #define YYLAST   655
8122b15cb3dSCy Schubert 
8132b15cb3dSCy Schubert /* YYNTOKENS -- Number of terminals.  */
814*e27abb66SXin LI #define YYNTOKENS  203
8152b15cb3dSCy Schubert /* YYNNTS -- Number of nonterminals.  */
816276da39aSCy Schubert #define YYNNTS  105
8172b15cb3dSCy Schubert /* YYNRULES -- Number of rules.  */
818*e27abb66SXin LI #define YYNRULES  317
819*e27abb66SXin LI /* YYNSTATES -- Number of states.  */
820*e27abb66SXin LI #define YYNSTATES  423
8212b15cb3dSCy Schubert 
822*e27abb66SXin LI /* YYTRANSLATE[YYX] -- Symbol number corresponding to YYX as returned
823*e27abb66SXin LI    by yylex, with out-of-bounds checking.  */
8242b15cb3dSCy Schubert #define YYUNDEFTOK  2
825*e27abb66SXin LI #define YYMAXUTOK   452
8262b15cb3dSCy Schubert 
8272b15cb3dSCy Schubert #define YYTRANSLATE(YYX)                                                \
8282b15cb3dSCy Schubert   ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)
8292b15cb3dSCy Schubert 
830*e27abb66SXin LI /* YYTRANSLATE[TOKEN-NUM] -- Symbol number corresponding to TOKEN-NUM
831*e27abb66SXin LI    as returned by yylex, without out-of-bounds checking.  */
8322b15cb3dSCy Schubert static const yytype_uint8 yytranslate[] =
8332b15cb3dSCy Schubert {
8342b15cb3dSCy Schubert        0,     2,     2,     2,     2,     2,     2,     2,     2,     2,
8352b15cb3dSCy Schubert        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
8362b15cb3dSCy Schubert        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
8372b15cb3dSCy Schubert        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
838*e27abb66SXin LI      199,   200,     2,     2,     2,     2,     2,     2,     2,     2,
8392b15cb3dSCy Schubert        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
840*e27abb66SXin LI        2,   198,     2,     2,     2,     2,     2,     2,     2,     2,
8412b15cb3dSCy Schubert        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
8422b15cb3dSCy Schubert        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
8432b15cb3dSCy Schubert        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
8442b15cb3dSCy Schubert        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
8452b15cb3dSCy Schubert        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
846*e27abb66SXin LI        2,     2,     2,   201,     2,   202,     2,     2,     2,     2,
8472b15cb3dSCy Schubert        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
8482b15cb3dSCy Schubert        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
8492b15cb3dSCy Schubert        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
8502b15cb3dSCy Schubert        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
8512b15cb3dSCy Schubert        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
8522b15cb3dSCy Schubert        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
8532b15cb3dSCy Schubert        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
8542b15cb3dSCy Schubert        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
8552b15cb3dSCy Schubert        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
8562b15cb3dSCy Schubert        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
8572b15cb3dSCy Schubert        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
8582b15cb3dSCy Schubert        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
8592b15cb3dSCy Schubert        2,     2,     2,     2,     2,     2,     1,     2,     3,     4,
8602b15cb3dSCy Schubert        5,     6,     7,     8,     9,    10,    11,    12,    13,    14,
8612b15cb3dSCy Schubert       15,    16,    17,    18,    19,    20,    21,    22,    23,    24,
8622b15cb3dSCy Schubert       25,    26,    27,    28,    29,    30,    31,    32,    33,    34,
8632b15cb3dSCy Schubert       35,    36,    37,    38,    39,    40,    41,    42,    43,    44,
8642b15cb3dSCy Schubert       45,    46,    47,    48,    49,    50,    51,    52,    53,    54,
8652b15cb3dSCy Schubert       55,    56,    57,    58,    59,    60,    61,    62,    63,    64,
8662b15cb3dSCy Schubert       65,    66,    67,    68,    69,    70,    71,    72,    73,    74,
8672b15cb3dSCy Schubert       75,    76,    77,    78,    79,    80,    81,    82,    83,    84,
8682b15cb3dSCy Schubert       85,    86,    87,    88,    89,    90,    91,    92,    93,    94,
8692b15cb3dSCy Schubert       95,    96,    97,    98,    99,   100,   101,   102,   103,   104,
8702b15cb3dSCy Schubert      105,   106,   107,   108,   109,   110,   111,   112,   113,   114,
8712b15cb3dSCy Schubert      115,   116,   117,   118,   119,   120,   121,   122,   123,   124,
8722b15cb3dSCy Schubert      125,   126,   127,   128,   129,   130,   131,   132,   133,   134,
8732b15cb3dSCy Schubert      135,   136,   137,   138,   139,   140,   141,   142,   143,   144,
8742b15cb3dSCy Schubert      145,   146,   147,   148,   149,   150,   151,   152,   153,   154,
8752b15cb3dSCy Schubert      155,   156,   157,   158,   159,   160,   161,   162,   163,   164,
8762b15cb3dSCy Schubert      165,   166,   167,   168,   169,   170,   171,   172,   173,   174,
8772b15cb3dSCy Schubert      175,   176,   177,   178,   179,   180,   181,   182,   183,   184,
87868ba7e87SXin LI      185,   186,   187,   188,   189,   190,   191,   192,   193,   194,
879*e27abb66SXin LI      195,   196,   197
8802b15cb3dSCy Schubert };
8812b15cb3dSCy Schubert 
8822b15cb3dSCy Schubert #if YYDEBUG
883*e27abb66SXin LI   /* YYRLINE[YYN] -- Source line where rule number YYN was defined.  */
8842b15cb3dSCy Schubert static const yytype_uint16 yyrline[] =
8852b15cb3dSCy Schubert {
886*e27abb66SXin LI        0,   370,   370,   374,   375,   376,   391,   392,   393,   394,
887*e27abb66SXin LI      395,   396,   397,   398,   399,   400,   401,   402,   403,   404,
888*e27abb66SXin LI      412,   422,   423,   424,   425,   426,   430,   431,   436,   441,
889*e27abb66SXin LI      443,   449,   450,   458,   459,   460,   464,   469,   470,   471,
890*e27abb66SXin LI      472,   473,   474,   475,   476,   480,   482,   487,   488,   489,
891*e27abb66SXin LI      490,   491,   492,   496,   501,   510,   520,   521,   531,   533,
892*e27abb66SXin LI      535,   537,   548,   555,   557,   562,   564,   566,   568,   570,
893*e27abb66SXin LI      579,   585,   586,   594,   596,   608,   609,   610,   611,   612,
894*e27abb66SXin LI      621,   626,   631,   639,   641,   643,   648,   649,   650,   651,
895*e27abb66SXin LI      652,   653,   657,   658,   659,   660,   669,   671,   680,   690,
896*e27abb66SXin LI      695,   703,   704,   705,   706,   707,   708,   709,   710,   715,
897*e27abb66SXin LI      716,   724,   734,   743,   758,   763,   764,   768,   769,   773,
898*e27abb66SXin LI      774,   775,   776,   777,   778,   779,   788,   792,   796,   804,
899*e27abb66SXin LI      812,   820,   835,   850,   863,   864,   872,   873,   874,   875,
900*e27abb66SXin LI      876,   877,   878,   879,   880,   881,   882,   883,   884,   885,
901*e27abb66SXin LI      886,   890,   895,   903,   908,   909,   910,   914,   919,   927,
902*e27abb66SXin LI      932,   933,   934,   935,   936,   937,   938,   939,   947,   957,
903*e27abb66SXin LI      962,   970,   972,   974,   983,   985,   990,   991,   995,   996,
904*e27abb66SXin LI      997,   998,  1006,  1011,  1016,  1024,  1029,  1030,  1031,  1040,
905*e27abb66SXin LI     1042,  1047,  1052,  1060,  1062,  1079,  1080,  1081,  1082,  1083,
906*e27abb66SXin LI     1084,  1088,  1089,  1090,  1091,  1092,  1093,  1101,  1106,  1111,
907*e27abb66SXin LI     1119,  1124,  1125,  1126,  1127,  1128,  1129,  1130,  1131,  1132,
908*e27abb66SXin LI     1133,  1142,  1143,  1144,  1151,  1158,  1165,  1181,  1200,  1202,
909*e27abb66SXin LI     1204,  1206,  1208,  1210,  1217,  1222,  1223,  1224,  1228,  1232,
910*e27abb66SXin LI     1241,  1242,  1246,  1247,  1248,  1252,  1263,  1277,  1289,  1294,
911*e27abb66SXin LI     1296,  1301,  1302,  1310,  1312,  1320,  1325,  1333,  1358,  1365,
912*e27abb66SXin LI     1375,  1376,  1380,  1381,  1382,  1383,  1387,  1388,  1389,  1393,
913*e27abb66SXin LI     1398,  1403,  1411,  1412,  1413,  1414,  1415,  1416,  1417,  1427,
914*e27abb66SXin LI     1432,  1440,  1445,  1453,  1455,  1459,  1464,  1469,  1477,  1482,
915*e27abb66SXin LI     1490,  1499,  1500,  1504,  1505,  1514,  1532,  1536,  1541,  1549,
916*e27abb66SXin LI     1554,  1555,  1559,  1564,  1572,  1577,  1582,  1587,  1592,  1600,
917*e27abb66SXin LI     1605,  1610,  1618,  1623,  1624,  1625,  1626,  1627
9182b15cb3dSCy Schubert };
9192b15cb3dSCy Schubert #endif
9202b15cb3dSCy Schubert 
9212b15cb3dSCy Schubert #if YYDEBUG || YYERROR_VERBOSE || 1
9222b15cb3dSCy Schubert /* YYTNAME[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM.
9232b15cb3dSCy Schubert    First, the terminals, then, starting at YYNTOKENS, nonterminals.  */
9242b15cb3dSCy Schubert static const char *const yytname[] =
9252b15cb3dSCy Schubert {
9262b15cb3dSCy Schubert   "$end", "error", "$undefined", "T_Abbrev", "T_Age", "T_All", "T_Allan",
9272b15cb3dSCy Schubert   "T_Allpeers", "T_Auth", "T_Autokey", "T_Automax", "T_Average",
9282b15cb3dSCy Schubert   "T_Bclient", "T_Beacon", "T_Broadcast", "T_Broadcastclient",
9292b15cb3dSCy Schubert   "T_Broadcastdelay", "T_Burst", "T_Calibrate", "T_Ceiling",
9302b15cb3dSCy Schubert   "T_Clockstats", "T_Cohort", "T_ControlKey", "T_Crypto", "T_Cryptostats",
9312b15cb3dSCy Schubert   "T_Ctl", "T_Day", "T_Default", "T_Digest", "T_Disable", "T_Discard",
932276da39aSCy Schubert   "T_Dispersion", "T_Double", "T_Driftfile", "T_Drop", "T_Dscp",
933276da39aSCy Schubert   "T_Ellipsis", "T_Enable", "T_End", "T_False", "T_File", "T_Filegen",
934276da39aSCy Schubert   "T_Filenum", "T_Flag1", "T_Flag2", "T_Flag3", "T_Flag4", "T_Flake",
935276da39aSCy Schubert   "T_Floor", "T_Freq", "T_Fudge", "T_Host", "T_Huffpuff", "T_Iburst",
936276da39aSCy Schubert   "T_Ident", "T_Ignore", "T_Incalloc", "T_Incmem", "T_Initalloc",
937276da39aSCy Schubert   "T_Initmem", "T_Includefile", "T_Integer", "T_Interface", "T_Intrange",
938276da39aSCy Schubert   "T_Io", "T_Ipv4", "T_Ipv4_flag", "T_Ipv6", "T_Ipv6_flag", "T_Kernel",
939276da39aSCy Schubert   "T_Key", "T_Keys", "T_Keysdir", "T_Kod", "T_Mssntp", "T_Leapfile",
940276da39aSCy Schubert   "T_Leapsmearinterval", "T_Limited", "T_Link", "T_Listen", "T_Logconfig",
941276da39aSCy Schubert   "T_Logfile", "T_Loopstats", "T_Lowpriotrap", "T_Manycastclient",
942276da39aSCy Schubert   "T_Manycastserver", "T_Mask", "T_Maxage", "T_Maxclock", "T_Maxdepth",
943276da39aSCy Schubert   "T_Maxdist", "T_Maxmem", "T_Maxpoll", "T_Mdnstries", "T_Mem",
944276da39aSCy Schubert   "T_Memlock", "T_Minclock", "T_Mindepth", "T_Mindist", "T_Minimum",
945276da39aSCy Schubert   "T_Minpoll", "T_Minsane", "T_Mode", "T_Mode7", "T_Monitor", "T_Month",
946276da39aSCy Schubert   "T_Mru", "T_Multicastclient", "T_Nic", "T_Nolink", "T_Nomodify",
947276da39aSCy Schubert   "T_Nomrulist", "T_None", "T_Nonvolatile", "T_Nopeer", "T_Noquery",
948276da39aSCy Schubert   "T_Noselect", "T_Noserve", "T_Notrap", "T_Notrust", "T_Ntp", "T_Ntpport",
949*e27abb66SXin LI   "T_NtpSignDsocket", "T_Orphan", "T_Orphanwait", "T_PCEdigest", "T_Panic",
950*e27abb66SXin LI   "T_Peer", "T_Peerstats", "T_Phone", "T_Pid", "T_Pidfile", "T_Pool",
951*e27abb66SXin LI   "T_Port", "T_Preempt", "T_Prefer", "T_Protostats", "T_Pw", "T_Randfile",
9522b15cb3dSCy Schubert   "T_Rawstats", "T_Refid", "T_Requestkey", "T_Reset", "T_Restrict",
9532b15cb3dSCy Schubert   "T_Revoke", "T_Rlimit", "T_Saveconfigdir", "T_Server", "T_Setvar",
9542b15cb3dSCy Schubert   "T_Source", "T_Stacksize", "T_Statistics", "T_Stats", "T_Statsdir",
955a25439b6SCy Schubert   "T_Step", "T_Stepback", "T_Stepfwd", "T_Stepout", "T_Stratum",
956a25439b6SCy Schubert   "T_String", "T_Sys", "T_Sysstats", "T_Tick", "T_Time1", "T_Time2",
957a25439b6SCy Schubert   "T_Timer", "T_Timingstats", "T_Tinker", "T_Tos", "T_Trap", "T_True",
95868ba7e87SXin LI   "T_Trustedkey", "T_Ttl", "T_Type", "T_U_int", "T_UEcrypto",
95968ba7e87SXin LI   "T_UEcryptonak", "T_UEdigest", "T_Unconfig", "T_Unpeer", "T_Version",
96068ba7e87SXin LI   "T_WanderThreshold", "T_Week", "T_Wildcard", "T_Xleave", "T_Year",
96168ba7e87SXin LI   "T_Flag", "T_EOC", "T_Simulate", "T_Beep_Delay", "T_Sim_Duration",
96268ba7e87SXin LI   "T_Server_Offset", "T_Duration", "T_Freq_Offset", "T_Wander", "T_Jitter",
96368ba7e87SXin LI   "T_Prop_Delay", "T_Proc_Delay", "'='", "'('", "')'", "'{'", "'}'",
96468ba7e87SXin LI   "$accept", "configuration", "command_list", "command", "server_command",
96568ba7e87SXin LI   "client_type", "address", "ip_address", "address_fam", "option_list",
96668ba7e87SXin LI   "option", "option_flag", "option_flag_keyword", "option_int",
96768ba7e87SXin LI   "option_int_keyword", "option_str", "option_str_keyword",
96868ba7e87SXin LI   "unpeer_command", "unpeer_keyword", "other_mode_command",
96968ba7e87SXin LI   "authentication_command", "crypto_command_list", "crypto_command",
97068ba7e87SXin LI   "crypto_str_keyword", "orphan_mode_command", "tos_option_list",
97168ba7e87SXin LI   "tos_option", "tos_option_int_keyword", "tos_option_dbl_keyword",
97268ba7e87SXin LI   "monitoring_command", "stats_list", "stat", "filegen_option_list",
97368ba7e87SXin LI   "filegen_option", "link_nolink", "enable_disable", "filegen_type",
97468ba7e87SXin LI   "access_control_command", "ac_flag_list", "access_control_flag",
97568ba7e87SXin LI   "discard_option_list", "discard_option", "discard_option_keyword",
97668ba7e87SXin LI   "mru_option_list", "mru_option", "mru_option_keyword", "fudge_command",
97768ba7e87SXin LI   "fudge_factor_list", "fudge_factor", "fudge_factor_dbl_keyword",
97868ba7e87SXin LI   "fudge_factor_bool_keyword", "rlimit_command", "rlimit_option_list",
97968ba7e87SXin LI   "rlimit_option", "rlimit_option_keyword", "system_option_command",
98068ba7e87SXin LI   "system_option_list", "system_option", "system_option_flag_keyword",
9812b15cb3dSCy Schubert   "system_option_local_flag_keyword", "tinker_command",
9822b15cb3dSCy Schubert   "tinker_option_list", "tinker_option", "tinker_option_keyword",
983276da39aSCy Schubert   "miscellaneous_command", "misc_cmd_dbl_keyword", "misc_cmd_int_keyword",
984276da39aSCy Schubert   "misc_cmd_str_keyword", "misc_cmd_str_lcl_keyword", "drift_parm",
985276da39aSCy Schubert   "variable_assign", "t_default_or_zero", "trap_option_list",
986276da39aSCy Schubert   "trap_option", "log_config_list", "log_config_command",
987276da39aSCy Schubert   "interface_command", "interface_nic", "nic_rule_class",
988276da39aSCy Schubert   "nic_rule_action", "reset_command", "counter_set_list",
989276da39aSCy Schubert   "counter_set_keyword", "integer_list", "integer_list_range",
990276da39aSCy Schubert   "integer_list_range_elt", "integer_range", "string_list", "address_list",
991276da39aSCy Schubert   "boolean", "number", "simulate_command", "sim_conf_start",
992276da39aSCy Schubert   "sim_init_statement_list", "sim_init_statement", "sim_init_keyword",
993276da39aSCy Schubert   "sim_server_list", "sim_server", "sim_server_offset", "sim_server_name",
994276da39aSCy Schubert   "sim_act_list", "sim_act", "sim_act_stmt_list", "sim_act_stmt",
995*e27abb66SXin LI   "sim_act_keyword", YY_NULLPTR
9962b15cb3dSCy Schubert };
9972b15cb3dSCy Schubert #endif
9982b15cb3dSCy Schubert 
9992b15cb3dSCy Schubert # ifdef YYPRINT
1000*e27abb66SXin LI /* YYTOKNUM[NUM] -- (External) token number corresponding to the
1001*e27abb66SXin LI    (internal) symbol number NUM (which must be that of a token).  */
10022b15cb3dSCy Schubert static const yytype_uint16 yytoknum[] =
10032b15cb3dSCy Schubert {
10042b15cb3dSCy Schubert        0,   256,   257,   258,   259,   260,   261,   262,   263,   264,
10052b15cb3dSCy Schubert      265,   266,   267,   268,   269,   270,   271,   272,   273,   274,
10062b15cb3dSCy Schubert      275,   276,   277,   278,   279,   280,   281,   282,   283,   284,
10072b15cb3dSCy Schubert      285,   286,   287,   288,   289,   290,   291,   292,   293,   294,
10082b15cb3dSCy Schubert      295,   296,   297,   298,   299,   300,   301,   302,   303,   304,
10092b15cb3dSCy Schubert      305,   306,   307,   308,   309,   310,   311,   312,   313,   314,
10102b15cb3dSCy Schubert      315,   316,   317,   318,   319,   320,   321,   322,   323,   324,
10112b15cb3dSCy Schubert      325,   326,   327,   328,   329,   330,   331,   332,   333,   334,
10122b15cb3dSCy Schubert      335,   336,   337,   338,   339,   340,   341,   342,   343,   344,
10132b15cb3dSCy Schubert      345,   346,   347,   348,   349,   350,   351,   352,   353,   354,
10142b15cb3dSCy Schubert      355,   356,   357,   358,   359,   360,   361,   362,   363,   364,
10152b15cb3dSCy Schubert      365,   366,   367,   368,   369,   370,   371,   372,   373,   374,
10162b15cb3dSCy Schubert      375,   376,   377,   378,   379,   380,   381,   382,   383,   384,
10172b15cb3dSCy Schubert      385,   386,   387,   388,   389,   390,   391,   392,   393,   394,
10182b15cb3dSCy Schubert      395,   396,   397,   398,   399,   400,   401,   402,   403,   404,
10192b15cb3dSCy Schubert      405,   406,   407,   408,   409,   410,   411,   412,   413,   414,
10202b15cb3dSCy Schubert      415,   416,   417,   418,   419,   420,   421,   422,   423,   424,
10212b15cb3dSCy Schubert      425,   426,   427,   428,   429,   430,   431,   432,   433,   434,
10222b15cb3dSCy Schubert      435,   436,   437,   438,   439,   440,   441,   442,   443,   444,
1023*e27abb66SXin LI      445,   446,   447,   448,   449,   450,   451,   452,    61,    40,
1024*e27abb66SXin LI       41,   123,   125
10252b15cb3dSCy Schubert };
10262b15cb3dSCy Schubert # endif
10272b15cb3dSCy Schubert 
1028*e27abb66SXin LI #define YYPACT_NINF -189
1029*e27abb66SXin LI 
1030*e27abb66SXin LI #define yypact_value_is_default(Yystate) \
1031*e27abb66SXin LI   (!!((Yystate) == (-189)))
1032*e27abb66SXin LI 
1033*e27abb66SXin LI #define YYTABLE_NINF -7
1034*e27abb66SXin LI 
1035*e27abb66SXin LI #define yytable_value_is_error(Yytable_value) \
1036*e27abb66SXin LI   0
1037*e27abb66SXin LI 
1038*e27abb66SXin LI   /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing
1039*e27abb66SXin LI      STATE-NUM.  */
1040*e27abb66SXin LI static const yytype_int16 yypact[] =
1041*e27abb66SXin LI {
1042*e27abb66SXin LI       20,  -174,   -32,  -189,  -189,  -189,   -29,  -189,   315,     3,
1043*e27abb66SXin LI     -133,  -189,   315,  -189,   119,   -48,  -189,  -126,  -189,  -118,
1044*e27abb66SXin LI     -115,  -189,  -189,  -113,  -189,  -189,   -48,    -5,   374,   -48,
1045*e27abb66SXin LI     -189,  -189,  -105,  -189,  -100,  -189,  -189,     1,    81,    46,
1046*e27abb66SXin LI        2,   -31,  -189,  -189,   -90,   119,   -88,  -189,   148,   380,
1047*e27abb66SXin LI      -81,   -53,    23,  -189,  -189,  -189,    87,   207,  -106,  -189,
1048*e27abb66SXin LI      -48,  -189,   -48,  -189,  -189,  -189,  -189,  -189,  -189,  -189,
1049*e27abb66SXin LI     -189,  -189,  -189,    -9,    29,   -62,   -61,  -189,    -7,  -189,
1050*e27abb66SXin LI     -189,  -102,  -189,  -189,  -189,    32,  -189,  -189,  -189,  -189,
1051*e27abb66SXin LI     -189,  -189,  -189,  -189,  -189,  -189,  -189,  -189,   315,  -189,
1052*e27abb66SXin LI     -189,  -189,  -189,  -189,  -189,     3,  -189,    42,    78,  -189,
1053*e27abb66SXin LI      315,  -189,  -189,  -189,  -189,  -189,  -189,  -189,  -189,  -189,
1054*e27abb66SXin LI     -189,  -189,  -189,   112,  -189,   -39,   367,  -189,  -189,  -189,
1055*e27abb66SXin LI     -113,  -189,  -189,   -48,  -189,  -189,  -189,  -189,  -189,  -189,
1056*e27abb66SXin LI     -189,  -189,  -189,   374,  -189,    60,   -48,  -189,  -189,   -34,
1057*e27abb66SXin LI     -189,  -189,  -189,  -189,  -189,  -189,  -189,  -189,    81,  -189,
1058*e27abb66SXin LI     -189,    97,   102,  -189,  -189,    44,  -189,  -189,  -189,  -189,
1059*e27abb66SXin LI      -31,  -189,    71,   -63,  -189,   119,  -189,  -189,  -189,  -189,
1060*e27abb66SXin LI     -189,  -189,  -189,  -189,  -189,  -189,  -189,  -189,   148,  -189,
1061*e27abb66SXin LI       -9,  -189,  -189,   -36,  -189,  -189,  -189,  -189,  -189,  -189,
1062*e27abb66SXin LI     -189,  -189,   380,  -189,    75,    -9,  -189,  -189,    76,   -53,
1063*e27abb66SXin LI     -189,  -189,  -189,    77,  -189,   -43,  -189,  -189,  -189,  -189,
1064*e27abb66SXin LI     -189,  -189,  -189,  -189,  -189,  -189,  -189,  -189,     0,  -150,
1065*e27abb66SXin LI     -189,  -189,  -189,  -189,  -189,    89,  -189,    -6,  -189,  -189,
1066*e27abb66SXin LI     -189,  -189,    39,    13,  -189,  -189,  -189,  -189,    15,    99,
1067*e27abb66SXin LI     -189,  -189,   112,  -189,    -9,   -36,  -189,  -189,  -189,  -189,
1068*e27abb66SXin LI     -189,  -189,  -189,  -189,   475,  -189,  -189,   475,   475,   -81,
1069*e27abb66SXin LI     -189,  -189,    18,  -189,  -189,  -189,  -189,  -189,  -189,  -189,
1070*e27abb66SXin LI     -189,  -189,  -189,   -58,   144,  -189,  -189,  -189,   353,  -189,
1071*e27abb66SXin LI     -189,  -189,  -189,  -189,  -189,  -189,  -189,   -96,    -3,   -13,
1072*e27abb66SXin LI     -189,  -189,  -189,  -189,    27,  -189,  -189,    11,  -189,  -189,
1073*e27abb66SXin LI     -189,  -189,  -189,  -189,  -189,  -189,  -189,  -189,  -189,  -189,
1074*e27abb66SXin LI     -189,  -189,  -189,  -189,  -189,  -189,  -189,  -189,  -189,  -189,
1075*e27abb66SXin LI     -189,  -189,  -189,   475,   475,  -189,   163,   -81,   133,  -189,
1076*e27abb66SXin LI      141,  -189,  -189,  -189,  -189,  -189,  -189,  -189,  -189,  -189,
1077*e27abb66SXin LI     -189,  -189,  -189,  -189,  -189,  -189,  -189,  -189,  -189,  -189,
1078*e27abb66SXin LI      -52,  -189,    45,     5,    19,  -125,  -189,     8,  -189,    -9,
1079*e27abb66SXin LI     -189,  -189,  -189,  -189,  -189,  -189,  -189,  -189,  -189,   475,
1080*e27abb66SXin LI     -189,  -189,  -189,  -189,    14,  -189,  -189,  -189,   -48,  -189,
1081*e27abb66SXin LI     -189,  -189,    22,  -189,  -189,  -189,    21,    24,    -9,    36,
1082*e27abb66SXin LI     -164,  -189,    33,    -9,  -189,  -189,  -189,    10,    69,  -189,
1083*e27abb66SXin LI     -189,  -189,  -189,  -189,    31,    48,    40,  -189,    52,  -189,
1084*e27abb66SXin LI       -9,  -189,  -189
1085*e27abb66SXin LI };
1086*e27abb66SXin LI 
1087*e27abb66SXin LI   /* YYDEFACT[STATE-NUM] -- Default reduction number in state STATE-NUM.
1088*e27abb66SXin LI      Performed when YYTABLE does not specify something else to do.  Zero
1089*e27abb66SXin LI      means the default is an error.  */
1090*e27abb66SXin LI static const yytype_uint16 yydefact[] =
1091*e27abb66SXin LI {
1092*e27abb66SXin LI        0,     0,     0,    24,    58,   235,     0,    71,     0,     0,
1093*e27abb66SXin LI      247,   238,     0,   228,     0,     0,   240,     0,   260,     0,
1094*e27abb66SXin LI        0,   241,   239,     0,   242,    25,     0,     0,     0,     0,
1095*e27abb66SXin LI      261,   236,     0,    23,     0,   243,    22,     0,     0,     0,
1096*e27abb66SXin LI        0,     0,   244,    21,     0,     0,     0,   237,     0,     0,
1097*e27abb66SXin LI        0,     0,     0,    56,    57,   296,     0,     2,     0,     7,
1098*e27abb66SXin LI        0,     8,     0,     9,    10,    13,    11,    12,    14,    15,
1099*e27abb66SXin LI       16,    17,    18,     0,     0,     0,     0,   221,     0,   222,
1100*e27abb66SXin LI       19,     0,     5,    62,    63,    64,   195,   196,   197,   198,
1101*e27abb66SXin LI      201,   199,   200,   202,   203,   204,   205,   206,   190,   192,
1102*e27abb66SXin LI      193,   194,   154,   155,   156,   126,   152,     0,   245,   229,
1103*e27abb66SXin LI      189,   101,   102,   103,   104,   108,   105,   106,   107,   109,
1104*e27abb66SXin LI       29,    30,    28,     0,    26,     0,     6,    65,    66,   257,
1105*e27abb66SXin LI      230,   256,   289,    59,    61,   160,   161,   162,   163,   164,
1106*e27abb66SXin LI      165,   166,   167,   127,   158,     0,    60,    70,   287,   231,
1107*e27abb66SXin LI       67,   272,   273,   274,   275,   276,   277,   278,   269,   271,
1108*e27abb66SXin LI      134,    29,    30,   134,   134,    26,    68,   188,   186,   187,
1109*e27abb66SXin LI      182,   184,     0,     0,   232,    96,   100,    97,   211,   212,
1110*e27abb66SXin LI      213,   214,   215,   216,   217,   218,   219,   220,   207,   209,
1111*e27abb66SXin LI        0,    91,    86,     0,    87,    95,    93,    94,    92,    90,
1112*e27abb66SXin LI       88,    89,    80,    82,     0,     0,   251,   283,     0,    69,
1113*e27abb66SXin LI      282,   284,   280,   234,     1,     0,     4,    31,    55,   294,
1114*e27abb66SXin LI      293,   223,   224,   225,   226,   268,   267,   266,     0,     0,
1115*e27abb66SXin LI       79,    75,    76,    77,    78,     0,    72,     0,   191,   151,
1116*e27abb66SXin LI      153,   246,    98,     0,   178,   179,   180,   181,     0,     0,
1117*e27abb66SXin LI      176,   177,   168,   170,     0,     0,    27,   227,   255,   288,
1118*e27abb66SXin LI      157,   159,   286,   270,   130,   134,   134,   133,   128,     0,
1119*e27abb66SXin LI      183,   185,     0,    99,   208,   210,   292,   290,   291,    85,
1120*e27abb66SXin LI       81,    83,    84,   233,     0,   281,   279,     3,    20,   262,
1121*e27abb66SXin LI      263,   264,   259,   265,   258,   300,   301,     0,     0,     0,
1122*e27abb66SXin LI       74,    73,   118,   117,     0,   115,   116,     0,   110,   113,
1123*e27abb66SXin LI      114,   174,   175,   173,   169,   171,   172,   136,   137,   138,
1124*e27abb66SXin LI      139,   140,   141,   142,   143,   144,   145,   146,   147,   148,
1125*e27abb66SXin LI      149,   150,   135,   131,   132,   134,   250,     0,     0,   252,
1126*e27abb66SXin LI        0,    37,    38,    39,    54,    47,    49,    48,    51,    40,
1127*e27abb66SXin LI       41,    42,    43,    50,    52,    44,    32,    33,    36,    34,
1128*e27abb66SXin LI        0,    35,     0,     0,     0,     0,   303,     0,   298,     0,
1129*e27abb66SXin LI      111,   125,   121,   123,   119,   120,   122,   124,   112,   129,
1130*e27abb66SXin LI      249,   248,   254,   253,     0,    45,    46,    53,     0,   297,
1131*e27abb66SXin LI      295,   302,     0,   299,   285,   306,     0,     0,     0,     0,
1132*e27abb66SXin LI        0,   308,     0,     0,   304,   307,   305,     0,     0,   313,
1133*e27abb66SXin LI      314,   315,   316,   317,     0,     0,     0,   309,     0,   311,
1134*e27abb66SXin LI        0,   310,   312
1135*e27abb66SXin LI };
1136*e27abb66SXin LI 
1137*e27abb66SXin LI   /* YYPGOTO[NTERM-NUM].  */
1138*e27abb66SXin LI static const yytype_int16 yypgoto[] =
1139*e27abb66SXin LI {
1140*e27abb66SXin LI     -189,  -189,  -189,   -41,  -189,  -189,   -15,   -38,  -189,  -189,
1141*e27abb66SXin LI     -189,  -189,  -189,  -189,  -189,  -189,  -189,  -189,  -189,  -189,
1142*e27abb66SXin LI     -189,  -189,  -189,  -189,  -189,  -189,    16,  -189,  -189,  -189,
1143*e27abb66SXin LI     -189,   -35,  -189,  -189,  -189,  -189,  -189,  -189,  -157,  -189,
1144*e27abb66SXin LI     -189,   138,  -189,  -189,   106,  -189,  -189,  -189,    -2,  -189,
1145*e27abb66SXin LI     -189,  -189,  -189,    83,  -189,  -189,   239,   -79,  -189,  -189,
1146*e27abb66SXin LI     -189,  -189,    66,  -189,  -189,  -189,  -189,  -189,  -189,  -189,
1147*e27abb66SXin LI     -189,  -189,  -189,  -189,  -189,   126,  -189,  -189,  -189,  -189,
1148*e27abb66SXin LI     -189,  -189,   101,  -189,  -189,    51,  -189,  -189,   242,    17,
1149*e27abb66SXin LI     -188,  -189,  -189,  -189,   -24,  -189,  -189,   -97,  -189,  -189,
1150*e27abb66SXin LI     -189,  -123,  -189,  -130,  -189
1151*e27abb66SXin LI };
1152*e27abb66SXin LI 
1153*e27abb66SXin LI   /* YYDEFGOTO[NTERM-NUM].  */
1154*e27abb66SXin LI static const yytype_int16 yydefgoto[] =
1155*e27abb66SXin LI {
1156*e27abb66SXin LI       -1,    56,    57,    58,    59,    60,   132,   124,   125,   288,
1157*e27abb66SXin LI      356,   357,   358,   359,   360,   361,   362,    61,    62,    63,
1158*e27abb66SXin LI       64,    85,   236,   237,    65,   202,   203,   204,   205,    66,
1159*e27abb66SXin LI      175,   119,   242,   308,   309,   310,   378,    67,   264,   332,
1160*e27abb66SXin LI      105,   106,   107,   143,   144,   145,    68,   252,   253,   254,
1161*e27abb66SXin LI      255,    69,   170,   171,   172,    70,    98,    99,   100,   101,
1162*e27abb66SXin LI       71,   188,   189,   190,    72,    73,    74,    75,    76,   109,
1163*e27abb66SXin LI      174,   381,   283,   339,   130,   131,    77,    78,   294,   228,
1164*e27abb66SXin LI       79,   158,   159,   213,   209,   210,   211,   149,   133,   279,
1165*e27abb66SXin LI      221,    80,    81,   297,   298,   299,   365,   366,   397,   367,
1166*e27abb66SXin LI      400,   401,   414,   415,   416
1167*e27abb66SXin LI };
1168*e27abb66SXin LI 
1169*e27abb66SXin LI   /* YYTABLE[YYPACT[STATE-NUM]] -- What to do in state STATE-NUM.  If
1170*e27abb66SXin LI      positive, shift that token.  If negative, reduce the rule whose
1171*e27abb66SXin LI      number is the opposite.  If YYTABLE_NINF, syntax error.  */
1172*e27abb66SXin LI static const yytype_int16 yytable[] =
1173*e27abb66SXin LI {
1174*e27abb66SXin LI      123,   165,   275,   276,   337,   289,   267,   268,   207,   385,
1175*e27abb66SXin LI      176,   167,   206,    82,   102,   371,   215,   282,   120,   238,
1176*e27abb66SXin LI      121,     1,   363,   219,   164,   277,   108,   225,   399,    83,
1177*e27abb66SXin LI        2,   238,    84,   126,     3,     4,     5,   372,   404,   295,
1178*e27abb66SXin LI      296,   127,     6,     7,   128,   217,   129,   218,   226,     8,
1179*e27abb66SXin LI        9,   363,   220,    10,   147,    11,   134,    12,    13,   148,
1180*e27abb66SXin LI      230,    14,   150,   166,   168,   290,   315,   291,   302,   173,
1181*e27abb66SXin LI       15,   177,   227,   160,    16,   338,   303,   390,   122,   304,
1182*e27abb66SXin LI       17,   216,    18,   231,   212,   257,   232,   214,   151,   152,
1183*e27abb66SXin LI      222,    19,    20,   295,   296,    21,    22,   223,   224,   229,
1184*e27abb66SXin LI       23,    24,   103,   240,    25,    26,   153,   104,   333,   334,
1185*e27abb66SXin LI      241,   122,   161,    27,   162,   243,   373,   305,   259,   169,
1186*e27abb66SXin LI      256,   261,   386,   374,   265,   262,    28,    29,    30,   266,
1187*e27abb66SXin LI      269,   259,   271,    31,   278,   272,   281,   284,   286,   111,
1188*e27abb66SXin LI      273,   375,    32,   112,   287,   154,   208,    33,   306,    34,
1189*e27abb66SXin LI      300,    35,    36,   301,   178,   244,   245,   246,   247,   292,
1190*e27abb66SXin LI      313,    37,    38,    39,    40,    41,    42,    43,    44,   233,
1191*e27abb66SXin LI      234,    45,   311,    46,   312,   155,   235,   336,   379,   179,
1192*e27abb66SXin LI      340,   393,    47,   293,   368,   369,   370,    48,    49,    50,
1193*e27abb66SXin LI      380,    51,    52,   376,   383,   163,   377,   180,    53,    54,
1194*e27abb66SXin LI      181,   113,   384,   388,   387,   122,   389,    -6,    55,   392,
1195*e27abb66SXin LI      402,   408,   307,   396,   394,   407,   399,     2,   280,   398,
1196*e27abb66SXin LI      406,     3,     4,     5,   409,   410,   411,   412,   413,     6,
1197*e27abb66SXin LI        7,   335,   422,   417,   403,   419,     8,     9,   420,   421,
1198*e27abb66SXin LI       10,   156,    11,   239,    12,    13,   157,   114,    14,   260,
1199*e27abb66SXin LI      314,   110,   248,   270,   274,   115,   258,    15,   116,   263,
1200*e27abb66SXin LI      285,    16,   409,   410,   411,   412,   413,    17,   391,    18,
1201*e27abb66SXin LI      249,   146,   316,   364,   182,   250,   251,   405,    19,    20,
1202*e27abb66SXin LI      117,     0,    21,    22,   418,   118,     0,    23,    24,     0,
1203*e27abb66SXin LI        0,    25,    26,     0,     0,     0,     0,     0,     0,   382,
1204*e27abb66SXin LI       27,     0,   183,   184,   185,   186,     0,     0,     0,     0,
1205*e27abb66SXin LI      187,     0,     0,    28,    29,    30,     0,     0,     0,     0,
1206*e27abb66SXin LI       31,     0,     0,    86,     0,     0,     0,    87,     0,    32,
1207*e27abb66SXin LI        0,     0,     0,    88,    33,     0,    34,     0,    35,    36,
1208*e27abb66SXin LI        0,     0,     0,     0,     0,     0,     0,     0,    37,    38,
1209*e27abb66SXin LI       39,    40,    41,    42,    43,    44,     0,     0,    45,     0,
1210*e27abb66SXin LI       46,     0,   341,     0,     0,     0,     0,     0,     0,    47,
1211*e27abb66SXin LI      342,     0,     0,   395,    48,    49,    50,     2,    51,    52,
1212*e27abb66SXin LI        0,     3,     4,     5,    89,    53,    54,     0,     0,     6,
1213*e27abb66SXin LI        7,     0,     0,   191,    -6,    55,     8,     9,     0,   192,
1214*e27abb66SXin LI       10,   193,    11,     0,    12,    13,   343,   344,    14,     0,
1215*e27abb66SXin LI        0,     0,     0,     0,     0,     0,     0,    15,    90,    91,
1216*e27abb66SXin LI        0,    16,     0,   345,     0,     0,     0,    17,   194,    18,
1217*e27abb66SXin LI      135,   136,   137,   138,     0,    92,     0,     0,    19,    20,
1218*e27abb66SXin LI       93,     0,    21,    22,     0,   346,     0,    23,    24,     0,
1219*e27abb66SXin LI        0,    25,    26,   347,     0,   348,     0,     0,     0,     0,
1220*e27abb66SXin LI       27,   139,     0,   140,     0,   141,     0,    94,   195,   349,
1221*e27abb66SXin LI      196,   142,     0,    28,    29,    30,   197,     0,   198,     0,
1222*e27abb66SXin LI       31,   199,     0,     0,     0,     0,     0,   350,   351,    32,
1223*e27abb66SXin LI       95,    96,    97,     0,    33,     0,    34,     0,    35,    36,
1224*e27abb66SXin LI        0,     0,     0,   200,   201,     0,     0,     0,    37,    38,
1225*e27abb66SXin LI       39,    40,    41,    42,    43,    44,     0,     0,    45,     0,
1226*e27abb66SXin LI       46,     0,   317,   352,     0,   353,     0,     0,     0,    47,
1227*e27abb66SXin LI      318,     0,     0,   354,    48,    49,    50,   355,    51,    52,
1228*e27abb66SXin LI        0,     0,     0,     0,     0,    53,    54,     0,   319,   320,
1229*e27abb66SXin LI        0,     0,   321,     0,     0,    55,     0,     0,   322,     0,
1230*e27abb66SXin LI        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1231*e27abb66SXin LI        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1232*e27abb66SXin LI        0,     0,     0,     0,     0,   323,   324,     0,     0,   325,
1233*e27abb66SXin LI      326,     0,   327,   328,   329,     0,   330,     0,     0,     0,
1234*e27abb66SXin LI        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1235*e27abb66SXin LI        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1236*e27abb66SXin LI        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1237*e27abb66SXin LI        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1238*e27abb66SXin LI        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1239*e27abb66SXin LI        0,     0,     0,     0,     0,   331
1240*e27abb66SXin LI };
1241*e27abb66SXin LI 
1242*e27abb66SXin LI static const yytype_int16 yycheck[] =
1243*e27abb66SXin LI {
1244*e27abb66SXin LI       15,    39,   190,    39,    62,     5,   163,   164,    61,    61,
1245*e27abb66SXin LI       45,    42,    50,   187,    11,     4,    57,   205,    66,    98,
1246*e27abb66SXin LI       68,     1,   147,    32,    39,    61,   159,    34,   192,    61,
1247*e27abb66SXin LI       10,   110,    61,   159,    14,    15,    16,    26,   202,   189,
1248*e27abb66SXin LI      190,   159,    22,    23,   159,    60,   159,    62,    55,    29,
1249*e27abb66SXin LI       30,   147,    61,    33,   159,    35,    61,    37,    38,   159,
1250*e27abb66SXin LI       28,    41,    61,    61,    95,    65,   254,    67,    29,   159,
1251*e27abb66SXin LI       50,   159,    79,    27,    54,   133,    37,   202,   159,    40,
1252*e27abb66SXin LI       60,   187,    62,    51,    61,   126,    54,     0,     7,     8,
1253*e27abb66SXin LI       61,    71,    72,   189,   190,    75,    76,   159,   159,   201,
1254*e27abb66SXin LI       80,    81,    99,    61,    84,    85,    25,   104,   265,   266,
1255*e27abb66SXin LI       32,   159,    66,    93,    68,     3,   105,    78,   133,   150,
1256*e27abb66SXin LI      159,    61,   174,   112,    27,   159,   106,   107,   108,    27,
1257*e27abb66SXin LI       86,   146,    61,   113,   170,   198,    61,    61,    61,    20,
1258*e27abb66SXin LI      175,   130,   122,    24,   187,    64,   199,   127,   109,   129,
1259*e27abb66SXin LI       61,   131,   132,   159,     6,    43,    44,    45,    46,   159,
1260*e27abb66SXin LI       61,   141,   142,   143,   144,   145,   146,   147,   148,   137,
1261*e27abb66SXin LI      138,   151,   159,   153,   159,    94,   144,   159,   335,    31,
1262*e27abb66SXin LI       36,   369,   162,   183,   187,   198,   159,   167,   168,   169,
1263*e27abb66SXin LI       27,   171,   172,   182,    61,   149,   185,    49,   178,   179,
1264*e27abb66SXin LI       52,    82,    61,   198,   159,   159,   187,   187,   188,   201,
1265*e27abb66SXin LI      398,   201,   173,   191,   200,   403,   192,    10,   202,   198,
1266*e27abb66SXin LI      187,    14,    15,    16,   193,   194,   195,   196,   197,    22,
1267*e27abb66SXin LI       23,   269,   420,   202,   198,   187,    29,    30,   198,   187,
1268*e27abb66SXin LI       33,   160,    35,   105,    37,    38,   165,   128,    41,   143,
1269*e27abb66SXin LI      252,    12,   140,   170,   188,   136,   130,    50,   139,   158,
1270*e27abb66SXin LI      209,    54,   193,   194,   195,   196,   197,    60,   365,    62,
1271*e27abb66SXin LI      158,    29,   255,   297,   126,   163,   164,   400,    71,    72,
1272*e27abb66SXin LI      161,    -1,    75,    76,   414,   166,    -1,    80,    81,    -1,
1273*e27abb66SXin LI       -1,    84,    85,    -1,    -1,    -1,    -1,    -1,    -1,   337,
1274*e27abb66SXin LI       93,    -1,   154,   155,   156,   157,    -1,    -1,    -1,    -1,
1275*e27abb66SXin LI      162,    -1,    -1,   106,   107,   108,    -1,    -1,    -1,    -1,
1276*e27abb66SXin LI      113,    -1,    -1,     8,    -1,    -1,    -1,    12,    -1,   122,
1277*e27abb66SXin LI       -1,    -1,    -1,    18,   127,    -1,   129,    -1,   131,   132,
1278*e27abb66SXin LI       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   141,   142,
1279*e27abb66SXin LI      143,   144,   145,   146,   147,   148,    -1,    -1,   151,    -1,
1280*e27abb66SXin LI      153,    -1,     9,    -1,    -1,    -1,    -1,    -1,    -1,   162,
1281*e27abb66SXin LI       17,    -1,    -1,   388,   167,   168,   169,    10,   171,   172,
1282*e27abb66SXin LI       -1,    14,    15,    16,    69,   178,   179,    -1,    -1,    22,
1283*e27abb66SXin LI       23,    -1,    -1,    13,   187,   188,    29,    30,    -1,    19,
1284*e27abb66SXin LI       33,    21,    35,    -1,    37,    38,    53,    54,    41,    -1,
1285*e27abb66SXin LI       -1,    -1,    -1,    -1,    -1,    -1,    -1,    50,   103,   104,
1286*e27abb66SXin LI       -1,    54,    -1,    70,    -1,    -1,    -1,    60,    48,    62,
1287*e27abb66SXin LI       56,    57,    58,    59,    -1,   120,    -1,    -1,    71,    72,
1288*e27abb66SXin LI      125,    -1,    75,    76,    -1,    92,    -1,    80,    81,    -1,
1289*e27abb66SXin LI       -1,    84,    85,   100,    -1,   102,    -1,    -1,    -1,    -1,
1290*e27abb66SXin LI       93,    87,    -1,    89,    -1,    91,    -1,   152,    88,   116,
1291*e27abb66SXin LI       90,    97,    -1,   106,   107,   108,    96,    -1,    98,    -1,
1292*e27abb66SXin LI      113,   101,    -1,    -1,    -1,    -1,    -1,   134,   135,   122,
1293*e27abb66SXin LI      175,   176,   177,    -1,   127,    -1,   129,    -1,   131,   132,
1294*e27abb66SXin LI       -1,    -1,    -1,   123,   124,    -1,    -1,    -1,   141,   142,
1295*e27abb66SXin LI      143,   144,   145,   146,   147,   148,    -1,    -1,   151,    -1,
1296*e27abb66SXin LI      153,    -1,    47,   170,    -1,   172,    -1,    -1,    -1,   162,
1297*e27abb66SXin LI       55,    -1,    -1,   180,   167,   168,   169,   184,   171,   172,
1298*e27abb66SXin LI       -1,    -1,    -1,    -1,    -1,   178,   179,    -1,    73,    74,
1299*e27abb66SXin LI       -1,    -1,    77,    -1,    -1,   188,    -1,    -1,    83,    -1,
1300*e27abb66SXin LI       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
1301*e27abb66SXin LI       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
1302*e27abb66SXin LI       -1,    -1,    -1,    -1,    -1,   110,   111,    -1,    -1,   114,
1303*e27abb66SXin LI      115,    -1,   117,   118,   119,    -1,   121,    -1,    -1,    -1,
1304*e27abb66SXin LI       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
1305*e27abb66SXin LI       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
1306*e27abb66SXin LI       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
1307*e27abb66SXin LI       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
1308*e27abb66SXin LI       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
1309*e27abb66SXin LI       -1,    -1,    -1,    -1,    -1,   180
1310*e27abb66SXin LI };
1311*e27abb66SXin LI 
1312*e27abb66SXin LI   /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing
1313*e27abb66SXin LI      symbol of state STATE-NUM.  */
1314*e27abb66SXin LI static const yytype_uint16 yystos[] =
1315*e27abb66SXin LI {
1316*e27abb66SXin LI        0,     1,    10,    14,    15,    16,    22,    23,    29,    30,
1317*e27abb66SXin LI       33,    35,    37,    38,    41,    50,    54,    60,    62,    71,
1318*e27abb66SXin LI       72,    75,    76,    80,    81,    84,    85,    93,   106,   107,
1319*e27abb66SXin LI      108,   113,   122,   127,   129,   131,   132,   141,   142,   143,
1320*e27abb66SXin LI      144,   145,   146,   147,   148,   151,   153,   162,   167,   168,
1321*e27abb66SXin LI      169,   171,   172,   178,   179,   188,   204,   205,   206,   207,
1322*e27abb66SXin LI      208,   220,   221,   222,   223,   227,   232,   240,   249,   254,
1323*e27abb66SXin LI      258,   263,   267,   268,   269,   270,   271,   279,   280,   283,
1324*e27abb66SXin LI      294,   295,   187,    61,    61,   224,     8,    12,    18,    69,
1325*e27abb66SXin LI      103,   104,   120,   125,   152,   175,   176,   177,   259,   260,
1326*e27abb66SXin LI      261,   262,    11,    99,   104,   243,   244,   245,   159,   272,
1327*e27abb66SXin LI      259,    20,    24,    82,   128,   136,   139,   161,   166,   234,
1328*e27abb66SXin LI       66,    68,   159,   209,   210,   211,   159,   159,   159,   159,
1329*e27abb66SXin LI      277,   278,   209,   291,    61,    56,    57,    58,    59,    87,
1330*e27abb66SXin LI       89,    91,    97,   246,   247,   248,   291,   159,   159,   290,
1331*e27abb66SXin LI       61,     7,     8,    25,    64,    94,   160,   165,   284,   285,
1332*e27abb66SXin LI       27,    66,    68,   149,   209,   210,    61,    42,    95,   150,
1333*e27abb66SXin LI      255,   256,   257,   159,   273,   233,   234,   159,     6,    31,
1334*e27abb66SXin LI       49,    52,   126,   154,   155,   156,   157,   162,   264,   265,
1335*e27abb66SXin LI      266,    13,    19,    21,    48,    88,    90,    96,    98,   101,
1336*e27abb66SXin LI      123,   124,   228,   229,   230,   231,   210,    61,   199,   287,
1337*e27abb66SXin LI      288,   289,    61,   286,     0,   206,   187,   209,   209,    32,
1338*e27abb66SXin LI       61,   293,    61,   159,   159,    34,    55,    79,   282,   201,
1339*e27abb66SXin LI       28,    51,    54,   137,   138,   144,   225,   226,   260,   244,
1340*e27abb66SXin LI       61,    32,   235,     3,    43,    44,    45,    46,   140,   158,
1341*e27abb66SXin LI      163,   164,   250,   251,   252,   253,   159,   206,   278,   209,
1342*e27abb66SXin LI      247,    61,   159,   285,   241,    27,    27,   241,   241,    86,
1343*e27abb66SXin LI      256,    61,   198,   234,   265,   293,    39,    61,   170,   292,
1344*e27abb66SXin LI      229,    61,   293,   275,    61,   288,    61,   187,   212,     5,
1345*e27abb66SXin LI       65,    67,   159,   183,   281,   189,   190,   296,   297,   298,
1346*e27abb66SXin LI       61,   159,    29,    37,    40,    78,   109,   173,   236,   237,
1347*e27abb66SXin LI      238,   159,   159,    61,   251,   293,   292,    47,    55,    73,
1348*e27abb66SXin LI       74,    77,    83,   110,   111,   114,   115,   117,   118,   119,
1349*e27abb66SXin LI      121,   180,   242,   241,   241,   210,   159,    62,   133,   276,
1350*e27abb66SXin LI       36,     9,    17,    53,    54,    70,    92,   100,   102,   116,
1351*e27abb66SXin LI      134,   135,   170,   172,   180,   184,   213,   214,   215,   216,
1352*e27abb66SXin LI      217,   218,   219,   147,   297,   299,   300,   302,   187,   198,
1353*e27abb66SXin LI      159,     4,    26,   105,   112,   130,   182,   185,   239,   241,
1354*e27abb66SXin LI       27,   274,   210,    61,    61,    61,   174,   159,   198,   187,
1355*e27abb66SXin LI      202,   300,   201,   293,   200,   209,   191,   301,   198,   192,
1356*e27abb66SXin LI      303,   304,   293,   198,   202,   304,   187,   293,   201,   193,
1357*e27abb66SXin LI      194,   195,   196,   197,   305,   306,   307,   202,   306,   187,
1358*e27abb66SXin LI      198,   187,   293
1359*e27abb66SXin LI };
1360*e27abb66SXin LI 
13619034852cSGleb Smirnoff   /* YYR1[YYN] -- Symbol number of symbol that rule YYN derives.  */
13629034852cSGleb Smirnoff static const yytype_uint16 yyr1[] =
13639034852cSGleb Smirnoff {
1364*e27abb66SXin LI        0,   203,   204,   205,   205,   205,   206,   206,   206,   206,
1365*e27abb66SXin LI      206,   206,   206,   206,   206,   206,   206,   206,   206,   206,
1366*e27abb66SXin LI      207,   208,   208,   208,   208,   208,   209,   209,   210,   211,
1367*e27abb66SXin LI      211,   212,   212,   213,   213,   213,   214,   215,   215,   215,
1368*e27abb66SXin LI      215,   215,   215,   215,   215,   216,   216,   217,   217,   217,
1369*e27abb66SXin LI      217,   217,   217,   218,   219,   220,   221,   221,   222,   222,
1370*e27abb66SXin LI      222,   222,   223,   223,   223,   223,   223,   223,   223,   223,
1371*e27abb66SXin LI      223,   224,   224,   225,   225,   226,   226,   226,   226,   226,
1372*e27abb66SXin LI      227,   228,   228,   229,   229,   229,   230,   230,   230,   230,
1373*e27abb66SXin LI      230,   230,   231,   231,   231,   231,   232,   232,   232,   233,
1374*e27abb66SXin LI      233,   234,   234,   234,   234,   234,   234,   234,   234,   235,
1375*e27abb66SXin LI      235,   236,   236,   236,   236,   237,   237,   238,   238,   239,
1376*e27abb66SXin LI      239,   239,   239,   239,   239,   239,   240,   240,   240,   240,
1377*e27abb66SXin LI      240,   240,   240,   240,   241,   241,   242,   242,   242,   242,
1378*e27abb66SXin LI      242,   242,   242,   242,   242,   242,   242,   242,   242,   242,
1379*e27abb66SXin LI      242,   243,   243,   244,   245,   245,   245,   246,   246,   247,
1380*e27abb66SXin LI      248,   248,   248,   248,   248,   248,   248,   248,   249,   250,
1381*e27abb66SXin LI      250,   251,   251,   251,   251,   251,   252,   252,   253,   253,
1382*e27abb66SXin LI      253,   253,   254,   255,   255,   256,   257,   257,   257,   258,
1383*e27abb66SXin LI      258,   259,   259,   260,   260,   261,   261,   261,   261,   261,
1384*e27abb66SXin LI      261,   262,   262,   262,   262,   262,   262,   263,   264,   264,
1385*e27abb66SXin LI      265,   266,   266,   266,   266,   266,   266,   266,   266,   266,
1386*e27abb66SXin LI      266,   267,   267,   267,   267,   267,   267,   267,   267,   267,
1387*e27abb66SXin LI      267,   267,   267,   267,   267,   268,   268,   268,   269,   269,
1388*e27abb66SXin LI      270,   270,   271,   271,   271,   272,   272,   272,   273,   274,
1389*e27abb66SXin LI      274,   275,   275,   276,   276,   277,   277,   278,   279,   279,
1390*e27abb66SXin LI      280,   280,   281,   281,   281,   281,   282,   282,   282,   283,
1391*e27abb66SXin LI      284,   284,   285,   285,   285,   285,   285,   285,   285,   286,
1392*e27abb66SXin LI      286,   287,   287,   288,   288,   289,   290,   290,   291,   291,
1393*e27abb66SXin LI      292,   292,   292,   293,   293,   294,   295,   296,   296,   297,
1394*e27abb66SXin LI      298,   298,   299,   299,   300,   301,   302,   303,   303,   304,
1395*e27abb66SXin LI      305,   305,   306,   307,   307,   307,   307,   307
13969034852cSGleb Smirnoff };
13979034852cSGleb Smirnoff 
1398*e27abb66SXin LI   /* YYR2[YYN] -- Number of symbols on the right hand side of rule YYN.  */
13999034852cSGleb Smirnoff static const yytype_uint8 yyr2[] =
14009034852cSGleb Smirnoff {
14019034852cSGleb Smirnoff        0,     2,     1,     3,     2,     2,     0,     1,     1,     1,
14029034852cSGleb Smirnoff        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
14039034852cSGleb Smirnoff        3,     1,     1,     1,     1,     1,     1,     2,     1,     1,
14049034852cSGleb Smirnoff        1,     0,     2,     1,     1,     1,     1,     1,     1,     1,
14059034852cSGleb Smirnoff        1,     1,     1,     1,     1,     2,     2,     1,     1,     1,
14069034852cSGleb Smirnoff        1,     1,     1,     2,     1,     2,     1,     1,     1,     2,
14079034852cSGleb Smirnoff        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
14089034852cSGleb Smirnoff        2,     0,     2,     2,     2,     1,     1,     1,     1,     1,
14099034852cSGleb Smirnoff        2,     2,     1,     2,     2,     2,     1,     1,     1,     1,
14109034852cSGleb Smirnoff        1,     1,     1,     1,     1,     1,     2,     2,     3,     2,
14119034852cSGleb Smirnoff        1,     1,     1,     1,     1,     1,     1,     1,     1,     0,
14129034852cSGleb Smirnoff        2,     2,     2,     1,     1,     1,     1,     1,     1,     1,
14139034852cSGleb Smirnoff        1,     1,     1,     1,     1,     1,     2,     2,     3,     5,
14149034852cSGleb Smirnoff        3,     4,     4,     3,     0,     2,     1,     1,     1,     1,
14159034852cSGleb Smirnoff        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
14169034852cSGleb Smirnoff        1,     2,     1,     2,     1,     1,     1,     2,     1,     2,
14179034852cSGleb Smirnoff        1,     1,     1,     1,     1,     1,     1,     1,     3,     2,
14189034852cSGleb Smirnoff        1,     2,     2,     2,     2,     2,     1,     1,     1,     1,
14199034852cSGleb Smirnoff        1,     1,     2,     2,     1,     2,     1,     1,     1,     2,
14209034852cSGleb Smirnoff        2,     2,     1,     1,     1,     1,     1,     1,     1,     1,
1421*e27abb66SXin LI        1,     1,     1,     1,     1,     1,     1,     2,     2,     1,
1422*e27abb66SXin LI        2,     1,     1,     1,     1,     1,     1,     1,     1,     1,
1423*e27abb66SXin LI        1,     1,     1,     2,     2,     2,     2,     3,     1,     2,
1424*e27abb66SXin LI        2,     2,     2,     3,     2,     1,     1,     1,     1,     1,
1425*e27abb66SXin LI        1,     1,     1,     1,     1,     1,     2,     0,     4,     1,
1426*e27abb66SXin LI        0,     0,     2,     2,     2,     2,     1,     1,     3,     3,
1427*e27abb66SXin LI        1,     1,     1,     1,     1,     1,     1,     1,     1,     2,
1428*e27abb66SXin LI        2,     1,     1,     1,     1,     1,     1,     1,     1,     2,
1429*e27abb66SXin LI        1,     2,     1,     1,     1,     5,     2,     1,     2,     1,
1430*e27abb66SXin LI        1,     1,     1,     1,     1,     5,     1,     3,     2,     3,
1431*e27abb66SXin LI        1,     1,     2,     1,     5,     4,     3,     2,     1,     6,
1432*e27abb66SXin LI        3,     2,     3,     1,     1,     1,     1,     1
14339034852cSGleb Smirnoff };
14349034852cSGleb Smirnoff 
14359034852cSGleb Smirnoff 
14362b15cb3dSCy Schubert #define yyerrok         (yyerrstatus = 0)
14372b15cb3dSCy Schubert #define yyclearin       (yychar = YYEMPTY)
14382b15cb3dSCy Schubert #define YYEMPTY         (-2)
14392b15cb3dSCy Schubert #define YYEOF           0
14402b15cb3dSCy Schubert 
14412b15cb3dSCy Schubert #define YYACCEPT        goto yyacceptlab
14422b15cb3dSCy Schubert #define YYABORT         goto yyabortlab
14432b15cb3dSCy Schubert #define YYERROR         goto yyerrorlab
14442b15cb3dSCy Schubert 
14452b15cb3dSCy Schubert 
14462b15cb3dSCy Schubert #define YYRECOVERING()  (!!yyerrstatus)
14472b15cb3dSCy Schubert 
14482b15cb3dSCy Schubert #define YYBACKUP(Token, Value)                                  \
14492b15cb3dSCy Schubert do                                                              \
14502b15cb3dSCy Schubert   if (yychar == YYEMPTY)                                        \
14512b15cb3dSCy Schubert     {                                                           \
14522b15cb3dSCy Schubert       yychar = (Token);                                         \
14532b15cb3dSCy Schubert       yylval = (Value);                                         \
14542b15cb3dSCy Schubert       YYPOPSTACK (yylen);                                       \
14552b15cb3dSCy Schubert       yystate = *yyssp;                                         \
14562b15cb3dSCy Schubert       goto yybackup;                                            \
14572b15cb3dSCy Schubert     }                                                           \
14582b15cb3dSCy Schubert   else                                                          \
14592b15cb3dSCy Schubert     {                                                           \
1460276da39aSCy Schubert       yyerror (YY_("syntax error: cannot back up")); \
14612b15cb3dSCy Schubert       YYERROR;                                                  \
14622b15cb3dSCy Schubert     }                                                           \
1463*e27abb66SXin LI while (0)
14642b15cb3dSCy Schubert 
14652b15cb3dSCy Schubert /* Error token number */
14662b15cb3dSCy Schubert #define YYTERROR        1
14672b15cb3dSCy Schubert #define YYERRCODE       256
14682b15cb3dSCy Schubert 
14692b15cb3dSCy Schubert 
14702b15cb3dSCy Schubert 
14712b15cb3dSCy Schubert /* Enable debugging if requested.  */
14722b15cb3dSCy Schubert #if YYDEBUG
14732b15cb3dSCy Schubert 
14742b15cb3dSCy Schubert # ifndef YYFPRINTF
14752b15cb3dSCy Schubert #  include <stdio.h> /* INFRINGES ON USER NAME SPACE */
14762b15cb3dSCy Schubert #  define YYFPRINTF fprintf
14772b15cb3dSCy Schubert # endif
14782b15cb3dSCy Schubert 
14792b15cb3dSCy Schubert # define YYDPRINTF(Args)                        \
14802b15cb3dSCy Schubert do {                                            \
14812b15cb3dSCy Schubert   if (yydebug)                                  \
14822b15cb3dSCy Schubert     YYFPRINTF Args;                             \
1483*e27abb66SXin LI } while (0)
1484*e27abb66SXin LI 
1485*e27abb66SXin LI /* This macro is provided for backward compatibility. */
1486*e27abb66SXin LI #ifndef YY_LOCATION_PRINT
1487*e27abb66SXin LI # define YY_LOCATION_PRINT(File, Loc) ((void) 0)
1488*e27abb66SXin LI #endif
1489*e27abb66SXin LI 
14902b15cb3dSCy Schubert 
14912b15cb3dSCy Schubert # define YY_SYMBOL_PRINT(Title, Type, Value, Location)                    \
14922b15cb3dSCy Schubert do {                                                                      \
14932b15cb3dSCy Schubert   if (yydebug)                                                            \
14942b15cb3dSCy Schubert     {                                                                     \
14952b15cb3dSCy Schubert       YYFPRINTF (stderr, "%s ", Title);                                   \
14962b15cb3dSCy Schubert       yy_symbol_print (stderr,                                            \
1497276da39aSCy Schubert                   Type, Value); \
14982b15cb3dSCy Schubert       YYFPRINTF (stderr, "\n");                                           \
14992b15cb3dSCy Schubert     }                                                                     \
1500*e27abb66SXin LI } while (0)
15012b15cb3dSCy Schubert 
15022b15cb3dSCy Schubert 
1503*e27abb66SXin LI /*----------------------------------------.
1504*e27abb66SXin LI | Print this symbol's value on YYOUTPUT.  |
1505*e27abb66SXin LI `----------------------------------------*/
15062b15cb3dSCy Schubert 
15072b15cb3dSCy Schubert static void
1508276da39aSCy Schubert yy_symbol_value_print (FILE *yyoutput, int yytype, YYSTYPE const * const yyvaluep)
15092b15cb3dSCy Schubert {
15102b15cb3dSCy Schubert   FILE *yyo = yyoutput;
15112b15cb3dSCy Schubert   YYUSE (yyo);
15122b15cb3dSCy Schubert   if (!yyvaluep)
15132b15cb3dSCy Schubert     return;
15142b15cb3dSCy Schubert # ifdef YYPRINT
15152b15cb3dSCy Schubert   if (yytype < YYNTOKENS)
15162b15cb3dSCy Schubert     YYPRINT (yyoutput, yytoknum[yytype], *yyvaluep);
15172b15cb3dSCy Schubert # endif
15182b15cb3dSCy Schubert   YYUSE (yytype);
15192b15cb3dSCy Schubert }
15202b15cb3dSCy Schubert 
15212b15cb3dSCy Schubert 
15222b15cb3dSCy Schubert /*--------------------------------.
15232b15cb3dSCy Schubert | Print this symbol on YYOUTPUT.  |
15242b15cb3dSCy Schubert `--------------------------------*/
15252b15cb3dSCy Schubert 
15262b15cb3dSCy Schubert static void
1527276da39aSCy Schubert yy_symbol_print (FILE *yyoutput, int yytype, YYSTYPE const * const yyvaluep)
15282b15cb3dSCy Schubert {
1529*e27abb66SXin LI   YYFPRINTF (yyoutput, "%s %s (",
1530*e27abb66SXin LI              yytype < YYNTOKENS ? "token" : "nterm", yytname[yytype]);
15312b15cb3dSCy Schubert 
1532276da39aSCy Schubert   yy_symbol_value_print (yyoutput, yytype, yyvaluep);
15332b15cb3dSCy Schubert   YYFPRINTF (yyoutput, ")");
15342b15cb3dSCy Schubert }
15352b15cb3dSCy Schubert 
15362b15cb3dSCy Schubert /*------------------------------------------------------------------.
15372b15cb3dSCy Schubert | yy_stack_print -- Print the state stack from its BOTTOM up to its |
15382b15cb3dSCy Schubert | TOP (included).                                                   |
15392b15cb3dSCy Schubert `------------------------------------------------------------------*/
15402b15cb3dSCy Schubert 
15412b15cb3dSCy Schubert static void
15422b15cb3dSCy Schubert yy_stack_print (yytype_int16 *yybottom, yytype_int16 *yytop)
15432b15cb3dSCy Schubert {
15442b15cb3dSCy Schubert   YYFPRINTF (stderr, "Stack now");
15452b15cb3dSCy Schubert   for (; yybottom <= yytop; yybottom++)
15462b15cb3dSCy Schubert     {
15472b15cb3dSCy Schubert       int yybot = *yybottom;
15482b15cb3dSCy Schubert       YYFPRINTF (stderr, " %d", yybot);
15492b15cb3dSCy Schubert     }
15502b15cb3dSCy Schubert   YYFPRINTF (stderr, "\n");
15512b15cb3dSCy Schubert }
15522b15cb3dSCy Schubert 
15532b15cb3dSCy Schubert # define YY_STACK_PRINT(Bottom, Top)                            \
15542b15cb3dSCy Schubert do {                                                            \
15552b15cb3dSCy Schubert   if (yydebug)                                                  \
15562b15cb3dSCy Schubert     yy_stack_print ((Bottom), (Top));                           \
1557*e27abb66SXin LI } while (0)
15582b15cb3dSCy Schubert 
15592b15cb3dSCy Schubert 
15602b15cb3dSCy Schubert /*------------------------------------------------.
15612b15cb3dSCy Schubert | Report that the YYRULE is going to be reduced.  |
15622b15cb3dSCy Schubert `------------------------------------------------*/
15632b15cb3dSCy Schubert 
15642b15cb3dSCy Schubert static void
1565*e27abb66SXin LI yy_reduce_print (yytype_int16 *yyssp, YYSTYPE *yyvsp, int yyrule)
15662b15cb3dSCy Schubert {
1567*e27abb66SXin LI   unsigned long int yylno = yyrline[yyrule];
15682b15cb3dSCy Schubert   int yynrhs = yyr2[yyrule];
15692b15cb3dSCy Schubert   int yyi;
15702b15cb3dSCy Schubert   YYFPRINTF (stderr, "Reducing stack by rule %d (line %lu):\n",
15712b15cb3dSCy Schubert              yyrule - 1, yylno);
15722b15cb3dSCy Schubert   /* The symbols being reduced.  */
15732b15cb3dSCy Schubert   for (yyi = 0; yyi < yynrhs; yyi++)
15742b15cb3dSCy Schubert     {
15752b15cb3dSCy Schubert       YYFPRINTF (stderr, "   $%d = ", yyi + 1);
1576*e27abb66SXin LI       yy_symbol_print (stderr,
1577*e27abb66SXin LI                        yystos[yyssp[yyi + 1 - yynrhs]],
15782b15cb3dSCy Schubert                        &(yyvsp[(yyi + 1) - (yynrhs)])
1579276da39aSCy Schubert                                               );
15802b15cb3dSCy Schubert       YYFPRINTF (stderr, "\n");
15812b15cb3dSCy Schubert     }
15822b15cb3dSCy Schubert }
15832b15cb3dSCy Schubert 
15842b15cb3dSCy Schubert # define YY_REDUCE_PRINT(Rule)          \
15852b15cb3dSCy Schubert do {                                    \
15862b15cb3dSCy Schubert   if (yydebug)                          \
1587*e27abb66SXin LI     yy_reduce_print (yyssp, yyvsp, Rule); \
1588*e27abb66SXin LI } while (0)
15892b15cb3dSCy Schubert 
15902b15cb3dSCy Schubert /* Nonzero means print parse trace.  It is left uninitialized so that
15912b15cb3dSCy Schubert    multiple parsers can coexist.  */
15922b15cb3dSCy Schubert int yydebug;
15932b15cb3dSCy Schubert #else /* !YYDEBUG */
15942b15cb3dSCy Schubert # define YYDPRINTF(Args)
15952b15cb3dSCy Schubert # define YY_SYMBOL_PRINT(Title, Type, Value, Location)
15962b15cb3dSCy Schubert # define YY_STACK_PRINT(Bottom, Top)
15972b15cb3dSCy Schubert # define YY_REDUCE_PRINT(Rule)
15982b15cb3dSCy Schubert #endif /* !YYDEBUG */
15992b15cb3dSCy Schubert 
16002b15cb3dSCy Schubert 
16012b15cb3dSCy Schubert /* YYINITDEPTH -- initial size of the parser's stacks.  */
16022b15cb3dSCy Schubert #ifndef YYINITDEPTH
16032b15cb3dSCy Schubert # define YYINITDEPTH 200
16042b15cb3dSCy Schubert #endif
16052b15cb3dSCy Schubert 
16062b15cb3dSCy Schubert /* YYMAXDEPTH -- maximum size the stacks can grow to (effective only
16072b15cb3dSCy Schubert    if the built-in stack extension method is used).
16082b15cb3dSCy Schubert 
16092b15cb3dSCy Schubert    Do not make this value too large; the results are undefined if
16102b15cb3dSCy Schubert    YYSTACK_ALLOC_MAXIMUM < YYSTACK_BYTES (YYMAXDEPTH)
16112b15cb3dSCy Schubert    evaluated with infinite-precision integer arithmetic.  */
16122b15cb3dSCy Schubert 
16132b15cb3dSCy Schubert #ifndef YYMAXDEPTH
16142b15cb3dSCy Schubert # define YYMAXDEPTH 10000
16152b15cb3dSCy Schubert #endif
16162b15cb3dSCy Schubert 
16172b15cb3dSCy Schubert 
16182b15cb3dSCy Schubert #if YYERROR_VERBOSE
16192b15cb3dSCy Schubert 
16202b15cb3dSCy Schubert # ifndef yystrlen
16212b15cb3dSCy Schubert #  if defined __GLIBC__ && defined _STRING_H
16222b15cb3dSCy Schubert #   define yystrlen strlen
16232b15cb3dSCy Schubert #  else
16242b15cb3dSCy Schubert /* Return the length of YYSTR.  */
16252b15cb3dSCy Schubert static YYSIZE_T
16262b15cb3dSCy Schubert yystrlen (const char *yystr)
16272b15cb3dSCy Schubert {
16282b15cb3dSCy Schubert   YYSIZE_T yylen;
16292b15cb3dSCy Schubert   for (yylen = 0; yystr[yylen]; yylen++)
16302b15cb3dSCy Schubert     continue;
16312b15cb3dSCy Schubert   return yylen;
16322b15cb3dSCy Schubert }
16332b15cb3dSCy Schubert #  endif
16342b15cb3dSCy Schubert # endif
16352b15cb3dSCy Schubert 
16362b15cb3dSCy Schubert # ifndef yystpcpy
16372b15cb3dSCy Schubert #  if defined __GLIBC__ && defined _STRING_H && defined _GNU_SOURCE
16382b15cb3dSCy Schubert #   define yystpcpy stpcpy
16392b15cb3dSCy Schubert #  else
16402b15cb3dSCy Schubert /* Copy YYSRC to YYDEST, returning the address of the terminating '\0' in
16412b15cb3dSCy Schubert    YYDEST.  */
16422b15cb3dSCy Schubert static char *
16432b15cb3dSCy Schubert yystpcpy (char *yydest, const char *yysrc)
16442b15cb3dSCy Schubert {
16452b15cb3dSCy Schubert   char *yyd = yydest;
16462b15cb3dSCy Schubert   const char *yys = yysrc;
16472b15cb3dSCy Schubert 
16482b15cb3dSCy Schubert   while ((*yyd++ = *yys++) != '\0')
16492b15cb3dSCy Schubert     continue;
16502b15cb3dSCy Schubert 
16512b15cb3dSCy Schubert   return yyd - 1;
16522b15cb3dSCy Schubert }
16532b15cb3dSCy Schubert #  endif
16542b15cb3dSCy Schubert # endif
16552b15cb3dSCy Schubert 
16562b15cb3dSCy Schubert # ifndef yytnamerr
16572b15cb3dSCy Schubert /* Copy to YYRES the contents of YYSTR after stripping away unnecessary
16582b15cb3dSCy Schubert    quotes and backslashes, so that it's suitable for yyerror.  The
16592b15cb3dSCy Schubert    heuristic is that double-quoting is unnecessary unless the string
16602b15cb3dSCy Schubert    contains an apostrophe, a comma, or backslash (other than
16612b15cb3dSCy Schubert    backslash-backslash).  YYSTR is taken from yytname.  If YYRES is
16622b15cb3dSCy Schubert    null, do not copy; instead, return the length of what the result
16632b15cb3dSCy Schubert    would have been.  */
16642b15cb3dSCy Schubert static YYSIZE_T
16652b15cb3dSCy Schubert yytnamerr (char *yyres, const char *yystr)
16662b15cb3dSCy Schubert {
16672b15cb3dSCy Schubert   if (*yystr == '"')
16682b15cb3dSCy Schubert     {
16692b15cb3dSCy Schubert       YYSIZE_T yyn = 0;
16702b15cb3dSCy Schubert       char const *yyp = yystr;
16712b15cb3dSCy Schubert 
16722b15cb3dSCy Schubert       for (;;)
16732b15cb3dSCy Schubert         switch (*++yyp)
16742b15cb3dSCy Schubert           {
16752b15cb3dSCy Schubert           case '\'':
16762b15cb3dSCy Schubert           case ',':
16772b15cb3dSCy Schubert             goto do_not_strip_quotes;
16782b15cb3dSCy Schubert 
16792b15cb3dSCy Schubert           case '\\':
16802b15cb3dSCy Schubert             if (*++yyp != '\\')
16812b15cb3dSCy Schubert               goto do_not_strip_quotes;
16822b15cb3dSCy Schubert             /* Fall through.  */
16832b15cb3dSCy Schubert           default:
16842b15cb3dSCy Schubert             if (yyres)
16852b15cb3dSCy Schubert               yyres[yyn] = *yyp;
16862b15cb3dSCy Schubert             yyn++;
16872b15cb3dSCy Schubert             break;
16882b15cb3dSCy Schubert 
16892b15cb3dSCy Schubert           case '"':
16902b15cb3dSCy Schubert             if (yyres)
16912b15cb3dSCy Schubert               yyres[yyn] = '\0';
16922b15cb3dSCy Schubert             return yyn;
16932b15cb3dSCy Schubert           }
16942b15cb3dSCy Schubert     do_not_strip_quotes: ;
16952b15cb3dSCy Schubert     }
16962b15cb3dSCy Schubert 
16972b15cb3dSCy Schubert   if (! yyres)
16982b15cb3dSCy Schubert     return yystrlen (yystr);
16992b15cb3dSCy Schubert 
17002b15cb3dSCy Schubert   return yystpcpy (yyres, yystr) - yyres;
17012b15cb3dSCy Schubert }
17022b15cb3dSCy Schubert # endif
17032b15cb3dSCy Schubert 
17042b15cb3dSCy Schubert /* Copy into *YYMSG, which is of size *YYMSG_ALLOC, an error message
17052b15cb3dSCy Schubert    about the unexpected token YYTOKEN for the state stack whose top is
17062b15cb3dSCy Schubert    YYSSP.
17072b15cb3dSCy Schubert 
17082b15cb3dSCy Schubert    Return 0 if *YYMSG was successfully written.  Return 1 if *YYMSG is
17092b15cb3dSCy Schubert    not large enough to hold the message.  In that case, also set
17102b15cb3dSCy Schubert    *YYMSG_ALLOC to the required number of bytes.  Return 2 if the
17112b15cb3dSCy Schubert    required number of bytes is too large to store.  */
17122b15cb3dSCy Schubert static int
17132b15cb3dSCy Schubert yysyntax_error (YYSIZE_T *yymsg_alloc, char **yymsg,
17142b15cb3dSCy Schubert                 yytype_int16 *yyssp, int yytoken)
17152b15cb3dSCy Schubert {
1716*e27abb66SXin LI   YYSIZE_T yysize0 = yytnamerr (YY_NULLPTR, yytname[yytoken]);
17172b15cb3dSCy Schubert   YYSIZE_T yysize = yysize0;
17182b15cb3dSCy Schubert   enum { YYERROR_VERBOSE_ARGS_MAXIMUM = 5 };
17192b15cb3dSCy Schubert   /* Internationalized format string. */
1720*e27abb66SXin LI   const char *yyformat = YY_NULLPTR;
17212b15cb3dSCy Schubert   /* Arguments of yyformat. */
17222b15cb3dSCy Schubert   char const *yyarg[YYERROR_VERBOSE_ARGS_MAXIMUM];
17232b15cb3dSCy Schubert   /* Number of reported tokens (one for the "unexpected", one per
17242b15cb3dSCy Schubert      "expected"). */
17252b15cb3dSCy Schubert   int yycount = 0;
17262b15cb3dSCy Schubert 
17272b15cb3dSCy Schubert   /* There are many possibilities here to consider:
17282b15cb3dSCy Schubert      - If this state is a consistent state with a default action, then
17292b15cb3dSCy Schubert        the only way this function was invoked is if the default action
17302b15cb3dSCy Schubert        is an error action.  In that case, don't check for expected
17312b15cb3dSCy Schubert        tokens because there are none.
17322b15cb3dSCy Schubert      - The only way there can be no lookahead present (in yychar) is if
17332b15cb3dSCy Schubert        this state is a consistent state with a default action.  Thus,
17342b15cb3dSCy Schubert        detecting the absence of a lookahead is sufficient to determine
17352b15cb3dSCy Schubert        that there is no unexpected or expected token to report.  In that
17362b15cb3dSCy Schubert        case, just report a simple "syntax error".
17372b15cb3dSCy Schubert      - Don't assume there isn't a lookahead just because this state is a
17382b15cb3dSCy Schubert        consistent state with a default action.  There might have been a
17392b15cb3dSCy Schubert        previous inconsistent state, consistent state with a non-default
17402b15cb3dSCy Schubert        action, or user semantic action that manipulated yychar.
17412b15cb3dSCy Schubert      - Of course, the expected token list depends on states to have
17422b15cb3dSCy Schubert        correct lookahead information, and it depends on the parser not
17432b15cb3dSCy Schubert        to perform extra reductions after fetching a lookahead from the
17442b15cb3dSCy Schubert        scanner and before detecting a syntax error.  Thus, state merging
17452b15cb3dSCy Schubert        (from LALR or IELR) and default reductions corrupt the expected
17462b15cb3dSCy Schubert        token list.  However, the list is correct for canonical LR with
17472b15cb3dSCy Schubert        one exception: it will still contain any token that will not be
17482b15cb3dSCy Schubert        accepted due to an error action in a later state.
17492b15cb3dSCy Schubert   */
17502b15cb3dSCy Schubert   if (yytoken != YYEMPTY)
17512b15cb3dSCy Schubert     {
17522b15cb3dSCy Schubert       int yyn = yypact[*yyssp];
17532b15cb3dSCy Schubert       yyarg[yycount++] = yytname[yytoken];
17542b15cb3dSCy Schubert       if (!yypact_value_is_default (yyn))
17552b15cb3dSCy Schubert         {
17562b15cb3dSCy Schubert           /* Start YYX at -YYN if negative to avoid negative indexes in
17572b15cb3dSCy Schubert              YYCHECK.  In other words, skip the first -YYN actions for
17582b15cb3dSCy Schubert              this state because they are default actions.  */
17592b15cb3dSCy Schubert           int yyxbegin = yyn < 0 ? -yyn : 0;
17602b15cb3dSCy Schubert           /* Stay within bounds of both yycheck and yytname.  */
17612b15cb3dSCy Schubert           int yychecklim = YYLAST - yyn + 1;
17622b15cb3dSCy Schubert           int yyxend = yychecklim < YYNTOKENS ? yychecklim : YYNTOKENS;
17632b15cb3dSCy Schubert           int yyx;
17642b15cb3dSCy Schubert 
17652b15cb3dSCy Schubert           for (yyx = yyxbegin; yyx < yyxend; ++yyx)
17662b15cb3dSCy Schubert             if (yycheck[yyx + yyn] == yyx && yyx != YYTERROR
17672b15cb3dSCy Schubert                 && !yytable_value_is_error (yytable[yyx + yyn]))
17682b15cb3dSCy Schubert               {
17692b15cb3dSCy Schubert                 if (yycount == YYERROR_VERBOSE_ARGS_MAXIMUM)
17702b15cb3dSCy Schubert                   {
17712b15cb3dSCy Schubert                     yycount = 1;
17722b15cb3dSCy Schubert                     yysize = yysize0;
17732b15cb3dSCy Schubert                     break;
17742b15cb3dSCy Schubert                   }
17752b15cb3dSCy Schubert                 yyarg[yycount++] = yytname[yyx];
17762b15cb3dSCy Schubert                 {
1777*e27abb66SXin LI                   YYSIZE_T yysize1 = yysize + yytnamerr (YY_NULLPTR, yytname[yyx]);
17782b15cb3dSCy Schubert                   if (! (yysize <= yysize1
17792b15cb3dSCy Schubert                          && yysize1 <= YYSTACK_ALLOC_MAXIMUM))
17802b15cb3dSCy Schubert                     return 2;
17812b15cb3dSCy Schubert                   yysize = yysize1;
17822b15cb3dSCy Schubert                 }
17832b15cb3dSCy Schubert               }
17842b15cb3dSCy Schubert         }
17852b15cb3dSCy Schubert     }
17862b15cb3dSCy Schubert 
17872b15cb3dSCy Schubert   switch (yycount)
17882b15cb3dSCy Schubert     {
17892b15cb3dSCy Schubert # define YYCASE_(N, S)                      \
17902b15cb3dSCy Schubert       case N:                               \
17912b15cb3dSCy Schubert         yyformat = S;                       \
17922b15cb3dSCy Schubert       break
17932b15cb3dSCy Schubert       YYCASE_(0, YY_("syntax error"));
17942b15cb3dSCy Schubert       YYCASE_(1, YY_("syntax error, unexpected %s"));
17952b15cb3dSCy Schubert       YYCASE_(2, YY_("syntax error, unexpected %s, expecting %s"));
17962b15cb3dSCy Schubert       YYCASE_(3, YY_("syntax error, unexpected %s, expecting %s or %s"));
17972b15cb3dSCy Schubert       YYCASE_(4, YY_("syntax error, unexpected %s, expecting %s or %s or %s"));
17982b15cb3dSCy Schubert       YYCASE_(5, YY_("syntax error, unexpected %s, expecting %s or %s or %s or %s"));
17992b15cb3dSCy Schubert # undef YYCASE_
18002b15cb3dSCy Schubert     }
18012b15cb3dSCy Schubert 
18022b15cb3dSCy Schubert   {
18032b15cb3dSCy Schubert     YYSIZE_T yysize1 = yysize + yystrlen (yyformat);
18042b15cb3dSCy Schubert     if (! (yysize <= yysize1 && yysize1 <= YYSTACK_ALLOC_MAXIMUM))
18052b15cb3dSCy Schubert       return 2;
18062b15cb3dSCy Schubert     yysize = yysize1;
18072b15cb3dSCy Schubert   }
18082b15cb3dSCy Schubert 
18092b15cb3dSCy Schubert   if (*yymsg_alloc < yysize)
18102b15cb3dSCy Schubert     {
18112b15cb3dSCy Schubert       *yymsg_alloc = 2 * yysize;
18122b15cb3dSCy Schubert       if (! (yysize <= *yymsg_alloc
18132b15cb3dSCy Schubert              && *yymsg_alloc <= YYSTACK_ALLOC_MAXIMUM))
18142b15cb3dSCy Schubert         *yymsg_alloc = YYSTACK_ALLOC_MAXIMUM;
18152b15cb3dSCy Schubert       return 1;
18162b15cb3dSCy Schubert     }
18172b15cb3dSCy Schubert 
18182b15cb3dSCy Schubert   /* Avoid sprintf, as that infringes on the user's name space.
18192b15cb3dSCy Schubert      Don't have undefined behavior even if the translation
18202b15cb3dSCy Schubert      produced a string with the wrong number of "%s"s.  */
18212b15cb3dSCy Schubert   {
18222b15cb3dSCy Schubert     char *yyp = *yymsg;
18232b15cb3dSCy Schubert     int yyi = 0;
18242b15cb3dSCy Schubert     while ((*yyp = *yyformat) != '\0')
18252b15cb3dSCy Schubert       if (*yyp == '%' && yyformat[1] == 's' && yyi < yycount)
18262b15cb3dSCy Schubert         {
18272b15cb3dSCy Schubert           yyp += yytnamerr (yyp, yyarg[yyi++]);
18282b15cb3dSCy Schubert           yyformat += 2;
18292b15cb3dSCy Schubert         }
18302b15cb3dSCy Schubert       else
18312b15cb3dSCy Schubert         {
18322b15cb3dSCy Schubert           yyp++;
18332b15cb3dSCy Schubert           yyformat++;
18342b15cb3dSCy Schubert         }
18352b15cb3dSCy Schubert   }
18362b15cb3dSCy Schubert   return 0;
18372b15cb3dSCy Schubert }
18382b15cb3dSCy Schubert #endif /* YYERROR_VERBOSE */
18392b15cb3dSCy Schubert 
18402b15cb3dSCy Schubert /*-----------------------------------------------.
18412b15cb3dSCy Schubert | Release the memory associated to this symbol.  |
18422b15cb3dSCy Schubert `-----------------------------------------------*/
18432b15cb3dSCy Schubert 
18442b15cb3dSCy Schubert static void
1845276da39aSCy Schubert yydestruct (const char *yymsg, int yytype, YYSTYPE *yyvaluep)
18462b15cb3dSCy Schubert {
18472b15cb3dSCy Schubert   YYUSE (yyvaluep);
18482b15cb3dSCy Schubert   if (!yymsg)
18492b15cb3dSCy Schubert     yymsg = "Deleting";
18502b15cb3dSCy Schubert   YY_SYMBOL_PRINT (yymsg, yytype, yyvaluep, yylocationp);
18512b15cb3dSCy Schubert 
1852*e27abb66SXin LI   YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
18532b15cb3dSCy Schubert   YYUSE (yytype);
1854*e27abb66SXin LI   YY_IGNORE_MAYBE_UNINITIALIZED_END
18552b15cb3dSCy Schubert }
18562b15cb3dSCy Schubert 
18572b15cb3dSCy Schubert 
18582b15cb3dSCy Schubert 
18592b15cb3dSCy Schubert 
18602b15cb3dSCy Schubert /* The lookahead symbol.  */
18612b15cb3dSCy Schubert int yychar;
18622b15cb3dSCy Schubert 
18632b15cb3dSCy Schubert /* The semantic value of the lookahead symbol.  */
1864*e27abb66SXin LI YYSTYPE yylval;
18652b15cb3dSCy Schubert /* Number of syntax errors so far.  */
18662b15cb3dSCy Schubert int yynerrs;
18672b15cb3dSCy Schubert 
18682b15cb3dSCy Schubert 
18692b15cb3dSCy Schubert /*----------.
18702b15cb3dSCy Schubert | yyparse.  |
18712b15cb3dSCy Schubert `----------*/
18722b15cb3dSCy Schubert 
1873276da39aSCy Schubert int
1874276da39aSCy Schubert yyparse (void)
18752b15cb3dSCy Schubert {
18762b15cb3dSCy Schubert     int yystate;
18772b15cb3dSCy Schubert     /* Number of tokens to shift before error messages enabled.  */
18782b15cb3dSCy Schubert     int yyerrstatus;
18792b15cb3dSCy Schubert 
18802b15cb3dSCy Schubert     /* The stacks and their tools:
1881*e27abb66SXin LI        'yyss': related to states.
1882*e27abb66SXin LI        'yyvs': related to semantic values.
18832b15cb3dSCy Schubert 
18842b15cb3dSCy Schubert        Refer to the stacks through separate pointers, to allow yyoverflow
18852b15cb3dSCy Schubert        to reallocate them elsewhere.  */
18862b15cb3dSCy Schubert 
18872b15cb3dSCy Schubert     /* The state stack.  */
18882b15cb3dSCy Schubert     yytype_int16 yyssa[YYINITDEPTH];
18892b15cb3dSCy Schubert     yytype_int16 *yyss;
18902b15cb3dSCy Schubert     yytype_int16 *yyssp;
18912b15cb3dSCy Schubert 
18922b15cb3dSCy Schubert     /* The semantic value stack.  */
18932b15cb3dSCy Schubert     YYSTYPE yyvsa[YYINITDEPTH];
18942b15cb3dSCy Schubert     YYSTYPE *yyvs;
18952b15cb3dSCy Schubert     YYSTYPE *yyvsp;
18962b15cb3dSCy Schubert 
18972b15cb3dSCy Schubert     YYSIZE_T yystacksize;
18982b15cb3dSCy Schubert 
18992b15cb3dSCy Schubert   int yyn;
19002b15cb3dSCy Schubert   int yyresult;
19012b15cb3dSCy Schubert   /* Lookahead token as an internal (translated) token number.  */
19022b15cb3dSCy Schubert   int yytoken = 0;
19032b15cb3dSCy Schubert   /* The variables used to return semantic value and location from the
19042b15cb3dSCy Schubert      action routines.  */
19052b15cb3dSCy Schubert   YYSTYPE yyval;
19062b15cb3dSCy Schubert 
19072b15cb3dSCy Schubert #if YYERROR_VERBOSE
19082b15cb3dSCy Schubert   /* Buffer for error messages, and its allocated size.  */
19092b15cb3dSCy Schubert   char yymsgbuf[128];
19102b15cb3dSCy Schubert   char *yymsg = yymsgbuf;
19112b15cb3dSCy Schubert   YYSIZE_T yymsg_alloc = sizeof yymsgbuf;
19122b15cb3dSCy Schubert #endif
19132b15cb3dSCy Schubert 
19142b15cb3dSCy Schubert #define YYPOPSTACK(N)   (yyvsp -= (N), yyssp -= (N))
19152b15cb3dSCy Schubert 
19162b15cb3dSCy Schubert   /* The number of symbols on the RHS of the reduced rule.
19172b15cb3dSCy Schubert      Keep to zero when no symbol should be popped.  */
19182b15cb3dSCy Schubert   int yylen = 0;
19192b15cb3dSCy Schubert 
19202b15cb3dSCy Schubert   yyssp = yyss = yyssa;
19212b15cb3dSCy Schubert   yyvsp = yyvs = yyvsa;
19222b15cb3dSCy Schubert   yystacksize = YYINITDEPTH;
19232b15cb3dSCy Schubert 
19242b15cb3dSCy Schubert   YYDPRINTF ((stderr, "Starting parse\n"));
19252b15cb3dSCy Schubert 
19262b15cb3dSCy Schubert   yystate = 0;
19272b15cb3dSCy Schubert   yyerrstatus = 0;
19282b15cb3dSCy Schubert   yynerrs = 0;
19292b15cb3dSCy Schubert   yychar = YYEMPTY; /* Cause a token to be read.  */
19302b15cb3dSCy Schubert   goto yysetstate;
19312b15cb3dSCy Schubert 
19322b15cb3dSCy Schubert /*------------------------------------------------------------.
19332b15cb3dSCy Schubert | yynewstate -- Push a new state, which is found in yystate.  |
19342b15cb3dSCy Schubert `------------------------------------------------------------*/
19352b15cb3dSCy Schubert  yynewstate:
19362b15cb3dSCy Schubert   /* In all cases, when you get here, the value and location stacks
19372b15cb3dSCy Schubert      have just been pushed.  So pushing a state here evens the stacks.  */
19382b15cb3dSCy Schubert   yyssp++;
19392b15cb3dSCy Schubert 
19402b15cb3dSCy Schubert  yysetstate:
19412b15cb3dSCy Schubert   *yyssp = yystate;
19422b15cb3dSCy Schubert 
19432b15cb3dSCy Schubert   if (yyss + yystacksize - 1 <= yyssp)
19442b15cb3dSCy Schubert     {
19452b15cb3dSCy Schubert       /* Get the current used size of the three stacks, in elements.  */
19462b15cb3dSCy Schubert       YYSIZE_T yysize = yyssp - yyss + 1;
19472b15cb3dSCy Schubert 
19482b15cb3dSCy Schubert #ifdef yyoverflow
19492b15cb3dSCy Schubert       {
19502b15cb3dSCy Schubert         /* Give user a chance to reallocate the stack.  Use copies of
19512b15cb3dSCy Schubert            these so that the &'s don't force the real ones into
19522b15cb3dSCy Schubert            memory.  */
19532b15cb3dSCy Schubert         YYSTYPE *yyvs1 = yyvs;
19542b15cb3dSCy Schubert         yytype_int16 *yyss1 = yyss;
19552b15cb3dSCy Schubert 
19562b15cb3dSCy Schubert         /* Each stack pointer address is followed by the size of the
19572b15cb3dSCy Schubert            data in use in that stack, in bytes.  This used to be a
19582b15cb3dSCy Schubert            conditional around just the two extra args, but that might
19592b15cb3dSCy Schubert            be undefined if yyoverflow is a macro.  */
19602b15cb3dSCy Schubert         yyoverflow (YY_("memory exhausted"),
19612b15cb3dSCy Schubert                     &yyss1, yysize * sizeof (*yyssp),
19622b15cb3dSCy Schubert                     &yyvs1, yysize * sizeof (*yyvsp),
19632b15cb3dSCy Schubert                     &yystacksize);
19642b15cb3dSCy Schubert 
19652b15cb3dSCy Schubert         yyss = yyss1;
19662b15cb3dSCy Schubert         yyvs = yyvs1;
19672b15cb3dSCy Schubert       }
19682b15cb3dSCy Schubert #else /* no yyoverflow */
19692b15cb3dSCy Schubert # ifndef YYSTACK_RELOCATE
19702b15cb3dSCy Schubert       goto yyexhaustedlab;
19712b15cb3dSCy Schubert # else
19722b15cb3dSCy Schubert       /* Extend the stack our own way.  */
19732b15cb3dSCy Schubert       if (YYMAXDEPTH <= yystacksize)
19742b15cb3dSCy Schubert         goto yyexhaustedlab;
19752b15cb3dSCy Schubert       yystacksize *= 2;
19762b15cb3dSCy Schubert       if (YYMAXDEPTH < yystacksize)
19772b15cb3dSCy Schubert         yystacksize = YYMAXDEPTH;
19782b15cb3dSCy Schubert 
19792b15cb3dSCy Schubert       {
19802b15cb3dSCy Schubert         yytype_int16 *yyss1 = yyss;
19812b15cb3dSCy Schubert         union yyalloc *yyptr =
19822b15cb3dSCy Schubert           (union yyalloc *) YYSTACK_ALLOC (YYSTACK_BYTES (yystacksize));
19832b15cb3dSCy Schubert         if (! yyptr)
19842b15cb3dSCy Schubert           goto yyexhaustedlab;
19852b15cb3dSCy Schubert         YYSTACK_RELOCATE (yyss_alloc, yyss);
19862b15cb3dSCy Schubert         YYSTACK_RELOCATE (yyvs_alloc, yyvs);
19872b15cb3dSCy Schubert #  undef YYSTACK_RELOCATE
19882b15cb3dSCy Schubert         if (yyss1 != yyssa)
19892b15cb3dSCy Schubert           YYSTACK_FREE (yyss1);
19902b15cb3dSCy Schubert       }
19912b15cb3dSCy Schubert # endif
19922b15cb3dSCy Schubert #endif /* no yyoverflow */
19932b15cb3dSCy Schubert 
19942b15cb3dSCy Schubert       yyssp = yyss + yysize - 1;
19952b15cb3dSCy Schubert       yyvsp = yyvs + yysize - 1;
19962b15cb3dSCy Schubert 
19972b15cb3dSCy Schubert       YYDPRINTF ((stderr, "Stack size increased to %lu\n",
19982b15cb3dSCy Schubert                   (unsigned long int) yystacksize));
19992b15cb3dSCy Schubert 
20002b15cb3dSCy Schubert       if (yyss + yystacksize - 1 <= yyssp)
20012b15cb3dSCy Schubert         YYABORT;
20022b15cb3dSCy Schubert     }
20032b15cb3dSCy Schubert 
20042b15cb3dSCy Schubert   YYDPRINTF ((stderr, "Entering state %d\n", yystate));
20052b15cb3dSCy Schubert 
20062b15cb3dSCy Schubert   if (yystate == YYFINAL)
20072b15cb3dSCy Schubert     YYACCEPT;
20082b15cb3dSCy Schubert 
20092b15cb3dSCy Schubert   goto yybackup;
20102b15cb3dSCy Schubert 
20112b15cb3dSCy Schubert /*-----------.
20122b15cb3dSCy Schubert | yybackup.  |
20132b15cb3dSCy Schubert `-----------*/
20142b15cb3dSCy Schubert yybackup:
20152b15cb3dSCy Schubert 
20162b15cb3dSCy Schubert   /* Do appropriate processing given the current state.  Read a
20172b15cb3dSCy Schubert      lookahead token if we need one and don't already have one.  */
20182b15cb3dSCy Schubert 
20192b15cb3dSCy Schubert   /* First try to decide what to do without reference to lookahead token.  */
20202b15cb3dSCy Schubert   yyn = yypact[yystate];
20212b15cb3dSCy Schubert   if (yypact_value_is_default (yyn))
20222b15cb3dSCy Schubert     goto yydefault;
20232b15cb3dSCy Schubert 
20242b15cb3dSCy Schubert   /* Not known => get a lookahead token if don't already have one.  */
20252b15cb3dSCy Schubert 
20262b15cb3dSCy Schubert   /* YYCHAR is either YYEMPTY or YYEOF or a valid lookahead symbol.  */
20272b15cb3dSCy Schubert   if (yychar == YYEMPTY)
20282b15cb3dSCy Schubert     {
20292b15cb3dSCy Schubert       YYDPRINTF ((stderr, "Reading a token: "));
2030*e27abb66SXin LI       yychar = yylex ();
20312b15cb3dSCy Schubert     }
20322b15cb3dSCy Schubert 
20332b15cb3dSCy Schubert   if (yychar <= YYEOF)
20342b15cb3dSCy Schubert     {
20352b15cb3dSCy Schubert       yychar = yytoken = YYEOF;
20362b15cb3dSCy Schubert       YYDPRINTF ((stderr, "Now at end of input.\n"));
20372b15cb3dSCy Schubert     }
20382b15cb3dSCy Schubert   else
20392b15cb3dSCy Schubert     {
20402b15cb3dSCy Schubert       yytoken = YYTRANSLATE (yychar);
20412b15cb3dSCy Schubert       YY_SYMBOL_PRINT ("Next token is", yytoken, &yylval, &yylloc);
20422b15cb3dSCy Schubert     }
20432b15cb3dSCy Schubert 
20442b15cb3dSCy Schubert   /* If the proper action on seeing token YYTOKEN is to reduce or to
20452b15cb3dSCy Schubert      detect an error, take that action.  */
20462b15cb3dSCy Schubert   yyn += yytoken;
20472b15cb3dSCy Schubert   if (yyn < 0 || YYLAST < yyn || yycheck[yyn] != yytoken)
20482b15cb3dSCy Schubert     goto yydefault;
20492b15cb3dSCy Schubert   yyn = yytable[yyn];
20502b15cb3dSCy Schubert   if (yyn <= 0)
20512b15cb3dSCy Schubert     {
20522b15cb3dSCy Schubert       if (yytable_value_is_error (yyn))
20532b15cb3dSCy Schubert         goto yyerrlab;
20542b15cb3dSCy Schubert       yyn = -yyn;
20552b15cb3dSCy Schubert       goto yyreduce;
20562b15cb3dSCy Schubert     }
20572b15cb3dSCy Schubert 
20582b15cb3dSCy Schubert   /* Count tokens shifted since error; after three, turn off error
20592b15cb3dSCy Schubert      status.  */
20602b15cb3dSCy Schubert   if (yyerrstatus)
20612b15cb3dSCy Schubert     yyerrstatus--;
20622b15cb3dSCy Schubert 
20632b15cb3dSCy Schubert   /* Shift the lookahead token.  */
20642b15cb3dSCy Schubert   YY_SYMBOL_PRINT ("Shifting", yytoken, &yylval, &yylloc);
20652b15cb3dSCy Schubert 
20662b15cb3dSCy Schubert   /* Discard the shifted token.  */
20672b15cb3dSCy Schubert   yychar = YYEMPTY;
20682b15cb3dSCy Schubert 
20692b15cb3dSCy Schubert   yystate = yyn;
20702b15cb3dSCy Schubert   YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
20712b15cb3dSCy Schubert   *++yyvsp = yylval;
20722b15cb3dSCy Schubert   YY_IGNORE_MAYBE_UNINITIALIZED_END
20732b15cb3dSCy Schubert 
20742b15cb3dSCy Schubert   goto yynewstate;
20752b15cb3dSCy Schubert 
20762b15cb3dSCy Schubert 
20772b15cb3dSCy Schubert /*-----------------------------------------------------------.
20782b15cb3dSCy Schubert | yydefault -- do the default action for the current state.  |
20792b15cb3dSCy Schubert `-----------------------------------------------------------*/
20802b15cb3dSCy Schubert yydefault:
20812b15cb3dSCy Schubert   yyn = yydefact[yystate];
20822b15cb3dSCy Schubert   if (yyn == 0)
20832b15cb3dSCy Schubert     goto yyerrlab;
20842b15cb3dSCy Schubert   goto yyreduce;
20852b15cb3dSCy Schubert 
20862b15cb3dSCy Schubert 
20872b15cb3dSCy Schubert /*-----------------------------.
20882b15cb3dSCy Schubert | yyreduce -- Do a reduction.  |
20892b15cb3dSCy Schubert `-----------------------------*/
20902b15cb3dSCy Schubert yyreduce:
20912b15cb3dSCy Schubert   /* yyn is the number of a rule to reduce with.  */
20922b15cb3dSCy Schubert   yylen = yyr2[yyn];
20932b15cb3dSCy Schubert 
20942b15cb3dSCy Schubert   /* If YYLEN is nonzero, implement the default value of the action:
2095*e27abb66SXin LI      '$$ = $1'.
20962b15cb3dSCy Schubert 
20972b15cb3dSCy Schubert      Otherwise, the following line sets YYVAL to garbage.
20982b15cb3dSCy Schubert      This behavior is undocumented and Bison
20992b15cb3dSCy Schubert      users should not rely upon it.  Assigning to YYVAL
21002b15cb3dSCy Schubert      unconditionally makes the parser a bit smaller, and it avoids a
21012b15cb3dSCy Schubert      GCC warning that YYVAL may be used uninitialized.  */
21022b15cb3dSCy Schubert   yyval = yyvsp[1-yylen];
21032b15cb3dSCy Schubert 
21042b15cb3dSCy Schubert 
21052b15cb3dSCy Schubert   YY_REDUCE_PRINT (yyn);
21062b15cb3dSCy Schubert   switch (yyn)
21072b15cb3dSCy Schubert     {
21082b15cb3dSCy Schubert         case 5:
2109*e27abb66SXin LI #line 377 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
21102b15cb3dSCy Schubert     {
21112b15cb3dSCy Schubert 			/* I will need to incorporate much more fine grained
21122b15cb3dSCy Schubert 			 * error messages. The following should suffice for
21132b15cb3dSCy Schubert 			 * the time being.
21142b15cb3dSCy Schubert 			 */
2115276da39aSCy Schubert 			struct FILE_INFO * ip_ctx = lex_current();
21162b15cb3dSCy Schubert 			msyslog(LOG_ERR,
21172b15cb3dSCy Schubert 				"syntax error in %s line %d, column %d",
2118276da39aSCy Schubert 				ip_ctx->fname,
2119276da39aSCy Schubert 				ip_ctx->errpos.nline,
2120276da39aSCy Schubert 				ip_ctx->errpos.ncol);
21212b15cb3dSCy Schubert 		}
2122*e27abb66SXin LI #line 2123 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
21232b15cb3dSCy Schubert     break;
21242b15cb3dSCy Schubert 
21252b15cb3dSCy Schubert   case 20:
2126*e27abb66SXin LI #line 413 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
21272b15cb3dSCy Schubert     {
21282b15cb3dSCy Schubert 			peer_node *my_node;
21292b15cb3dSCy Schubert 
2130*e27abb66SXin LI 			my_node = create_peer_node((yyvsp[-2].Integer), (yyvsp[-1].Address_node), (yyvsp[0].Attr_val_fifo));
21312b15cb3dSCy Schubert 			APPEND_G_FIFO(cfgt.peers, my_node);
21322b15cb3dSCy Schubert 		}
2133*e27abb66SXin LI #line 2134 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
21342b15cb3dSCy Schubert     break;
21352b15cb3dSCy Schubert 
2136a25439b6SCy Schubert   case 27:
2137*e27abb66SXin LI #line 432 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2138*e27abb66SXin LI     { (yyval.Address_node) = create_address_node((yyvsp[0].String), (yyvsp[-1].Integer)); }
2139*e27abb66SXin LI #line 2140 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
21402b15cb3dSCy Schubert     break;
21412b15cb3dSCy Schubert 
2142a25439b6SCy Schubert   case 28:
2143*e27abb66SXin LI #line 437 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2144*e27abb66SXin LI     { (yyval.Address_node) = create_address_node((yyvsp[0].String), AF_UNSPEC); }
2145*e27abb66SXin LI #line 2146 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
21462b15cb3dSCy Schubert     break;
21472b15cb3dSCy Schubert 
2148a25439b6SCy Schubert   case 29:
2149*e27abb66SXin LI #line 442 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2150a25439b6SCy Schubert     { (yyval.Integer) = AF_INET; }
2151*e27abb66SXin LI #line 2152 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
21522b15cb3dSCy Schubert     break;
21532b15cb3dSCy Schubert 
2154a25439b6SCy Schubert   case 30:
2155*e27abb66SXin LI #line 444 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2156a25439b6SCy Schubert     { (yyval.Integer) = AF_INET6; }
2157*e27abb66SXin LI #line 2158 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
21582b15cb3dSCy Schubert     break;
21592b15cb3dSCy Schubert 
2160a25439b6SCy Schubert   case 31:
2161*e27abb66SXin LI #line 449 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2162a25439b6SCy Schubert     { (yyval.Attr_val_fifo) = NULL; }
2163*e27abb66SXin LI #line 2164 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
2164a25439b6SCy Schubert     break;
2165a25439b6SCy Schubert 
2166a25439b6SCy Schubert   case 32:
2167*e27abb66SXin LI #line 451 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
21682b15cb3dSCy Schubert     {
2169*e27abb66SXin LI 			(yyval.Attr_val_fifo) = (yyvsp[-1].Attr_val_fifo);
2170*e27abb66SXin LI 			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val));
21712b15cb3dSCy Schubert 		}
2172*e27abb66SXin LI #line 2173 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
21732b15cb3dSCy Schubert     break;
21742b15cb3dSCy Schubert 
2175a25439b6SCy Schubert   case 36:
2176*e27abb66SXin LI #line 465 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2177*e27abb66SXin LI     { (yyval.Attr_val) = create_attr_ival(T_Flag, (yyvsp[0].Integer)); }
2178*e27abb66SXin LI #line 2179 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
21792b15cb3dSCy Schubert     break;
21802b15cb3dSCy Schubert 
2181a25439b6SCy Schubert   case 45:
2182*e27abb66SXin LI #line 481 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2183*e27abb66SXin LI     { (yyval.Attr_val) = create_attr_ival((yyvsp[-1].Integer), (yyvsp[0].Integer)); }
2184*e27abb66SXin LI #line 2185 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
21852b15cb3dSCy Schubert     break;
21862b15cb3dSCy Schubert 
2187a25439b6SCy Schubert   case 46:
2188*e27abb66SXin LI #line 483 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2189*e27abb66SXin LI     { (yyval.Attr_val) = create_attr_uval((yyvsp[-1].Integer), (yyvsp[0].Integer)); }
2190*e27abb66SXin LI #line 2191 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
21912b15cb3dSCy Schubert     break;
21922b15cb3dSCy Schubert 
2193a25439b6SCy Schubert   case 53:
2194*e27abb66SXin LI #line 497 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2195*e27abb66SXin LI     { (yyval.Attr_val) = create_attr_sval((yyvsp[-1].Integer), (yyvsp[0].String)); }
2196*e27abb66SXin LI #line 2197 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
2197a25439b6SCy Schubert     break;
2198a25439b6SCy Schubert 
21992b15cb3dSCy Schubert   case 55:
2200*e27abb66SXin LI #line 511 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
22012b15cb3dSCy Schubert     {
22022b15cb3dSCy Schubert 			unpeer_node *my_node;
22032b15cb3dSCy Schubert 
2204*e27abb66SXin LI 			my_node = create_unpeer_node((yyvsp[0].Address_node));
22052b15cb3dSCy Schubert 			if (my_node)
22062b15cb3dSCy Schubert 				APPEND_G_FIFO(cfgt.unpeers, my_node);
22072b15cb3dSCy Schubert 		}
2208*e27abb66SXin LI #line 2209 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
22092b15cb3dSCy Schubert     break;
22102b15cb3dSCy Schubert 
2211a25439b6SCy Schubert   case 58:
2212*e27abb66SXin LI #line 532 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2213a25439b6SCy Schubert     { cfgt.broadcastclient = 1; }
2214*e27abb66SXin LI #line 2215 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
22152b15cb3dSCy Schubert     break;
22162b15cb3dSCy Schubert 
2217a25439b6SCy Schubert   case 59:
2218*e27abb66SXin LI #line 534 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2219*e27abb66SXin LI     { CONCAT_G_FIFOS(cfgt.manycastserver, (yyvsp[0].Address_fifo)); }
2220*e27abb66SXin LI #line 2221 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
22212b15cb3dSCy Schubert     break;
22222b15cb3dSCy Schubert 
2223a25439b6SCy Schubert   case 60:
2224*e27abb66SXin LI #line 536 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2225*e27abb66SXin LI     { CONCAT_G_FIFOS(cfgt.multicastclient, (yyvsp[0].Address_fifo)); }
2226*e27abb66SXin LI #line 2227 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
22272b15cb3dSCy Schubert     break;
22282b15cb3dSCy Schubert 
2229a25439b6SCy Schubert   case 61:
2230*e27abb66SXin LI #line 538 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2231*e27abb66SXin LI     { cfgt.mdnstries = (yyvsp[0].Integer); }
2232*e27abb66SXin LI #line 2233 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
2233a25439b6SCy Schubert     break;
2234a25439b6SCy Schubert 
22352b15cb3dSCy Schubert   case 62:
2236*e27abb66SXin LI #line 549 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
22372b15cb3dSCy Schubert     {
22382b15cb3dSCy Schubert 			attr_val *atrv;
22392b15cb3dSCy Schubert 
2240*e27abb66SXin LI 			atrv = create_attr_ival((yyvsp[-1].Integer), (yyvsp[0].Integer));
22412b15cb3dSCy Schubert 			APPEND_G_FIFO(cfgt.vars, atrv);
22422b15cb3dSCy Schubert 		}
2243*e27abb66SXin LI #line 2244 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
22442b15cb3dSCy Schubert     break;
22452b15cb3dSCy Schubert 
2246a25439b6SCy Schubert   case 63:
2247*e27abb66SXin LI #line 556 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2248*e27abb66SXin LI     { cfgt.auth.control_key = (yyvsp[0].Integer); }
2249*e27abb66SXin LI #line 2250 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
2250a25439b6SCy Schubert     break;
2251a25439b6SCy Schubert 
2252a25439b6SCy Schubert   case 64:
2253*e27abb66SXin LI #line 558 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
22542b15cb3dSCy Schubert     {
22552b15cb3dSCy Schubert 			cfgt.auth.cryptosw++;
2256*e27abb66SXin LI 			CONCAT_G_FIFOS(cfgt.auth.crypto_cmd_list, (yyvsp[0].Attr_val_fifo));
22572b15cb3dSCy Schubert 		}
2258*e27abb66SXin LI #line 2259 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
22592b15cb3dSCy Schubert     break;
22602b15cb3dSCy Schubert 
2261a25439b6SCy Schubert   case 65:
2262*e27abb66SXin LI #line 563 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2263*e27abb66SXin LI     { cfgt.auth.keys = (yyvsp[0].String); }
2264*e27abb66SXin LI #line 2265 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
22652b15cb3dSCy Schubert     break;
22662b15cb3dSCy Schubert 
2267a25439b6SCy Schubert   case 66:
2268*e27abb66SXin LI #line 565 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2269*e27abb66SXin LI     { cfgt.auth.keysdir = (yyvsp[0].String); }
2270*e27abb66SXin LI #line 2271 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
22712b15cb3dSCy Schubert     break;
22722b15cb3dSCy Schubert 
2273a25439b6SCy Schubert   case 67:
2274*e27abb66SXin LI #line 567 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2275*e27abb66SXin LI     { cfgt.auth.request_key = (yyvsp[0].Integer); }
2276*e27abb66SXin LI #line 2277 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
22772b15cb3dSCy Schubert     break;
22782b15cb3dSCy Schubert 
2279a25439b6SCy Schubert   case 68:
2280*e27abb66SXin LI #line 569 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2281*e27abb66SXin LI     { cfgt.auth.revoke = (yyvsp[0].Integer); }
2282*e27abb66SXin LI #line 2283 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
2283a25439b6SCy Schubert     break;
2284a25439b6SCy Schubert 
2285a25439b6SCy Schubert   case 69:
2286*e27abb66SXin LI #line 571 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
22872b15cb3dSCy Schubert     {
2288*e27abb66SXin LI 			cfgt.auth.trusted_key_list = (yyvsp[0].Attr_val_fifo);
22892b15cb3dSCy Schubert 
22902b15cb3dSCy Schubert 			// if (!cfgt.auth.trusted_key_list)
22912b15cb3dSCy Schubert 			// 	cfgt.auth.trusted_key_list = $2;
22922b15cb3dSCy Schubert 			// else
22932b15cb3dSCy Schubert 			// 	LINK_SLIST(cfgt.auth.trusted_key_list, $2, link);
22942b15cb3dSCy Schubert 		}
2295*e27abb66SXin LI #line 2296 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
22962b15cb3dSCy Schubert     break;
22972b15cb3dSCy Schubert 
2298a25439b6SCy Schubert   case 70:
2299*e27abb66SXin LI #line 580 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2300*e27abb66SXin LI     { cfgt.auth.ntp_signd_socket = (yyvsp[0].String); }
2301*e27abb66SXin LI #line 2302 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
23022b15cb3dSCy Schubert     break;
23032b15cb3dSCy Schubert 
2304a25439b6SCy Schubert   case 71:
2305*e27abb66SXin LI #line 585 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2306a25439b6SCy Schubert     { (yyval.Attr_val_fifo) = NULL; }
2307*e27abb66SXin LI #line 2308 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
2308a25439b6SCy Schubert     break;
2309a25439b6SCy Schubert 
2310a25439b6SCy Schubert   case 72:
2311*e27abb66SXin LI #line 587 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
23122b15cb3dSCy Schubert     {
2313*e27abb66SXin LI 			(yyval.Attr_val_fifo) = (yyvsp[-1].Attr_val_fifo);
2314*e27abb66SXin LI 			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val));
23152b15cb3dSCy Schubert 		}
2316*e27abb66SXin LI #line 2317 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
23172b15cb3dSCy Schubert     break;
23182b15cb3dSCy Schubert 
2319a25439b6SCy Schubert   case 73:
2320*e27abb66SXin LI #line 595 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2321*e27abb66SXin LI     { (yyval.Attr_val) = create_attr_sval((yyvsp[-1].Integer), (yyvsp[0].String)); }
2322*e27abb66SXin LI #line 2323 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
2323a25439b6SCy Schubert     break;
2324a25439b6SCy Schubert 
2325a25439b6SCy Schubert   case 74:
2326*e27abb66SXin LI #line 597 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
23272b15cb3dSCy Schubert     {
23282b15cb3dSCy Schubert 			(yyval.Attr_val) = NULL;
2329*e27abb66SXin LI 			cfgt.auth.revoke = (yyvsp[0].Integer);
23302b15cb3dSCy Schubert 			msyslog(LOG_WARNING,
23312b15cb3dSCy Schubert 				"'crypto revoke %d' is deprecated, "
23322b15cb3dSCy Schubert 				"please use 'revoke %d' instead.",
23332b15cb3dSCy Schubert 				cfgt.auth.revoke, cfgt.auth.revoke);
23342b15cb3dSCy Schubert 		}
2335*e27abb66SXin LI #line 2336 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
23362b15cb3dSCy Schubert     break;
23372b15cb3dSCy Schubert 
2338a25439b6SCy Schubert   case 80:
2339*e27abb66SXin LI #line 622 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2340*e27abb66SXin LI     { CONCAT_G_FIFOS(cfgt.orphan_cmds, (yyvsp[0].Attr_val_fifo)); }
2341*e27abb66SXin LI #line 2342 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
2342a25439b6SCy Schubert     break;
2343a25439b6SCy Schubert 
23442b15cb3dSCy Schubert   case 81:
2345*e27abb66SXin LI #line 627 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
23462b15cb3dSCy Schubert     {
2347*e27abb66SXin LI 			(yyval.Attr_val_fifo) = (yyvsp[-1].Attr_val_fifo);
2348*e27abb66SXin LI 			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val));
23492b15cb3dSCy Schubert 		}
2350*e27abb66SXin LI #line 2351 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
23512b15cb3dSCy Schubert     break;
23522b15cb3dSCy Schubert 
23532b15cb3dSCy Schubert   case 82:
2354*e27abb66SXin LI #line 632 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
23552b15cb3dSCy Schubert     {
23562b15cb3dSCy Schubert 			(yyval.Attr_val_fifo) = NULL;
2357*e27abb66SXin LI 			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val));
23582b15cb3dSCy Schubert 		}
2359*e27abb66SXin LI #line 2360 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
23602b15cb3dSCy Schubert     break;
23612b15cb3dSCy Schubert 
2362a25439b6SCy Schubert   case 83:
2363*e27abb66SXin LI #line 640 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2364*e27abb66SXin LI     { (yyval.Attr_val) = create_attr_dval((yyvsp[-1].Integer), (double)(yyvsp[0].Integer)); }
2365*e27abb66SXin LI #line 2366 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
23662b15cb3dSCy Schubert     break;
23672b15cb3dSCy Schubert 
2368a25439b6SCy Schubert   case 84:
2369*e27abb66SXin LI #line 642 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2370*e27abb66SXin LI     { (yyval.Attr_val) = create_attr_dval((yyvsp[-1].Integer), (yyvsp[0].Double)); }
2371*e27abb66SXin LI #line 2372 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
23722b15cb3dSCy Schubert     break;
23732b15cb3dSCy Schubert 
2374a25439b6SCy Schubert   case 85:
2375*e27abb66SXin LI #line 644 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2376*e27abb66SXin LI     { (yyval.Attr_val) = create_attr_dval((yyvsp[-1].Integer), (double)(yyvsp[0].Integer)); }
2377*e27abb66SXin LI #line 2378 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
23782b15cb3dSCy Schubert     break;
23792b15cb3dSCy Schubert 
2380a25439b6SCy Schubert   case 96:
2381*e27abb66SXin LI #line 670 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2382*e27abb66SXin LI     { CONCAT_G_FIFOS(cfgt.stats_list, (yyvsp[0].Int_fifo)); }
2383*e27abb66SXin LI #line 2384 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
2384a25439b6SCy Schubert     break;
2385a25439b6SCy Schubert 
2386a25439b6SCy Schubert   case 97:
2387*e27abb66SXin LI #line 672 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
23882b15cb3dSCy Schubert     {
2389276da39aSCy Schubert 			if (lex_from_file()) {
2390*e27abb66SXin LI 				cfgt.stats_dir = (yyvsp[0].String);
23912b15cb3dSCy Schubert 			} else {
2392*e27abb66SXin LI 				YYFREE((yyvsp[0].String));
2393276da39aSCy Schubert 				yyerror("statsdir remote configuration ignored");
23942b15cb3dSCy Schubert 			}
23952b15cb3dSCy Schubert 		}
2396*e27abb66SXin LI #line 2397 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
23972b15cb3dSCy Schubert     break;
23982b15cb3dSCy Schubert 
23992b15cb3dSCy Schubert   case 98:
2400*e27abb66SXin LI #line 681 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
24012b15cb3dSCy Schubert     {
24022b15cb3dSCy Schubert 			filegen_node *fgn;
24032b15cb3dSCy Schubert 
2404*e27abb66SXin LI 			fgn = create_filegen_node((yyvsp[-1].Integer), (yyvsp[0].Attr_val_fifo));
24052b15cb3dSCy Schubert 			APPEND_G_FIFO(cfgt.filegen_opts, fgn);
24062b15cb3dSCy Schubert 		}
2407*e27abb66SXin LI #line 2408 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
24082b15cb3dSCy Schubert     break;
24092b15cb3dSCy Schubert 
24102b15cb3dSCy Schubert   case 99:
2411*e27abb66SXin LI #line 691 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
24122b15cb3dSCy Schubert     {
2413*e27abb66SXin LI 			(yyval.Int_fifo) = (yyvsp[-1].Int_fifo);
2414*e27abb66SXin LI 			APPEND_G_FIFO((yyval.Int_fifo), create_int_node((yyvsp[0].Integer)));
24152b15cb3dSCy Schubert 		}
2416*e27abb66SXin LI #line 2417 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
24172b15cb3dSCy Schubert     break;
24182b15cb3dSCy Schubert 
24192b15cb3dSCy Schubert   case 100:
2420*e27abb66SXin LI #line 696 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
24212b15cb3dSCy Schubert     {
24222b15cb3dSCy Schubert 			(yyval.Int_fifo) = NULL;
2423*e27abb66SXin LI 			APPEND_G_FIFO((yyval.Int_fifo), create_int_node((yyvsp[0].Integer)));
24242b15cb3dSCy Schubert 		}
2425*e27abb66SXin LI #line 2426 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
24262b15cb3dSCy Schubert     break;
24272b15cb3dSCy Schubert 
2428a25439b6SCy Schubert   case 109:
2429*e27abb66SXin LI #line 715 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2430a25439b6SCy Schubert     { (yyval.Attr_val_fifo) = NULL; }
2431*e27abb66SXin LI #line 2432 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
2432a25439b6SCy Schubert     break;
2433a25439b6SCy Schubert 
2434a25439b6SCy Schubert   case 110:
2435*e27abb66SXin LI #line 717 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
24362b15cb3dSCy Schubert     {
2437*e27abb66SXin LI 			(yyval.Attr_val_fifo) = (yyvsp[-1].Attr_val_fifo);
2438*e27abb66SXin LI 			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val));
24392b15cb3dSCy Schubert 		}
2440*e27abb66SXin LI #line 2441 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
24412b15cb3dSCy Schubert     break;
24422b15cb3dSCy Schubert 
24432b15cb3dSCy Schubert   case 111:
2444*e27abb66SXin LI #line 725 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
24452b15cb3dSCy Schubert     {
2446276da39aSCy Schubert 			if (lex_from_file()) {
2447*e27abb66SXin LI 				(yyval.Attr_val) = create_attr_sval((yyvsp[-1].Integer), (yyvsp[0].String));
24482b15cb3dSCy Schubert 			} else {
24492b15cb3dSCy Schubert 				(yyval.Attr_val) = NULL;
2450*e27abb66SXin LI 				YYFREE((yyvsp[0].String));
2451276da39aSCy Schubert 				yyerror("filegen file remote config ignored");
24522b15cb3dSCy Schubert 			}
24532b15cb3dSCy Schubert 		}
2454*e27abb66SXin LI #line 2455 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
24552b15cb3dSCy Schubert     break;
24562b15cb3dSCy Schubert 
24572b15cb3dSCy Schubert   case 112:
2458*e27abb66SXin LI #line 735 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
24592b15cb3dSCy Schubert     {
2460276da39aSCy Schubert 			if (lex_from_file()) {
2461*e27abb66SXin LI 				(yyval.Attr_val) = create_attr_ival((yyvsp[-1].Integer), (yyvsp[0].Integer));
24622b15cb3dSCy Schubert 			} else {
24632b15cb3dSCy Schubert 				(yyval.Attr_val) = NULL;
2464276da39aSCy Schubert 				yyerror("filegen type remote config ignored");
24652b15cb3dSCy Schubert 			}
24662b15cb3dSCy Schubert 		}
2467*e27abb66SXin LI #line 2468 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
24682b15cb3dSCy Schubert     break;
24692b15cb3dSCy Schubert 
24702b15cb3dSCy Schubert   case 113:
2471*e27abb66SXin LI #line 744 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
24722b15cb3dSCy Schubert     {
24732b15cb3dSCy Schubert 			const char *err;
24742b15cb3dSCy Schubert 
2475276da39aSCy Schubert 			if (lex_from_file()) {
2476*e27abb66SXin LI 				(yyval.Attr_val) = create_attr_ival(T_Flag, (yyvsp[0].Integer));
24772b15cb3dSCy Schubert 			} else {
24782b15cb3dSCy Schubert 				(yyval.Attr_val) = NULL;
2479*e27abb66SXin LI 				if (T_Link == (yyvsp[0].Integer))
24802b15cb3dSCy Schubert 					err = "filegen link remote config ignored";
24812b15cb3dSCy Schubert 				else
24822b15cb3dSCy Schubert 					err = "filegen nolink remote config ignored";
2483276da39aSCy Schubert 				yyerror(err);
24842b15cb3dSCy Schubert 			}
24852b15cb3dSCy Schubert 		}
2486*e27abb66SXin LI #line 2487 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
24872b15cb3dSCy Schubert     break;
24882b15cb3dSCy Schubert 
2489a25439b6SCy Schubert   case 114:
2490*e27abb66SXin LI #line 759 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2491*e27abb66SXin LI     { (yyval.Attr_val) = create_attr_ival(T_Flag, (yyvsp[0].Integer)); }
2492*e27abb66SXin LI #line 2493 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
2493a25439b6SCy Schubert     break;
2494a25439b6SCy Schubert 
24952b15cb3dSCy Schubert   case 126:
2496*e27abb66SXin LI #line 789 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
24972b15cb3dSCy Schubert     {
2498*e27abb66SXin LI 			CONCAT_G_FIFOS(cfgt.discard_opts, (yyvsp[0].Attr_val_fifo));
24992b15cb3dSCy Schubert 		}
2500*e27abb66SXin LI #line 2501 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
25012b15cb3dSCy Schubert     break;
25022b15cb3dSCy Schubert 
25032b15cb3dSCy Schubert   case 127:
2504*e27abb66SXin LI #line 793 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
25052b15cb3dSCy Schubert     {
2506*e27abb66SXin LI 			CONCAT_G_FIFOS(cfgt.mru_opts, (yyvsp[0].Attr_val_fifo));
25072b15cb3dSCy Schubert 		}
2508*e27abb66SXin LI #line 2509 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
25092b15cb3dSCy Schubert     break;
25102b15cb3dSCy Schubert 
25112b15cb3dSCy Schubert   case 128:
2512*e27abb66SXin LI #line 797 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
25132b15cb3dSCy Schubert     {
25142b15cb3dSCy Schubert 			restrict_node *rn;
25152b15cb3dSCy Schubert 
2516*e27abb66SXin LI 			rn = create_restrict_node((yyvsp[-1].Address_node), NULL, (yyvsp[0].Int_fifo),
2517276da39aSCy Schubert 						  lex_current()->curpos.nline);
25182b15cb3dSCy Schubert 			APPEND_G_FIFO(cfgt.restrict_opts, rn);
25192b15cb3dSCy Schubert 		}
2520*e27abb66SXin LI #line 2521 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
25212b15cb3dSCy Schubert     break;
25222b15cb3dSCy Schubert 
25232b15cb3dSCy Schubert   case 129:
2524*e27abb66SXin LI #line 805 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
25252b15cb3dSCy Schubert     {
25262b15cb3dSCy Schubert 			restrict_node *rn;
25272b15cb3dSCy Schubert 
2528*e27abb66SXin LI 			rn = create_restrict_node((yyvsp[-3].Address_node), (yyvsp[-1].Address_node), (yyvsp[0].Int_fifo),
2529276da39aSCy Schubert 						  lex_current()->curpos.nline);
25302b15cb3dSCy Schubert 			APPEND_G_FIFO(cfgt.restrict_opts, rn);
25312b15cb3dSCy Schubert 		}
2532*e27abb66SXin LI #line 2533 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
25332b15cb3dSCy Schubert     break;
25342b15cb3dSCy Schubert 
25352b15cb3dSCy Schubert   case 130:
2536*e27abb66SXin LI #line 813 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
25372b15cb3dSCy Schubert     {
25382b15cb3dSCy Schubert 			restrict_node *rn;
25392b15cb3dSCy Schubert 
2540*e27abb66SXin LI 			rn = create_restrict_node(NULL, NULL, (yyvsp[0].Int_fifo),
2541276da39aSCy Schubert 						  lex_current()->curpos.nline);
25422b15cb3dSCy Schubert 			APPEND_G_FIFO(cfgt.restrict_opts, rn);
25432b15cb3dSCy Schubert 		}
2544*e27abb66SXin LI #line 2545 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
25452b15cb3dSCy Schubert     break;
25462b15cb3dSCy Schubert 
25472b15cb3dSCy Schubert   case 131:
2548*e27abb66SXin LI #line 821 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
25492b15cb3dSCy Schubert     {
25502b15cb3dSCy Schubert 			restrict_node *rn;
25512b15cb3dSCy Schubert 
25522b15cb3dSCy Schubert 			rn = create_restrict_node(
25532b15cb3dSCy Schubert 				create_address_node(
25542b15cb3dSCy Schubert 					estrdup("0.0.0.0"),
25552b15cb3dSCy Schubert 					AF_INET),
25562b15cb3dSCy Schubert 				create_address_node(
25572b15cb3dSCy Schubert 					estrdup("0.0.0.0"),
25582b15cb3dSCy Schubert 					AF_INET),
2559*e27abb66SXin LI 				(yyvsp[0].Int_fifo),
2560276da39aSCy Schubert 				lex_current()->curpos.nline);
25612b15cb3dSCy Schubert 			APPEND_G_FIFO(cfgt.restrict_opts, rn);
25622b15cb3dSCy Schubert 		}
2563*e27abb66SXin LI #line 2564 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
25642b15cb3dSCy Schubert     break;
25652b15cb3dSCy Schubert 
25662b15cb3dSCy Schubert   case 132:
2567*e27abb66SXin LI #line 836 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
25682b15cb3dSCy Schubert     {
25692b15cb3dSCy Schubert 			restrict_node *rn;
25702b15cb3dSCy Schubert 
25712b15cb3dSCy Schubert 			rn = create_restrict_node(
25722b15cb3dSCy Schubert 				create_address_node(
25732b15cb3dSCy Schubert 					estrdup("::"),
25742b15cb3dSCy Schubert 					AF_INET6),
25752b15cb3dSCy Schubert 				create_address_node(
25762b15cb3dSCy Schubert 					estrdup("::"),
25772b15cb3dSCy Schubert 					AF_INET6),
2578*e27abb66SXin LI 				(yyvsp[0].Int_fifo),
2579276da39aSCy Schubert 				lex_current()->curpos.nline);
25802b15cb3dSCy Schubert 			APPEND_G_FIFO(cfgt.restrict_opts, rn);
25812b15cb3dSCy Schubert 		}
2582*e27abb66SXin LI #line 2583 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
25832b15cb3dSCy Schubert     break;
25842b15cb3dSCy Schubert 
25852b15cb3dSCy Schubert   case 133:
2586*e27abb66SXin LI #line 851 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
25872b15cb3dSCy Schubert     {
25882b15cb3dSCy Schubert 			restrict_node *	rn;
25892b15cb3dSCy Schubert 
2590*e27abb66SXin LI 			APPEND_G_FIFO((yyvsp[0].Int_fifo), create_int_node((yyvsp[-1].Integer)));
25912b15cb3dSCy Schubert 			rn = create_restrict_node(
2592*e27abb66SXin LI 				NULL, NULL, (yyvsp[0].Int_fifo), lex_current()->curpos.nline);
25932b15cb3dSCy Schubert 			APPEND_G_FIFO(cfgt.restrict_opts, rn);
25942b15cb3dSCy Schubert 		}
2595*e27abb66SXin LI #line 2596 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
25962b15cb3dSCy Schubert     break;
25972b15cb3dSCy Schubert 
2598a25439b6SCy Schubert   case 134:
2599*e27abb66SXin LI #line 863 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2600a25439b6SCy Schubert     { (yyval.Int_fifo) = NULL; }
2601*e27abb66SXin LI #line 2602 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
2602a25439b6SCy Schubert     break;
2603a25439b6SCy Schubert 
2604a25439b6SCy Schubert   case 135:
2605*e27abb66SXin LI #line 865 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
26062b15cb3dSCy Schubert     {
2607*e27abb66SXin LI 			(yyval.Int_fifo) = (yyvsp[-1].Int_fifo);
2608*e27abb66SXin LI 			APPEND_G_FIFO((yyval.Int_fifo), create_int_node((yyvsp[0].Integer)));
26092b15cb3dSCy Schubert 		}
2610*e27abb66SXin LI #line 2611 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
26112b15cb3dSCy Schubert     break;
26122b15cb3dSCy Schubert 
26132b15cb3dSCy Schubert   case 151:
2614*e27abb66SXin LI #line 891 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
26152b15cb3dSCy Schubert     {
2616*e27abb66SXin LI 			(yyval.Attr_val_fifo) = (yyvsp[-1].Attr_val_fifo);
2617*e27abb66SXin LI 			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val));
26182b15cb3dSCy Schubert 		}
2619*e27abb66SXin LI #line 2620 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
26202b15cb3dSCy Schubert     break;
26212b15cb3dSCy Schubert 
26222b15cb3dSCy Schubert   case 152:
2623*e27abb66SXin LI #line 896 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
26242b15cb3dSCy Schubert     {
26252b15cb3dSCy Schubert 			(yyval.Attr_val_fifo) = NULL;
2626*e27abb66SXin LI 			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val));
26272b15cb3dSCy Schubert 		}
2628*e27abb66SXin LI #line 2629 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
26292b15cb3dSCy Schubert     break;
26302b15cb3dSCy Schubert 
2631a25439b6SCy Schubert   case 153:
2632*e27abb66SXin LI #line 904 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2633*e27abb66SXin LI     { (yyval.Attr_val) = create_attr_ival((yyvsp[-1].Integer), (yyvsp[0].Integer)); }
2634*e27abb66SXin LI #line 2635 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
2635a25439b6SCy Schubert     break;
2636a25439b6SCy Schubert 
26372b15cb3dSCy Schubert   case 157:
2638*e27abb66SXin LI #line 915 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
26392b15cb3dSCy Schubert     {
2640*e27abb66SXin LI 			(yyval.Attr_val_fifo) = (yyvsp[-1].Attr_val_fifo);
2641*e27abb66SXin LI 			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val));
26422b15cb3dSCy Schubert 		}
2643*e27abb66SXin LI #line 2644 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
26442b15cb3dSCy Schubert     break;
26452b15cb3dSCy Schubert 
26462b15cb3dSCy Schubert   case 158:
2647*e27abb66SXin LI #line 920 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
26482b15cb3dSCy Schubert     {
26492b15cb3dSCy Schubert 			(yyval.Attr_val_fifo) = NULL;
2650*e27abb66SXin LI 			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val));
26512b15cb3dSCy Schubert 		}
2652*e27abb66SXin LI #line 2653 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
26532b15cb3dSCy Schubert     break;
26542b15cb3dSCy Schubert 
2655a25439b6SCy Schubert   case 159:
2656*e27abb66SXin LI #line 928 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2657*e27abb66SXin LI     { (yyval.Attr_val) = create_attr_ival((yyvsp[-1].Integer), (yyvsp[0].Integer)); }
2658*e27abb66SXin LI #line 2659 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
2659a25439b6SCy Schubert     break;
2660a25439b6SCy Schubert 
26612b15cb3dSCy Schubert   case 168:
2662*e27abb66SXin LI #line 948 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
26632b15cb3dSCy Schubert     {
26642b15cb3dSCy Schubert 			addr_opts_node *aon;
26652b15cb3dSCy Schubert 
2666*e27abb66SXin LI 			aon = create_addr_opts_node((yyvsp[-1].Address_node), (yyvsp[0].Attr_val_fifo));
26672b15cb3dSCy Schubert 			APPEND_G_FIFO(cfgt.fudge, aon);
26682b15cb3dSCy Schubert 		}
2669*e27abb66SXin LI #line 2670 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
26702b15cb3dSCy Schubert     break;
26712b15cb3dSCy Schubert 
26722b15cb3dSCy Schubert   case 169:
2673*e27abb66SXin LI #line 958 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
26742b15cb3dSCy Schubert     {
2675*e27abb66SXin LI 			(yyval.Attr_val_fifo) = (yyvsp[-1].Attr_val_fifo);
2676*e27abb66SXin LI 			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val));
26772b15cb3dSCy Schubert 		}
2678*e27abb66SXin LI #line 2679 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
26792b15cb3dSCy Schubert     break;
26802b15cb3dSCy Schubert 
26812b15cb3dSCy Schubert   case 170:
2682*e27abb66SXin LI #line 963 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
26832b15cb3dSCy Schubert     {
26842b15cb3dSCy Schubert 			(yyval.Attr_val_fifo) = NULL;
2685*e27abb66SXin LI 			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val));
26862b15cb3dSCy Schubert 		}
2687*e27abb66SXin LI #line 2688 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
26882b15cb3dSCy Schubert     break;
26892b15cb3dSCy Schubert 
2690a25439b6SCy Schubert   case 171:
2691*e27abb66SXin LI #line 971 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2692*e27abb66SXin LI     { (yyval.Attr_val) = create_attr_dval((yyvsp[-1].Integer), (yyvsp[0].Double)); }
2693*e27abb66SXin LI #line 2694 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
26942b15cb3dSCy Schubert     break;
26952b15cb3dSCy Schubert 
2696a25439b6SCy Schubert   case 172:
2697*e27abb66SXin LI #line 973 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2698*e27abb66SXin LI     { (yyval.Attr_val) = create_attr_ival((yyvsp[-1].Integer), (yyvsp[0].Integer)); }
2699*e27abb66SXin LI #line 2700 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
27002b15cb3dSCy Schubert     break;
27012b15cb3dSCy Schubert 
2702a25439b6SCy Schubert   case 173:
2703*e27abb66SXin LI #line 975 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
27043311ff84SXin LI     {
2705*e27abb66SXin LI 			if ((yyvsp[0].Integer) >= 0 && (yyvsp[0].Integer) <= 16) {
2706*e27abb66SXin LI 				(yyval.Attr_val) = create_attr_ival((yyvsp[-1].Integer), (yyvsp[0].Integer));
27073311ff84SXin LI 			} else {
27083311ff84SXin LI 				(yyval.Attr_val) = NULL;
27093311ff84SXin LI 				yyerror("fudge factor: stratum value not in [0..16], ignored");
27103311ff84SXin LI 			}
27113311ff84SXin LI 		}
2712*e27abb66SXin LI #line 2713 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
27132b15cb3dSCy Schubert     break;
27142b15cb3dSCy Schubert 
2715a25439b6SCy Schubert   case 174:
2716*e27abb66SXin LI #line 984 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2717*e27abb66SXin LI     { (yyval.Attr_val) = create_attr_sval((yyvsp[-1].Integer), (yyvsp[0].String)); }
2718*e27abb66SXin LI #line 2719 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
27192b15cb3dSCy Schubert     break;
27202b15cb3dSCy Schubert 
2721a25439b6SCy Schubert   case 175:
2722*e27abb66SXin LI #line 986 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2723*e27abb66SXin LI     { (yyval.Attr_val) = create_attr_sval((yyvsp[-1].Integer), (yyvsp[0].String)); }
2724*e27abb66SXin LI #line 2725 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
27252b15cb3dSCy Schubert     break;
27262b15cb3dSCy Schubert 
2727a25439b6SCy Schubert   case 182:
2728*e27abb66SXin LI #line 1007 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2729*e27abb66SXin LI     { CONCAT_G_FIFOS(cfgt.rlimit, (yyvsp[0].Attr_val_fifo)); }
2730*e27abb66SXin LI #line 2731 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
2731a25439b6SCy Schubert     break;
2732a25439b6SCy Schubert 
27332b15cb3dSCy Schubert   case 183:
2734*e27abb66SXin LI #line 1012 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
27352b15cb3dSCy Schubert     {
2736*e27abb66SXin LI 			(yyval.Attr_val_fifo) = (yyvsp[-1].Attr_val_fifo);
2737*e27abb66SXin LI 			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val));
27382b15cb3dSCy Schubert 		}
2739*e27abb66SXin LI #line 2740 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
27402b15cb3dSCy Schubert     break;
27412b15cb3dSCy Schubert 
27422b15cb3dSCy Schubert   case 184:
2743*e27abb66SXin LI #line 1017 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
27442b15cb3dSCy Schubert     {
27452b15cb3dSCy Schubert 			(yyval.Attr_val_fifo) = NULL;
2746*e27abb66SXin LI 			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val));
27472b15cb3dSCy Schubert 		}
2748*e27abb66SXin LI #line 2749 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
27492b15cb3dSCy Schubert     break;
27502b15cb3dSCy Schubert 
2751a25439b6SCy Schubert   case 185:
2752*e27abb66SXin LI #line 1025 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2753*e27abb66SXin LI     { (yyval.Attr_val) = create_attr_ival((yyvsp[-1].Integer), (yyvsp[0].Integer)); }
2754*e27abb66SXin LI #line 2755 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
27552b15cb3dSCy Schubert     break;
27562b15cb3dSCy Schubert 
2757a25439b6SCy Schubert   case 189:
2758*e27abb66SXin LI #line 1041 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2759*e27abb66SXin LI     { CONCAT_G_FIFOS(cfgt.enable_opts, (yyvsp[0].Attr_val_fifo)); }
2760*e27abb66SXin LI #line 2761 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
27612b15cb3dSCy Schubert     break;
27622b15cb3dSCy Schubert 
2763a25439b6SCy Schubert   case 190:
2764*e27abb66SXin LI #line 1043 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2765*e27abb66SXin LI     { CONCAT_G_FIFOS(cfgt.disable_opts, (yyvsp[0].Attr_val_fifo)); }
2766*e27abb66SXin LI #line 2767 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
2767a25439b6SCy Schubert     break;
2768a25439b6SCy Schubert 
27692b15cb3dSCy Schubert   case 191:
2770*e27abb66SXin LI #line 1048 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
27712b15cb3dSCy Schubert     {
2772*e27abb66SXin LI 			(yyval.Attr_val_fifo) = (yyvsp[-1].Attr_val_fifo);
2773*e27abb66SXin LI 			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val));
27742b15cb3dSCy Schubert 		}
2775*e27abb66SXin LI #line 2776 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
27762b15cb3dSCy Schubert     break;
27772b15cb3dSCy Schubert 
27782b15cb3dSCy Schubert   case 192:
2779*e27abb66SXin LI #line 1053 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
27802b15cb3dSCy Schubert     {
27812b15cb3dSCy Schubert 			(yyval.Attr_val_fifo) = NULL;
2782*e27abb66SXin LI 			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val));
27832b15cb3dSCy Schubert 		}
2784*e27abb66SXin LI #line 2785 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
27852b15cb3dSCy Schubert     break;
27862b15cb3dSCy Schubert 
2787a25439b6SCy Schubert   case 193:
2788*e27abb66SXin LI #line 1061 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2789*e27abb66SXin LI     { (yyval.Attr_val) = create_attr_ival(T_Flag, (yyvsp[0].Integer)); }
2790*e27abb66SXin LI #line 2791 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
2791a25439b6SCy Schubert     break;
2792a25439b6SCy Schubert 
2793a25439b6SCy Schubert   case 194:
2794*e27abb66SXin LI #line 1063 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
27952b15cb3dSCy Schubert     {
2796276da39aSCy Schubert 			if (lex_from_file()) {
2797*e27abb66SXin LI 				(yyval.Attr_val) = create_attr_ival(T_Flag, (yyvsp[0].Integer));
27982b15cb3dSCy Schubert 			} else {
27992b15cb3dSCy Schubert 				char err_str[128];
28002b15cb3dSCy Schubert 
28012b15cb3dSCy Schubert 				(yyval.Attr_val) = NULL;
28022b15cb3dSCy Schubert 				snprintf(err_str, sizeof(err_str),
28032b15cb3dSCy Schubert 					 "enable/disable %s remote configuration ignored",
2804*e27abb66SXin LI 					 keyword((yyvsp[0].Integer)));
2805276da39aSCy Schubert 				yyerror(err_str);
28062b15cb3dSCy Schubert 			}
28072b15cb3dSCy Schubert 		}
2808*e27abb66SXin LI #line 2809 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
2809a25439b6SCy Schubert     break;
2810a25439b6SCy Schubert 
281168ba7e87SXin LI   case 207:
2812*e27abb66SXin LI #line 1102 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2813*e27abb66SXin LI     { CONCAT_G_FIFOS(cfgt.tinker, (yyvsp[0].Attr_val_fifo)); }
2814*e27abb66SXin LI #line 2815 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
28152b15cb3dSCy Schubert     break;
28162b15cb3dSCy Schubert 
281768ba7e87SXin LI   case 208:
2818*e27abb66SXin LI #line 1107 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
28192b15cb3dSCy Schubert     {
2820*e27abb66SXin LI 			(yyval.Attr_val_fifo) = (yyvsp[-1].Attr_val_fifo);
2821*e27abb66SXin LI 			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val));
28222b15cb3dSCy Schubert 		}
2823*e27abb66SXin LI #line 2824 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
28242b15cb3dSCy Schubert     break;
28252b15cb3dSCy Schubert 
282668ba7e87SXin LI   case 209:
2827*e27abb66SXin LI #line 1112 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2828*e27abb66SXin LI     {
2829*e27abb66SXin LI 			(yyval.Attr_val_fifo) = NULL;
2830*e27abb66SXin LI 			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val));
2831*e27abb66SXin LI 		}
2832*e27abb66SXin LI #line 2833 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
2833276da39aSCy Schubert     break;
2834276da39aSCy Schubert 
2835*e27abb66SXin LI   case 210:
2836*e27abb66SXin LI #line 1120 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2837*e27abb66SXin LI     { (yyval.Attr_val) = create_attr_dval((yyvsp[-1].Integer), (yyvsp[0].Double)); }
2838*e27abb66SXin LI #line 2839 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
283968ba7e87SXin LI     break;
284068ba7e87SXin LI 
284168ba7e87SXin LI   case 223:
2842*e27abb66SXin LI #line 1145 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
284368ba7e87SXin LI     {
284468ba7e87SXin LI 			attr_val *av;
284568ba7e87SXin LI 
2846*e27abb66SXin LI 			av = create_attr_dval((yyvsp[-1].Integer), (yyvsp[0].Double));
284768ba7e87SXin LI 			APPEND_G_FIFO(cfgt.vars, av);
284868ba7e87SXin LI 		}
2849*e27abb66SXin LI #line 2850 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
285068ba7e87SXin LI     break;
285168ba7e87SXin LI 
285268ba7e87SXin LI   case 224:
2853*e27abb66SXin LI #line 1152 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
285468ba7e87SXin LI     {
285568ba7e87SXin LI 			attr_val *av;
285668ba7e87SXin LI 
2857*e27abb66SXin LI 			av = create_attr_ival((yyvsp[-1].Integer), (yyvsp[0].Integer));
285868ba7e87SXin LI 			APPEND_G_FIFO(cfgt.vars, av);
285968ba7e87SXin LI 		}
2860*e27abb66SXin LI #line 2861 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
286168ba7e87SXin LI     break;
286268ba7e87SXin LI 
286368ba7e87SXin LI   case 225:
2864*e27abb66SXin LI #line 1159 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2865*e27abb66SXin LI     {
2866*e27abb66SXin LI 			attr_val *av;
2867*e27abb66SXin LI 
2868*e27abb66SXin LI 			av = create_attr_sval((yyvsp[-1].Integer), (yyvsp[0].String));
2869*e27abb66SXin LI 			APPEND_G_FIFO(cfgt.vars, av);
2870*e27abb66SXin LI 		}
2871*e27abb66SXin LI #line 2872 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
2872*e27abb66SXin LI     break;
2873*e27abb66SXin LI 
2874*e27abb66SXin LI   case 226:
2875*e27abb66SXin LI #line 1166 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
28762b15cb3dSCy Schubert     {
28772b15cb3dSCy Schubert 			char error_text[64];
28782b15cb3dSCy Schubert 			attr_val *av;
28792b15cb3dSCy Schubert 
2880276da39aSCy Schubert 			if (lex_from_file()) {
2881*e27abb66SXin LI 				av = create_attr_sval((yyvsp[-1].Integer), (yyvsp[0].String));
28822b15cb3dSCy Schubert 				APPEND_G_FIFO(cfgt.vars, av);
28832b15cb3dSCy Schubert 			} else {
2884*e27abb66SXin LI 				YYFREE((yyvsp[0].String));
28852b15cb3dSCy Schubert 				snprintf(error_text, sizeof(error_text),
28862b15cb3dSCy Schubert 					 "%s remote config ignored",
2887*e27abb66SXin LI 					 keyword((yyvsp[-1].Integer)));
2888276da39aSCy Schubert 				yyerror(error_text);
28892b15cb3dSCy Schubert 			}
28902b15cb3dSCy Schubert 		}
2891*e27abb66SXin LI #line 2892 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
28922b15cb3dSCy Schubert     break;
28932b15cb3dSCy Schubert 
2894*e27abb66SXin LI   case 227:
2895*e27abb66SXin LI #line 1182 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
28962b15cb3dSCy Schubert     {
2897276da39aSCy Schubert 			if (!lex_from_file()) {
2898*e27abb66SXin LI 				YYFREE((yyvsp[-1].String)); /* avoid leak */
2899276da39aSCy Schubert 				yyerror("remote includefile ignored");
2900276da39aSCy Schubert 				break;
29012b15cb3dSCy Schubert 			}
2902276da39aSCy Schubert 			if (lex_level() > MAXINCLUDELEVEL) {
2903276da39aSCy Schubert 				fprintf(stderr, "getconfig: Maximum include file level exceeded.\n");
2904276da39aSCy Schubert 				msyslog(LOG_ERR, "getconfig: Maximum include file level exceeded.");
2905276da39aSCy Schubert 			} else {
2906*e27abb66SXin LI 				const char * path = FindConfig((yyvsp[-1].String)); /* might return $2! */
2907276da39aSCy Schubert 				if (!lex_push_file(path, "r")) {
2908276da39aSCy Schubert 					fprintf(stderr, "getconfig: Couldn't open <%s>\n", path);
2909276da39aSCy Schubert 					msyslog(LOG_ERR, "getconfig: Couldn't open <%s>", path);
2910276da39aSCy Schubert 				}
2911276da39aSCy Schubert 			}
2912*e27abb66SXin LI 			YYFREE((yyvsp[-1].String)); /* avoid leak */
2913276da39aSCy Schubert 		}
2914*e27abb66SXin LI #line 2915 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
2915a25439b6SCy Schubert     break;
2916a25439b6SCy Schubert 
2917a25439b6SCy Schubert   case 228:
2918*e27abb66SXin LI #line 1201 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2919*e27abb66SXin LI     { lex_flush_stack(); }
2920*e27abb66SXin LI #line 2921 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
29212b15cb3dSCy Schubert     break;
29222b15cb3dSCy Schubert 
2923a25439b6SCy Schubert   case 229:
2924*e27abb66SXin LI #line 1203 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2925*e27abb66SXin LI     { /* see drift_parm below for actions */ }
2926*e27abb66SXin LI #line 2927 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
2927a25439b6SCy Schubert     break;
2928a25439b6SCy Schubert 
2929276da39aSCy Schubert   case 230:
2930*e27abb66SXin LI #line 1205 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2931*e27abb66SXin LI     { CONCAT_G_FIFOS(cfgt.logconfig, (yyvsp[0].Attr_val_fifo)); }
2932*e27abb66SXin LI #line 2933 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
2933276da39aSCy Schubert     break;
2934276da39aSCy Schubert 
293568ba7e87SXin LI   case 231:
2936*e27abb66SXin LI #line 1207 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2937*e27abb66SXin LI     { CONCAT_G_FIFOS(cfgt.phone, (yyvsp[0].String_fifo)); }
2938*e27abb66SXin LI #line 2939 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
293968ba7e87SXin LI     break;
294068ba7e87SXin LI 
294168ba7e87SXin LI   case 232:
2942*e27abb66SXin LI #line 1209 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2943*e27abb66SXin LI     { APPEND_G_FIFO(cfgt.setvar, (yyvsp[0].Set_var)); }
2944*e27abb66SXin LI #line 2945 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
294568ba7e87SXin LI     break;
294668ba7e87SXin LI 
294768ba7e87SXin LI   case 233:
2948*e27abb66SXin LI #line 1211 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2949*e27abb66SXin LI     {
2950*e27abb66SXin LI 			addr_opts_node *aon;
2951*e27abb66SXin LI 
2952*e27abb66SXin LI 			aon = create_addr_opts_node((yyvsp[-1].Address_node), (yyvsp[0].Attr_val_fifo));
2953*e27abb66SXin LI 			APPEND_G_FIFO(cfgt.trap, aon);
2954*e27abb66SXin LI 		}
2955*e27abb66SXin LI #line 2956 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
295668ba7e87SXin LI     break;
295768ba7e87SXin LI 
2958*e27abb66SXin LI   case 234:
2959*e27abb66SXin LI #line 1218 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2960*e27abb66SXin LI     { CONCAT_G_FIFOS(cfgt.ttl, (yyvsp[0].Attr_val_fifo)); }
2961*e27abb66SXin LI #line 2962 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
2962*e27abb66SXin LI     break;
2963*e27abb66SXin LI 
2964*e27abb66SXin LI   case 239:
2965*e27abb66SXin LI #line 1233 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2966276da39aSCy Schubert     {
2967276da39aSCy Schubert #ifndef LEAP_SMEAR
2968276da39aSCy Schubert 			yyerror("Built without LEAP_SMEAR support.");
2969276da39aSCy Schubert #endif
2970276da39aSCy Schubert 		}
2971*e27abb66SXin LI #line 2972 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
29722b15cb3dSCy Schubert     break;
29732b15cb3dSCy Schubert 
297468ba7e87SXin LI   case 245:
2975*e27abb66SXin LI #line 1253 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
29762b15cb3dSCy Schubert     {
29779034852cSGleb Smirnoff 			if (lex_from_file()) {
29782b15cb3dSCy Schubert 				attr_val *av;
2979*e27abb66SXin LI 				av = create_attr_sval(T_Driftfile, (yyvsp[0].String));
29802b15cb3dSCy Schubert 				APPEND_G_FIFO(cfgt.vars, av);
29819034852cSGleb Smirnoff 			} else {
2982*e27abb66SXin LI 				YYFREE((yyvsp[0].String));
29839034852cSGleb Smirnoff 				yyerror("driftfile remote configuration ignored");
29842b15cb3dSCy Schubert 			}
29859034852cSGleb Smirnoff 		}
2986*e27abb66SXin LI #line 2987 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
29872b15cb3dSCy Schubert     break;
29882b15cb3dSCy Schubert 
298968ba7e87SXin LI   case 246:
2990*e27abb66SXin LI #line 1264 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
2991*e27abb66SXin LI     {
2992*e27abb66SXin LI 			if (lex_from_file()) {
2993*e27abb66SXin LI 				attr_val *av;
2994*e27abb66SXin LI 				av = create_attr_sval(T_Driftfile, (yyvsp[-1].String));
2995*e27abb66SXin LI 				APPEND_G_FIFO(cfgt.vars, av);
2996*e27abb66SXin LI 				av = create_attr_dval(T_WanderThreshold, (yyvsp[0].Double));
2997*e27abb66SXin LI 				APPEND_G_FIFO(cfgt.vars, av);
2998*e27abb66SXin LI 			} else {
2999*e27abb66SXin LI 				YYFREE((yyvsp[-1].String));
3000*e27abb66SXin LI 				yyerror("driftfile remote configuration ignored");
3001*e27abb66SXin LI 			}
3002*e27abb66SXin LI 		}
3003*e27abb66SXin LI #line 3004 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
3004*e27abb66SXin LI     break;
3005*e27abb66SXin LI 
3006*e27abb66SXin LI   case 247:
3007*e27abb66SXin LI #line 1277 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
30082b15cb3dSCy Schubert     {
30099034852cSGleb Smirnoff 			if (lex_from_file()) {
30102b15cb3dSCy Schubert 				attr_val *av;
30119034852cSGleb Smirnoff 				av = create_attr_sval(T_Driftfile, estrdup(""));
30122b15cb3dSCy Schubert 				APPEND_G_FIFO(cfgt.vars, av);
30139034852cSGleb Smirnoff 			} else {
30149034852cSGleb Smirnoff 				yyerror("driftfile remote configuration ignored");
30152b15cb3dSCy Schubert 			}
30169034852cSGleb Smirnoff 		}
3017*e27abb66SXin LI #line 3018 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
3018a25439b6SCy Schubert     break;
3019a25439b6SCy Schubert 
3020*e27abb66SXin LI   case 248:
3021*e27abb66SXin LI #line 1290 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
3022*e27abb66SXin LI     { (yyval.Set_var) = create_setvar_node((yyvsp[-3].String), (yyvsp[-1].String), (yyvsp[0].Integer)); }
3023*e27abb66SXin LI #line 3024 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
30242b15cb3dSCy Schubert     break;
30252b15cb3dSCy Schubert 
3026a25439b6SCy Schubert   case 250:
3027*e27abb66SXin LI #line 1296 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
3028*e27abb66SXin LI     { (yyval.Integer) = 0; }
3029*e27abb66SXin LI #line 3030 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
3030276da39aSCy Schubert     break;
3031276da39aSCy Schubert 
3032276da39aSCy Schubert   case 251:
3033*e27abb66SXin LI #line 1301 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
3034*e27abb66SXin LI     { (yyval.Attr_val_fifo) = NULL; }
3035*e27abb66SXin LI #line 3036 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
3036276da39aSCy Schubert     break;
3037276da39aSCy Schubert 
3038276da39aSCy Schubert   case 252:
3039*e27abb66SXin LI #line 1303 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
3040*e27abb66SXin LI     {
3041*e27abb66SXin LI 			(yyval.Attr_val_fifo) = (yyvsp[-1].Attr_val_fifo);
3042*e27abb66SXin LI 			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val));
3043*e27abb66SXin LI 		}
3044*e27abb66SXin LI #line 3045 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
3045276da39aSCy Schubert     break;
3046276da39aSCy Schubert 
3047276da39aSCy Schubert   case 253:
3048*e27abb66SXin LI #line 1311 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
3049*e27abb66SXin LI     { (yyval.Attr_val) = create_attr_ival((yyvsp[-1].Integer), (yyvsp[0].Integer)); }
3050*e27abb66SXin LI #line 3051 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
305168ba7e87SXin LI     break;
305268ba7e87SXin LI 
305368ba7e87SXin LI   case 254:
3054*e27abb66SXin LI #line 1313 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
305568ba7e87SXin LI     {
3056*e27abb66SXin LI 			(yyval.Attr_val) = create_attr_sval((yyvsp[-1].Integer), estrdup((yyvsp[0].Address_node)->address));
3057*e27abb66SXin LI 			destroy_address_node((yyvsp[0].Address_node));
305868ba7e87SXin LI 		}
3059*e27abb66SXin LI #line 3060 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
306068ba7e87SXin LI     break;
306168ba7e87SXin LI 
306268ba7e87SXin LI   case 255:
3063*e27abb66SXin LI #line 1321 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
306468ba7e87SXin LI     {
3065*e27abb66SXin LI 			(yyval.Attr_val_fifo) = (yyvsp[-1].Attr_val_fifo);
3066*e27abb66SXin LI 			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val));
306768ba7e87SXin LI 		}
3068*e27abb66SXin LI #line 3069 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
306968ba7e87SXin LI     break;
307068ba7e87SXin LI 
307168ba7e87SXin LI   case 256:
3072*e27abb66SXin LI #line 1326 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
3073*e27abb66SXin LI     {
3074*e27abb66SXin LI 			(yyval.Attr_val_fifo) = NULL;
3075*e27abb66SXin LI 			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val));
3076*e27abb66SXin LI 		}
3077*e27abb66SXin LI #line 3078 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
3078*e27abb66SXin LI     break;
3079*e27abb66SXin LI 
3080*e27abb66SXin LI   case 257:
3081*e27abb66SXin LI #line 1334 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
30822b15cb3dSCy Schubert     {
30832b15cb3dSCy Schubert 			char	prefix;
30842b15cb3dSCy Schubert 			char *	type;
30852b15cb3dSCy Schubert 
3086*e27abb66SXin LI 			switch ((yyvsp[0].String)[0]) {
30872b15cb3dSCy Schubert 
30882b15cb3dSCy Schubert 			case '+':
30892b15cb3dSCy Schubert 			case '-':
30902b15cb3dSCy Schubert 			case '=':
3091*e27abb66SXin LI 				prefix = (yyvsp[0].String)[0];
3092*e27abb66SXin LI 				type = (yyvsp[0].String) + 1;
30932b15cb3dSCy Schubert 				break;
30942b15cb3dSCy Schubert 
30952b15cb3dSCy Schubert 			default:
30962b15cb3dSCy Schubert 				prefix = '=';
3097*e27abb66SXin LI 				type = (yyvsp[0].String);
30982b15cb3dSCy Schubert 			}
30992b15cb3dSCy Schubert 
31002b15cb3dSCy Schubert 			(yyval.Attr_val) = create_attr_sval(prefix, estrdup(type));
3101*e27abb66SXin LI 			YYFREE((yyvsp[0].String));
31022b15cb3dSCy Schubert 		}
3103*e27abb66SXin LI #line 3104 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
31042b15cb3dSCy Schubert     break;
31052b15cb3dSCy Schubert 
310668ba7e87SXin LI   case 258:
3107*e27abb66SXin LI #line 1359 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
31082b15cb3dSCy Schubert     {
31092b15cb3dSCy Schubert 			nic_rule_node *nrn;
31102b15cb3dSCy Schubert 
3111*e27abb66SXin LI 			nrn = create_nic_rule_node((yyvsp[0].Integer), NULL, (yyvsp[-1].Integer));
31122b15cb3dSCy Schubert 			APPEND_G_FIFO(cfgt.nic_rules, nrn);
31132b15cb3dSCy Schubert 		}
3114*e27abb66SXin LI #line 3115 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
31152b15cb3dSCy Schubert     break;
31162b15cb3dSCy Schubert 
3117*e27abb66SXin LI   case 259:
3118*e27abb66SXin LI #line 1366 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
3119*e27abb66SXin LI     {
3120*e27abb66SXin LI 			nic_rule_node *nrn;
3121*e27abb66SXin LI 
3122*e27abb66SXin LI 			nrn = create_nic_rule_node(0, (yyvsp[0].String), (yyvsp[-1].Integer));
3123*e27abb66SXin LI 			APPEND_G_FIFO(cfgt.nic_rules, nrn);
3124*e27abb66SXin LI 		}
3125*e27abb66SXin LI #line 3126 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
3126a25439b6SCy Schubert     break;
3127a25439b6SCy Schubert 
312868ba7e87SXin LI   case 269:
3129*e27abb66SXin LI #line 1394 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
3130*e27abb66SXin LI     { CONCAT_G_FIFOS(cfgt.reset_counters, (yyvsp[0].Int_fifo)); }
3131*e27abb66SXin LI #line 3132 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
31322b15cb3dSCy Schubert     break;
31332b15cb3dSCy Schubert 
313468ba7e87SXin LI   case 270:
3135*e27abb66SXin LI #line 1399 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
31362b15cb3dSCy Schubert     {
3137*e27abb66SXin LI 			(yyval.Int_fifo) = (yyvsp[-1].Int_fifo);
3138*e27abb66SXin LI 			APPEND_G_FIFO((yyval.Int_fifo), create_int_node((yyvsp[0].Integer)));
31392b15cb3dSCy Schubert 		}
3140*e27abb66SXin LI #line 3141 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
31412b15cb3dSCy Schubert     break;
31422b15cb3dSCy Schubert 
3143*e27abb66SXin LI   case 271:
3144*e27abb66SXin LI #line 1404 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
3145276da39aSCy Schubert     {
3146*e27abb66SXin LI 			(yyval.Int_fifo) = NULL;
3147*e27abb66SXin LI 			APPEND_G_FIFO((yyval.Int_fifo), create_int_node((yyvsp[0].Integer)));
3148276da39aSCy Schubert 		}
3149*e27abb66SXin LI #line 3150 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
3150a25439b6SCy Schubert     break;
3151a25439b6SCy Schubert 
3152a25439b6SCy Schubert   case 279:
3153*e27abb66SXin LI #line 1428 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
315468ba7e87SXin LI     {
3155*e27abb66SXin LI 			(yyval.Attr_val_fifo) = (yyvsp[-1].Attr_val_fifo);
3156*e27abb66SXin LI 			APPEND_G_FIFO((yyval.Attr_val_fifo), create_int_node((yyvsp[0].Integer)));
315768ba7e87SXin LI 		}
3158*e27abb66SXin LI #line 3159 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
315968ba7e87SXin LI     break;
316068ba7e87SXin LI 
316168ba7e87SXin LI   case 280:
3162*e27abb66SXin LI #line 1433 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
316368ba7e87SXin LI     {
3164*e27abb66SXin LI 			(yyval.Attr_val_fifo) = NULL;
3165*e27abb66SXin LI 			APPEND_G_FIFO((yyval.Attr_val_fifo), create_int_node((yyvsp[0].Integer)));
316668ba7e87SXin LI 		}
3167*e27abb66SXin LI #line 3168 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
31682b15cb3dSCy Schubert     break;
31692b15cb3dSCy Schubert 
3170a25439b6SCy Schubert   case 281:
3171*e27abb66SXin LI #line 1441 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
317268ba7e87SXin LI     {
3173*e27abb66SXin LI 			(yyval.Attr_val_fifo) = (yyvsp[-1].Attr_val_fifo);
3174*e27abb66SXin LI 			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val));
317568ba7e87SXin LI 		}
3176*e27abb66SXin LI #line 3177 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
31772b15cb3dSCy Schubert     break;
31782b15cb3dSCy Schubert 
3179a25439b6SCy Schubert   case 282:
3180*e27abb66SXin LI #line 1446 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
3181*e27abb66SXin LI     {
3182*e27abb66SXin LI 			(yyval.Attr_val_fifo) = NULL;
3183*e27abb66SXin LI 			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val));
3184*e27abb66SXin LI 		}
3185*e27abb66SXin LI #line 3186 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
31862b15cb3dSCy Schubert     break;
31872b15cb3dSCy Schubert 
3188*e27abb66SXin LI   case 283:
3189*e27abb66SXin LI #line 1454 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
3190*e27abb66SXin LI     { (yyval.Attr_val) = create_attr_ival('i', (yyvsp[0].Integer)); }
3191*e27abb66SXin LI #line 3192 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
31922b15cb3dSCy Schubert     break;
31932b15cb3dSCy Schubert 
3194a25439b6SCy Schubert   case 285:
3195*e27abb66SXin LI #line 1460 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
3196*e27abb66SXin LI     { (yyval.Attr_val) = create_attr_rangeval('-', (yyvsp[-3].Integer), (yyvsp[-1].Integer)); }
3197*e27abb66SXin LI #line 3198 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
31982b15cb3dSCy Schubert     break;
31992b15cb3dSCy Schubert 
32002b15cb3dSCy Schubert   case 286:
3201*e27abb66SXin LI #line 1465 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
3202276da39aSCy Schubert     {
3203*e27abb66SXin LI 			(yyval.String_fifo) = (yyvsp[-1].String_fifo);
3204*e27abb66SXin LI 			APPEND_G_FIFO((yyval.String_fifo), create_string_node((yyvsp[0].String)));
3205276da39aSCy Schubert 		}
3206*e27abb66SXin LI #line 3207 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
3207276da39aSCy Schubert     break;
3208276da39aSCy Schubert 
3209276da39aSCy Schubert   case 287:
3210*e27abb66SXin LI #line 1470 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
321168ba7e87SXin LI     {
3212*e27abb66SXin LI 			(yyval.String_fifo) = NULL;
3213*e27abb66SXin LI 			APPEND_G_FIFO((yyval.String_fifo), create_string_node((yyvsp[0].String)));
321468ba7e87SXin LI 		}
3215*e27abb66SXin LI #line 3216 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
3216a25439b6SCy Schubert     break;
3217a25439b6SCy Schubert 
3218a25439b6SCy Schubert   case 288:
3219*e27abb66SXin LI #line 1478 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
322068ba7e87SXin LI     {
3221*e27abb66SXin LI 			(yyval.Address_fifo) = (yyvsp[-1].Address_fifo);
3222*e27abb66SXin LI 			APPEND_G_FIFO((yyval.Address_fifo), (yyvsp[0].Address_node));
322368ba7e87SXin LI 		}
3224*e27abb66SXin LI #line 3225 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
3225276da39aSCy Schubert     break;
3226276da39aSCy Schubert 
3227276da39aSCy Schubert   case 289:
3228*e27abb66SXin LI #line 1483 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
322968ba7e87SXin LI     {
3230*e27abb66SXin LI 			(yyval.Address_fifo) = NULL;
3231*e27abb66SXin LI 			APPEND_G_FIFO((yyval.Address_fifo), (yyvsp[0].Address_node));
323268ba7e87SXin LI 		}
3233*e27abb66SXin LI #line 3234 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
323468ba7e87SXin LI     break;
323568ba7e87SXin LI 
323668ba7e87SXin LI   case 290:
3237*e27abb66SXin LI #line 1491 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
3238*e27abb66SXin LI     {
3239*e27abb66SXin LI 			if ((yyvsp[0].Integer) != 0 && (yyvsp[0].Integer) != 1) {
3240*e27abb66SXin LI 				yyerror("Integer value is not boolean (0 or 1). Assuming 1");
3241*e27abb66SXin LI 				(yyval.Integer) = 1;
3242*e27abb66SXin LI 			} else {
3243*e27abb66SXin LI 				(yyval.Integer) = (yyvsp[0].Integer);
3244*e27abb66SXin LI 			}
3245*e27abb66SXin LI 		}
3246*e27abb66SXin LI #line 3247 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
3247276da39aSCy Schubert     break;
3248276da39aSCy Schubert 
3249276da39aSCy Schubert   case 291:
3250*e27abb66SXin LI #line 1499 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
3251*e27abb66SXin LI     { (yyval.Integer) = 1; }
3252*e27abb66SXin LI #line 3253 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
325368ba7e87SXin LI     break;
325468ba7e87SXin LI 
325568ba7e87SXin LI   case 292:
3256*e27abb66SXin LI #line 1500 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
3257*e27abb66SXin LI     { (yyval.Integer) = 0; }
3258*e27abb66SXin LI #line 3259 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
325968ba7e87SXin LI     break;
326068ba7e87SXin LI 
3261*e27abb66SXin LI   case 293:
3262*e27abb66SXin LI #line 1504 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
3263*e27abb66SXin LI     { (yyval.Double) = (double)(yyvsp[0].Integer); }
3264*e27abb66SXin LI #line 3265 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
3265*e27abb66SXin LI     break;
3266*e27abb66SXin LI 
3267*e27abb66SXin LI   case 295:
3268*e27abb66SXin LI #line 1515 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
32692b15cb3dSCy Schubert     {
32702b15cb3dSCy Schubert 			sim_node *sn;
32712b15cb3dSCy Schubert 
3272*e27abb66SXin LI 			sn =  create_sim_node((yyvsp[-2].Attr_val_fifo), (yyvsp[-1].Sim_server_fifo));
32732b15cb3dSCy Schubert 			APPEND_G_FIFO(cfgt.sim_details, sn);
32742b15cb3dSCy Schubert 
32752b15cb3dSCy Schubert 			/* Revert from ; to \n for end-of-command */
32762b15cb3dSCy Schubert 			old_config_style = 1;
32772b15cb3dSCy Schubert 		}
3278*e27abb66SXin LI #line 3279 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
327968ba7e87SXin LI     break;
328068ba7e87SXin LI 
328168ba7e87SXin LI   case 296:
3282*e27abb66SXin LI #line 1532 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
3283*e27abb66SXin LI     { old_config_style = 0; }
3284*e27abb66SXin LI #line 3285 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
328568ba7e87SXin LI     break;
328668ba7e87SXin LI 
328768ba7e87SXin LI   case 297:
3288*e27abb66SXin LI #line 1537 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
328968ba7e87SXin LI     {
3290*e27abb66SXin LI 			(yyval.Attr_val_fifo) = (yyvsp[-2].Attr_val_fifo);
3291*e27abb66SXin LI 			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[-1].Attr_val));
329268ba7e87SXin LI 		}
3293*e27abb66SXin LI #line 3294 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
32942b15cb3dSCy Schubert     break;
32952b15cb3dSCy Schubert 
3296a25439b6SCy Schubert   case 298:
3297*e27abb66SXin LI #line 1542 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
3298*e27abb66SXin LI     {
3299*e27abb66SXin LI 			(yyval.Attr_val_fifo) = NULL;
3300*e27abb66SXin LI 			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[-1].Attr_val));
3301*e27abb66SXin LI 		}
3302*e27abb66SXin LI #line 3303 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
33032b15cb3dSCy Schubert     break;
33042b15cb3dSCy Schubert 
3305*e27abb66SXin LI   case 299:
3306*e27abb66SXin LI #line 1550 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
3307*e27abb66SXin LI     { (yyval.Attr_val) = create_attr_dval((yyvsp[-2].Integer), (yyvsp[0].Double)); }
3308*e27abb66SXin LI #line 3309 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
33092b15cb3dSCy Schubert     break;
33102b15cb3dSCy Schubert 
3311a25439b6SCy Schubert   case 302:
3312*e27abb66SXin LI #line 1560 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
331368ba7e87SXin LI     {
3314*e27abb66SXin LI 			(yyval.Sim_server_fifo) = (yyvsp[-1].Sim_server_fifo);
3315*e27abb66SXin LI 			APPEND_G_FIFO((yyval.Sim_server_fifo), (yyvsp[0].Sim_server));
331668ba7e87SXin LI 		}
3317*e27abb66SXin LI #line 3318 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
3318a25439b6SCy Schubert     break;
3319a25439b6SCy Schubert 
3320a25439b6SCy Schubert   case 303:
3321*e27abb66SXin LI #line 1565 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
3322*e27abb66SXin LI     {
3323*e27abb66SXin LI 			(yyval.Sim_server_fifo) = NULL;
3324*e27abb66SXin LI 			APPEND_G_FIFO((yyval.Sim_server_fifo), (yyvsp[0].Sim_server));
3325*e27abb66SXin LI 		}
3326*e27abb66SXin LI #line 3327 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
33272b15cb3dSCy Schubert     break;
33282b15cb3dSCy Schubert 
3329a25439b6SCy Schubert   case 304:
3330*e27abb66SXin LI #line 1573 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
3331*e27abb66SXin LI     { (yyval.Sim_server) = ONLY_SIM(create_sim_server((yyvsp[-4].Address_node), (yyvsp[-2].Double), (yyvsp[-1].Sim_script_fifo))); }
3332*e27abb66SXin LI #line 3333 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
33332b15cb3dSCy Schubert     break;
33342b15cb3dSCy Schubert 
3335a25439b6SCy Schubert   case 305:
3336*e27abb66SXin LI #line 1578 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
3337*e27abb66SXin LI     { (yyval.Double) = (yyvsp[-1].Double); }
3338*e27abb66SXin LI #line 3339 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
3339276da39aSCy Schubert     break;
3340276da39aSCy Schubert 
3341276da39aSCy Schubert   case 306:
3342*e27abb66SXin LI #line 1583 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
3343*e27abb66SXin LI     { (yyval.Address_node) = (yyvsp[0].Address_node); }
3344*e27abb66SXin LI #line 3345 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
3345276da39aSCy Schubert     break;
3346276da39aSCy Schubert 
3347276da39aSCy Schubert   case 307:
3348*e27abb66SXin LI #line 1588 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
3349276da39aSCy Schubert     {
3350*e27abb66SXin LI 			(yyval.Sim_script_fifo) = (yyvsp[-1].Sim_script_fifo);
3351*e27abb66SXin LI 			APPEND_G_FIFO((yyval.Sim_script_fifo), (yyvsp[0].Sim_script));
3352276da39aSCy Schubert 		}
3353*e27abb66SXin LI #line 3354 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
3354276da39aSCy Schubert     break;
3355276da39aSCy Schubert 
3356276da39aSCy Schubert   case 308:
3357*e27abb66SXin LI #line 1593 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
3358*e27abb66SXin LI     {
3359*e27abb66SXin LI 			(yyval.Sim_script_fifo) = NULL;
3360*e27abb66SXin LI 			APPEND_G_FIFO((yyval.Sim_script_fifo), (yyvsp[0].Sim_script));
3361*e27abb66SXin LI 		}
3362*e27abb66SXin LI #line 3363 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
336368ba7e87SXin LI     break;
336468ba7e87SXin LI 
336568ba7e87SXin LI   case 309:
3366*e27abb66SXin LI #line 1601 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
3367*e27abb66SXin LI     { (yyval.Sim_script) = ONLY_SIM(create_sim_script_info((yyvsp[-3].Double), (yyvsp[-1].Attr_val_fifo))); }
3368*e27abb66SXin LI #line 3369 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
336968ba7e87SXin LI     break;
337068ba7e87SXin LI 
337168ba7e87SXin LI   case 310:
3372*e27abb66SXin LI #line 1606 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
337368ba7e87SXin LI     {
3374*e27abb66SXin LI 			(yyval.Attr_val_fifo) = (yyvsp[-2].Attr_val_fifo);
3375*e27abb66SXin LI 			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[-1].Attr_val));
337668ba7e87SXin LI 		}
3377*e27abb66SXin LI #line 3378 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
337868ba7e87SXin LI     break;
337968ba7e87SXin LI 
338068ba7e87SXin LI   case 311:
3381*e27abb66SXin LI #line 1611 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
3382*e27abb66SXin LI     {
3383*e27abb66SXin LI 			(yyval.Attr_val_fifo) = NULL;
3384*e27abb66SXin LI 			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[-1].Attr_val));
3385*e27abb66SXin LI 		}
3386*e27abb66SXin LI #line 3387 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
3387*e27abb66SXin LI     break;
3388*e27abb66SXin LI 
3389*e27abb66SXin LI   case 312:
3390*e27abb66SXin LI #line 1619 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
3391*e27abb66SXin LI     { (yyval.Attr_val) = create_attr_dval((yyvsp[-2].Integer), (yyvsp[0].Double)); }
3392*e27abb66SXin LI #line 3393 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
3393a25439b6SCy Schubert     break;
33942b15cb3dSCy Schubert 
3395a25439b6SCy Schubert 
3396*e27abb66SXin LI #line 3397 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
33972b15cb3dSCy Schubert       default: break;
33982b15cb3dSCy Schubert     }
33992b15cb3dSCy Schubert   /* User semantic actions sometimes alter yychar, and that requires
34002b15cb3dSCy Schubert      that yytoken be updated with the new translation.  We take the
34012b15cb3dSCy Schubert      approach of translating immediately before every use of yytoken.
34022b15cb3dSCy Schubert      One alternative is translating here after every semantic action,
34032b15cb3dSCy Schubert      but that translation would be missed if the semantic action invokes
34042b15cb3dSCy Schubert      YYABORT, YYACCEPT, or YYERROR immediately after altering yychar or
34052b15cb3dSCy Schubert      if it invokes YYBACKUP.  In the case of YYABORT or YYACCEPT, an
34062b15cb3dSCy Schubert      incorrect destructor might then be invoked immediately.  In the
34072b15cb3dSCy Schubert      case of YYERROR or YYBACKUP, subsequent parser actions might lead
34082b15cb3dSCy Schubert      to an incorrect destructor call or verbose syntax error message
34092b15cb3dSCy Schubert      before the lookahead is translated.  */
34102b15cb3dSCy Schubert   YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc);
34112b15cb3dSCy Schubert 
34122b15cb3dSCy Schubert   YYPOPSTACK (yylen);
34132b15cb3dSCy Schubert   yylen = 0;
34142b15cb3dSCy Schubert   YY_STACK_PRINT (yyss, yyssp);
34152b15cb3dSCy Schubert 
34162b15cb3dSCy Schubert   *++yyvsp = yyval;
34172b15cb3dSCy Schubert 
3418*e27abb66SXin LI   /* Now 'shift' the result of the reduction.  Determine what state
34192b15cb3dSCy Schubert      that goes to, based on the state we popped back to and the rule
34202b15cb3dSCy Schubert      number reduced by.  */
34212b15cb3dSCy Schubert 
34222b15cb3dSCy Schubert   yyn = yyr1[yyn];
34232b15cb3dSCy Schubert 
34242b15cb3dSCy Schubert   yystate = yypgoto[yyn - YYNTOKENS] + *yyssp;
34252b15cb3dSCy Schubert   if (0 <= yystate && yystate <= YYLAST && yycheck[yystate] == *yyssp)
34262b15cb3dSCy Schubert     yystate = yytable[yystate];
34272b15cb3dSCy Schubert   else
34282b15cb3dSCy Schubert     yystate = yydefgoto[yyn - YYNTOKENS];
34292b15cb3dSCy Schubert 
34302b15cb3dSCy Schubert   goto yynewstate;
34312b15cb3dSCy Schubert 
34322b15cb3dSCy Schubert 
3433*e27abb66SXin LI /*--------------------------------------.
3434*e27abb66SXin LI | yyerrlab -- here on detecting error.  |
3435*e27abb66SXin LI `--------------------------------------*/
34362b15cb3dSCy Schubert yyerrlab:
34372b15cb3dSCy Schubert   /* Make sure we have latest lookahead translation.  See comments at
34382b15cb3dSCy Schubert      user semantic actions for why this is necessary.  */
34392b15cb3dSCy Schubert   yytoken = yychar == YYEMPTY ? YYEMPTY : YYTRANSLATE (yychar);
34402b15cb3dSCy Schubert 
34412b15cb3dSCy Schubert   /* If not already recovering from an error, report this error.  */
34422b15cb3dSCy Schubert   if (!yyerrstatus)
34432b15cb3dSCy Schubert     {
34442b15cb3dSCy Schubert       ++yynerrs;
34452b15cb3dSCy Schubert #if ! YYERROR_VERBOSE
3446276da39aSCy Schubert       yyerror (YY_("syntax error"));
34472b15cb3dSCy Schubert #else
34482b15cb3dSCy Schubert # define YYSYNTAX_ERROR yysyntax_error (&yymsg_alloc, &yymsg, \
34492b15cb3dSCy Schubert                                         yyssp, yytoken)
34502b15cb3dSCy Schubert       {
34512b15cb3dSCy Schubert         char const *yymsgp = YY_("syntax error");
34522b15cb3dSCy Schubert         int yysyntax_error_status;
34532b15cb3dSCy Schubert         yysyntax_error_status = YYSYNTAX_ERROR;
34542b15cb3dSCy Schubert         if (yysyntax_error_status == 0)
34552b15cb3dSCy Schubert           yymsgp = yymsg;
34562b15cb3dSCy Schubert         else if (yysyntax_error_status == 1)
34572b15cb3dSCy Schubert           {
34582b15cb3dSCy Schubert             if (yymsg != yymsgbuf)
34592b15cb3dSCy Schubert               YYSTACK_FREE (yymsg);
34602b15cb3dSCy Schubert             yymsg = (char *) YYSTACK_ALLOC (yymsg_alloc);
34612b15cb3dSCy Schubert             if (!yymsg)
34622b15cb3dSCy Schubert               {
34632b15cb3dSCy Schubert                 yymsg = yymsgbuf;
34642b15cb3dSCy Schubert                 yymsg_alloc = sizeof yymsgbuf;
34652b15cb3dSCy Schubert                 yysyntax_error_status = 2;
34662b15cb3dSCy Schubert               }
34672b15cb3dSCy Schubert             else
34682b15cb3dSCy Schubert               {
34692b15cb3dSCy Schubert                 yysyntax_error_status = YYSYNTAX_ERROR;
34702b15cb3dSCy Schubert                 yymsgp = yymsg;
34712b15cb3dSCy Schubert               }
34722b15cb3dSCy Schubert           }
3473276da39aSCy Schubert         yyerror (yymsgp);
34742b15cb3dSCy Schubert         if (yysyntax_error_status == 2)
34752b15cb3dSCy Schubert           goto yyexhaustedlab;
34762b15cb3dSCy Schubert       }
34772b15cb3dSCy Schubert # undef YYSYNTAX_ERROR
34782b15cb3dSCy Schubert #endif
34792b15cb3dSCy Schubert     }
34802b15cb3dSCy Schubert 
34812b15cb3dSCy Schubert 
34822b15cb3dSCy Schubert 
34832b15cb3dSCy Schubert   if (yyerrstatus == 3)
34842b15cb3dSCy Schubert     {
34852b15cb3dSCy Schubert       /* If just tried and failed to reuse lookahead token after an
34862b15cb3dSCy Schubert          error, discard it.  */
34872b15cb3dSCy Schubert 
34882b15cb3dSCy Schubert       if (yychar <= YYEOF)
34892b15cb3dSCy Schubert         {
34902b15cb3dSCy Schubert           /* Return failure if at end of input.  */
34912b15cb3dSCy Schubert           if (yychar == YYEOF)
34922b15cb3dSCy Schubert             YYABORT;
34932b15cb3dSCy Schubert         }
34942b15cb3dSCy Schubert       else
34952b15cb3dSCy Schubert         {
34962b15cb3dSCy Schubert           yydestruct ("Error: discarding",
3497276da39aSCy Schubert                       yytoken, &yylval);
34982b15cb3dSCy Schubert           yychar = YYEMPTY;
34992b15cb3dSCy Schubert         }
35002b15cb3dSCy Schubert     }
35012b15cb3dSCy Schubert 
35022b15cb3dSCy Schubert   /* Else will try to reuse lookahead token after shifting the error
35032b15cb3dSCy Schubert      token.  */
35042b15cb3dSCy Schubert   goto yyerrlab1;
35052b15cb3dSCy Schubert 
35062b15cb3dSCy Schubert 
35072b15cb3dSCy Schubert /*---------------------------------------------------.
35082b15cb3dSCy Schubert | yyerrorlab -- error raised explicitly by YYERROR.  |
35092b15cb3dSCy Schubert `---------------------------------------------------*/
35102b15cb3dSCy Schubert yyerrorlab:
35112b15cb3dSCy Schubert 
35122b15cb3dSCy Schubert   /* Pacify compilers like GCC when the user code never invokes
35132b15cb3dSCy Schubert      YYERROR and the label yyerrorlab therefore never appears in user
35142b15cb3dSCy Schubert      code.  */
35152b15cb3dSCy Schubert   if (/*CONSTCOND*/ 0)
35162b15cb3dSCy Schubert      goto yyerrorlab;
35172b15cb3dSCy Schubert 
3518*e27abb66SXin LI   /* Do not reclaim the symbols of the rule whose action triggered
35192b15cb3dSCy Schubert      this YYERROR.  */
35202b15cb3dSCy Schubert   YYPOPSTACK (yylen);
35212b15cb3dSCy Schubert   yylen = 0;
35222b15cb3dSCy Schubert   YY_STACK_PRINT (yyss, yyssp);
35232b15cb3dSCy Schubert   yystate = *yyssp;
35242b15cb3dSCy Schubert   goto yyerrlab1;
35252b15cb3dSCy Schubert 
35262b15cb3dSCy Schubert 
35272b15cb3dSCy Schubert /*-------------------------------------------------------------.
35282b15cb3dSCy Schubert | yyerrlab1 -- common code for both syntax error and YYERROR.  |
35292b15cb3dSCy Schubert `-------------------------------------------------------------*/
35302b15cb3dSCy Schubert yyerrlab1:
35312b15cb3dSCy Schubert   yyerrstatus = 3;      /* Each real token shifted decrements this.  */
35322b15cb3dSCy Schubert 
35332b15cb3dSCy Schubert   for (;;)
35342b15cb3dSCy Schubert     {
35352b15cb3dSCy Schubert       yyn = yypact[yystate];
35362b15cb3dSCy Schubert       if (!yypact_value_is_default (yyn))
35372b15cb3dSCy Schubert         {
35382b15cb3dSCy Schubert           yyn += YYTERROR;
35392b15cb3dSCy Schubert           if (0 <= yyn && yyn <= YYLAST && yycheck[yyn] == YYTERROR)
35402b15cb3dSCy Schubert             {
35412b15cb3dSCy Schubert               yyn = yytable[yyn];
35422b15cb3dSCy Schubert               if (0 < yyn)
35432b15cb3dSCy Schubert                 break;
35442b15cb3dSCy Schubert             }
35452b15cb3dSCy Schubert         }
35462b15cb3dSCy Schubert 
35472b15cb3dSCy Schubert       /* Pop the current state because it cannot handle the error token.  */
35482b15cb3dSCy Schubert       if (yyssp == yyss)
35492b15cb3dSCy Schubert         YYABORT;
35502b15cb3dSCy Schubert 
35512b15cb3dSCy Schubert 
35522b15cb3dSCy Schubert       yydestruct ("Error: popping",
3553276da39aSCy Schubert                   yystos[yystate], yyvsp);
35542b15cb3dSCy Schubert       YYPOPSTACK (1);
35552b15cb3dSCy Schubert       yystate = *yyssp;
35562b15cb3dSCy Schubert       YY_STACK_PRINT (yyss, yyssp);
35572b15cb3dSCy Schubert     }
35582b15cb3dSCy Schubert 
35592b15cb3dSCy Schubert   YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
35602b15cb3dSCy Schubert   *++yyvsp = yylval;
35612b15cb3dSCy Schubert   YY_IGNORE_MAYBE_UNINITIALIZED_END
35622b15cb3dSCy Schubert 
35632b15cb3dSCy Schubert 
35642b15cb3dSCy Schubert   /* Shift the error token.  */
35652b15cb3dSCy Schubert   YY_SYMBOL_PRINT ("Shifting", yystos[yyn], yyvsp, yylsp);
35662b15cb3dSCy Schubert 
35672b15cb3dSCy Schubert   yystate = yyn;
35682b15cb3dSCy Schubert   goto yynewstate;
35692b15cb3dSCy Schubert 
35702b15cb3dSCy Schubert 
35712b15cb3dSCy Schubert /*-------------------------------------.
35722b15cb3dSCy Schubert | yyacceptlab -- YYACCEPT comes here.  |
35732b15cb3dSCy Schubert `-------------------------------------*/
35742b15cb3dSCy Schubert yyacceptlab:
35752b15cb3dSCy Schubert   yyresult = 0;
35762b15cb3dSCy Schubert   goto yyreturn;
35772b15cb3dSCy Schubert 
35782b15cb3dSCy Schubert /*-----------------------------------.
35792b15cb3dSCy Schubert | yyabortlab -- YYABORT comes here.  |
35802b15cb3dSCy Schubert `-----------------------------------*/
35812b15cb3dSCy Schubert yyabortlab:
35822b15cb3dSCy Schubert   yyresult = 1;
35832b15cb3dSCy Schubert   goto yyreturn;
35842b15cb3dSCy Schubert 
35852b15cb3dSCy Schubert #if !defined yyoverflow || YYERROR_VERBOSE
35862b15cb3dSCy Schubert /*-------------------------------------------------.
35872b15cb3dSCy Schubert | yyexhaustedlab -- memory exhaustion comes here.  |
35882b15cb3dSCy Schubert `-------------------------------------------------*/
35892b15cb3dSCy Schubert yyexhaustedlab:
3590276da39aSCy Schubert   yyerror (YY_("memory exhausted"));
35912b15cb3dSCy Schubert   yyresult = 2;
35922b15cb3dSCy Schubert   /* Fall through.  */
35932b15cb3dSCy Schubert #endif
35942b15cb3dSCy Schubert 
35952b15cb3dSCy Schubert yyreturn:
35962b15cb3dSCy Schubert   if (yychar != YYEMPTY)
35972b15cb3dSCy Schubert     {
35982b15cb3dSCy Schubert       /* Make sure we have latest lookahead translation.  See comments at
35992b15cb3dSCy Schubert          user semantic actions for why this is necessary.  */
36002b15cb3dSCy Schubert       yytoken = YYTRANSLATE (yychar);
36012b15cb3dSCy Schubert       yydestruct ("Cleanup: discarding lookahead",
3602276da39aSCy Schubert                   yytoken, &yylval);
36032b15cb3dSCy Schubert     }
3604*e27abb66SXin LI   /* Do not reclaim the symbols of the rule whose action triggered
36052b15cb3dSCy Schubert      this YYABORT or YYACCEPT.  */
36062b15cb3dSCy Schubert   YYPOPSTACK (yylen);
36072b15cb3dSCy Schubert   YY_STACK_PRINT (yyss, yyssp);
36082b15cb3dSCy Schubert   while (yyssp != yyss)
36092b15cb3dSCy Schubert     {
36102b15cb3dSCy Schubert       yydestruct ("Cleanup: popping",
3611276da39aSCy Schubert                   yystos[*yyssp], yyvsp);
36122b15cb3dSCy Schubert       YYPOPSTACK (1);
36132b15cb3dSCy Schubert     }
36142b15cb3dSCy Schubert #ifndef yyoverflow
36152b15cb3dSCy Schubert   if (yyss != yyssa)
36162b15cb3dSCy Schubert     YYSTACK_FREE (yyss);
36172b15cb3dSCy Schubert #endif
36182b15cb3dSCy Schubert #if YYERROR_VERBOSE
36192b15cb3dSCy Schubert   if (yymsg != yymsgbuf)
36202b15cb3dSCy Schubert     YYSTACK_FREE (yymsg);
36212b15cb3dSCy Schubert #endif
3622*e27abb66SXin LI   return yyresult;
36232b15cb3dSCy Schubert }
3624*e27abb66SXin LI #line 1630 "../../ntpd/ntp_parser.y" /* yacc.c:1906  */
36252b15cb3dSCy Schubert 
36262b15cb3dSCy Schubert 
36272b15cb3dSCy Schubert void
36282b15cb3dSCy Schubert yyerror(
36292b15cb3dSCy Schubert 	const char *msg
36302b15cb3dSCy Schubert 	)
36312b15cb3dSCy Schubert {
36322b15cb3dSCy Schubert 	int retval;
3633276da39aSCy Schubert 	struct FILE_INFO * ip_ctx;
36342b15cb3dSCy Schubert 
3635276da39aSCy Schubert 	ip_ctx = lex_current();
3636276da39aSCy Schubert 	ip_ctx->errpos = ip_ctx->tokpos;
36372b15cb3dSCy Schubert 
3638276da39aSCy Schubert 	msyslog(LOG_ERR, "line %d column %d %s",
3639276da39aSCy Schubert 		ip_ctx->errpos.nline, ip_ctx->errpos.ncol, msg);
3640276da39aSCy Schubert 	if (!lex_from_file()) {
36412b15cb3dSCy Schubert 		/* Save the error message in the correct buffer */
36422b15cb3dSCy Schubert 		retval = snprintf(remote_config.err_msg + remote_config.err_pos,
36432b15cb3dSCy Schubert 				  MAXLINE - remote_config.err_pos,
36442b15cb3dSCy Schubert 				  "column %d %s",
3645276da39aSCy Schubert 				  ip_ctx->errpos.ncol, msg);
36462b15cb3dSCy Schubert 
36472b15cb3dSCy Schubert 		/* Increment the value of err_pos */
36482b15cb3dSCy Schubert 		if (retval > 0)
36492b15cb3dSCy Schubert 			remote_config.err_pos += retval;
36502b15cb3dSCy Schubert 
36512b15cb3dSCy Schubert 		/* Increment the number of errors */
36522b15cb3dSCy Schubert 		++remote_config.no_errors;
36532b15cb3dSCy Schubert 	}
36542b15cb3dSCy Schubert }
36552b15cb3dSCy Schubert 
36562b15cb3dSCy Schubert 
36572b15cb3dSCy Schubert /*
36582b15cb3dSCy Schubert  * token_name - convert T_ token integers to text
36592b15cb3dSCy Schubert  *		example: token_name(T_Server) returns "T_Server"
36602b15cb3dSCy Schubert  */
36612b15cb3dSCy Schubert const char *
36622b15cb3dSCy Schubert token_name(
36632b15cb3dSCy Schubert 	int token
36642b15cb3dSCy Schubert 	)
36652b15cb3dSCy Schubert {
36662b15cb3dSCy Schubert 	return yytname[YYTRANSLATE(token)];
36672b15cb3dSCy Schubert }
36682b15cb3dSCy Schubert 
36692b15cb3dSCy Schubert 
36702b15cb3dSCy Schubert /* Initial Testing function -- ignore */
36712b15cb3dSCy Schubert #if 0
36722b15cb3dSCy Schubert int main(int argc, char *argv[])
36732b15cb3dSCy Schubert {
36742b15cb3dSCy Schubert 	ip_file = FOPEN(argv[1], "r");
36752b15cb3dSCy Schubert 	if (!ip_file)
36762b15cb3dSCy Schubert 		fprintf(stderr, "ERROR!! Could not open file: %s\n", argv[1]);
36772b15cb3dSCy Schubert 	yyparse();
36782b15cb3dSCy Schubert 	return 0;
36792b15cb3dSCy Schubert }
36802b15cb3dSCy Schubert #endif
36812b15cb3dSCy Schubert 
3682