rmultimarkdown 6.4.0.4 → 6.7.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (76) hide show
  1. checksums.yaml +5 -5
  2. data/Rakefile +7 -13
  3. data/ext/Makefile +67 -55
  4. data/ext/extconf.rb +7 -5
  5. data/ext/mmd/aho-corasick.c +8 -8
  6. data/ext/mmd/aho-corasick.h +3 -3
  7. data/ext/mmd/argtable3.c +6537 -0
  8. data/ext/mmd/argtable3.h +273 -0
  9. data/ext/mmd/beamer.c +12 -1
  10. data/ext/mmd/char.c +120 -27
  11. data/ext/mmd/char.h +23 -23
  12. data/ext/mmd/critic_markup.c +7 -6
  13. data/ext/mmd/d_string.c +88 -32
  14. data/ext/mmd/{include/d_string.h → d_string.h} +50 -38
  15. data/ext/mmd/epub.c +36 -12
  16. data/ext/mmd/epub.h +2 -2
  17. data/ext/mmd/file.c +50 -40
  18. data/ext/mmd/file.h +2 -2
  19. data/ext/mmd/html.c +164 -99
  20. data/ext/mmd/html.h +3 -2
  21. data/ext/mmd/i18n.h +15 -11
  22. data/ext/mmd/itmz-lexer.c +16978 -0
  23. data/ext/mmd/itmz-lexer.h +132 -0
  24. data/ext/mmd/itmz-parser.c +1189 -0
  25. data/ext/mmd/itmz-parser.h +11 -0
  26. data/ext/mmd/itmz-reader.c +388 -0
  27. data/ext/mmd/itmz-reader.h +111 -0
  28. data/ext/mmd/itmz.c +567 -0
  29. data/ext/mmd/itmz.h +117 -0
  30. data/ext/mmd/latex.c +93 -41
  31. data/ext/mmd/lexer.c +3506 -2774
  32. data/ext/mmd/{include/libMultiMarkdown.h → libMultiMarkdown.h} +49 -2
  33. data/ext/mmd/main.c +612 -0
  34. data/ext/mmd/memoir.c +4 -1
  35. data/ext/mmd/miniz.c +6905 -6680
  36. data/ext/mmd/miniz.h +456 -476
  37. data/ext/mmd/mmd.c +399 -94
  38. data/ext/mmd/mmd.h +25 -25
  39. data/ext/mmd/object_pool.h +3 -3
  40. data/ext/mmd/opendocument-content.c +137 -69
  41. data/ext/mmd/opendocument-content.h +2 -2
  42. data/ext/mmd/opendocument.c +35 -14
  43. data/ext/mmd/opendocument.h +2 -2
  44. data/ext/mmd/opml-lexer.c +259 -637
  45. data/ext/mmd/opml-lexer.h +1 -17
  46. data/ext/mmd/opml-parser.c +194 -188
  47. data/ext/mmd/opml-reader.c +72 -142
  48. data/ext/mmd/opml-reader.h +1 -1
  49. data/ext/mmd/opml.c +13 -13
  50. data/ext/mmd/opml.h +1 -1
  51. data/ext/mmd/parser.c +1623 -1244
  52. data/ext/mmd/rng.c +8 -3
  53. data/ext/mmd/scanners.c +66625 -103198
  54. data/ext/mmd/scanners.h +1 -0
  55. data/ext/mmd/stack.c +62 -20
  56. data/ext/mmd/stack.h +10 -21
  57. data/ext/mmd/textbundle.c +23 -7
  58. data/ext/mmd/textbundle.h +2 -2
  59. data/ext/mmd/token.c +42 -16
  60. data/ext/mmd/{include/token.h → token.h} +22 -8
  61. data/ext/mmd/token_pairs.c +0 -16
  62. data/ext/mmd/transclude.c +6 -2
  63. data/ext/mmd/uthash.h +745 -745
  64. data/ext/mmd/version.h +8 -8
  65. data/ext/mmd/writer.c +225 -63
  66. data/ext/mmd/writer.h +50 -36
  67. data/ext/mmd/xml.c +855 -0
  68. data/ext/mmd/xml.h +134 -0
  69. data/ext/mmd/zip.c +71 -4
  70. data/ext/mmd/zip.h +7 -1
  71. data/ext/ruby_multi_markdown.c +9 -18
  72. data/lib/multi_markdown/version.rb +1 -1
  73. data/lib/multi_markdown.bundle +0 -0
  74. data/rmultimarkdown.gemspec +0 -2
  75. metadata +22 -28
  76. data/ext/mmd/char_lookup.c +0 -212
@@ -106,16 +106,16 @@ typedef union {
106
106
  #define OPMLARG_PDECL , mmd_engine * engine
107
107
  #define OPMLARG_FETCH mmd_engine * engine = yypParser->engine
108
108
  #define OPMLARG_STORE yypParser->engine = engine
109
- #define YYNSTATE 18
110
- #define YYNRULE 17
111
- #define YY_MAX_SHIFT 17
112
- #define YY_MIN_SHIFTREDUCE 33
113
- #define YY_MAX_SHIFTREDUCE 49
114
- #define YY_MIN_REDUCE 50
115
- #define YY_MAX_REDUCE 66
116
- #define YY_ERROR_ACTION 67
117
- #define YY_ACCEPT_ACTION 68
118
- #define YY_NO_ACTION 69
109
+ #define YYNSTATE 19
110
+ #define YYNRULE 19
111
+ #define YY_MAX_SHIFT 18
112
+ #define YY_MIN_SHIFTREDUCE 35
113
+ #define YY_MAX_SHIFTREDUCE 53
114
+ #define YY_MIN_REDUCE 54
115
+ #define YY_MAX_REDUCE 72
116
+ #define YY_ERROR_ACTION 73
117
+ #define YY_ACCEPT_ACTION 74
118
+ #define YY_NO_ACTION 75
119
119
  /************* End control #defines *******************************************/
120
120
 
121
121
  /* Define the yytestcase() macro to be a no-op if is not already defined
@@ -187,42 +187,42 @@ typedef union {
187
187
  ** yy_default[] Default action for each state.
188
188
  **
189
189
  *********** Begin parsing tables **********************************************/
190
- #define YY_ACTTAB_COUNT (57)
190
+ #define YY_ACTTAB_COUNT (60)
191
191
  static const YYACTIONTYPE yy_action[] = {
192
- /* 0 */ 1, 45, 14, 3, 49, 42, 1, 10, 14, 3,
193
- /* 10 */ 49, 1, 48, 14, 3, 49, 1, 47, 14, 3,
194
- /* 20 */ 49, 41, 1, 43, 14, 3, 49, 1, 2, 14,
195
- /* 30 */ 3, 49, 68, 17, 15, 6, 6, 7, 7, 8,
196
- /* 40 */ 5, 5, 12, 2, 40, 9, 13, 39, 11, 4,
197
- /* 50 */ 16, 38, 37, 36, 46, 35, 50,
192
+ /* 0 */ 1, 49, 15, 3, 53, 46, 1, 47, 15, 3,
193
+ /* 10 */ 53, 1, 52, 15, 3, 53, 1, 51, 15, 3,
194
+ /* 20 */ 53, 45, 1, 13, 15, 3, 53, 1, 16, 15,
195
+ /* 30 */ 3, 53, 74, 18, 11, 10, 2, 4, 9, 14,
196
+ /* 40 */ 6, 6, 7, 7, 5, 5, 8, 4, 43, 12,
197
+ /* 50 */ 2, 17, 39, 44, 42, 41, 40, 38, 50, 54,
198
198
  };
199
199
  static const YYCODETYPE yy_lookahead[] = {
200
- /* 0 */ 11, 12, 13, 14, 15, 10, 11, 1, 13, 14,
200
+ /* 0 */ 11, 12, 13, 14, 15, 10, 11, 24, 13, 14,
201
201
  /* 10 */ 15, 11, 12, 13, 14, 15, 11, 12, 13, 14,
202
- /* 20 */ 15, 10, 11, 24, 13, 14, 15, 11, 9, 13,
203
- /* 30 */ 14, 15, 17, 18, 21, 23, 24, 23, 24, 5,
204
- /* 40 */ 23, 24, 22, 9, 8, 20, 21, 6, 7, 3,
205
- /* 50 */ 19, 6, 4, 4, 12, 2, 0,
202
+ /* 20 */ 15, 10, 11, 22, 13, 14, 15, 11, 21, 13,
203
+ /* 30 */ 14, 15, 17, 18, 19, 1, 9, 3, 20, 21,
204
+ /* 40 */ 23, 24, 23, 24, 23, 24, 5, 3, 6, 7,
205
+ /* 50 */ 9, 19, 2, 8, 6, 4, 4, 2, 12, 0,
206
206
  };
207
- #define YY_SHIFT_USE_DFLT (57)
208
- #define YY_SHIFT_COUNT (17)
207
+ #define YY_SHIFT_USE_DFLT (60)
208
+ #define YY_SHIFT_COUNT (18)
209
209
  #define YY_SHIFT_MIN (-11)
210
- #define YY_SHIFT_MAX (56)
210
+ #define YY_SHIFT_MAX (59)
211
211
  static const signed char yy_shift_ofst[] = {
212
- /* 0 */ 6, -11, -5, 16, 34, 0, 5, 11, 41, 19,
213
- /* 10 */ 46, 36, 45, 48, 42, 49, 53, 56,
212
+ /* 0 */ 34, -11, -5, 16, 41, 0, 5, 11, 42, 27,
213
+ /* 10 */ 44, 50, 45, 48, 51, 46, 52, 55, 59,
214
214
  };
215
- #define YY_REDUCE_USE_DFLT (-2)
215
+ #define YY_REDUCE_USE_DFLT (-18)
216
216
  #define YY_REDUCE_COUNT (10)
217
- #define YY_REDUCE_MIN (-1)
218
- #define YY_REDUCE_MAX (31)
217
+ #define YY_REDUCE_MIN (-17)
218
+ #define YY_REDUCE_MAX (32)
219
219
  static const signed char yy_reduce_ofst[] = {
220
- /* 0 */ 15, 12, 14, 17, 25, -1, -1, -1, 20, 13,
221
- /* 10 */ 31,
220
+ /* 0 */ 15, 17, 19, 21, 18, -17, -17, -17, 1, 7,
221
+ /* 10 */ 32,
222
222
  };
223
223
  static const YYACTIONTYPE yy_default[] = {
224
- /* 0 */ 67, 67, 67, 67, 67, 67, 67, 67, 67, 67,
225
- /* 10 */ 67, 67, 67, 67, 67, 67, 51, 67,
224
+ /* 0 */ 73, 73, 73, 73, 73, 73, 73, 73, 73, 73,
225
+ /* 10 */ 73, 56, 73, 73, 73, 73, 73, 55, 73,
226
226
  };
227
227
  /********** End of lemon-generated parsing tables *****************************/
228
228
 
@@ -273,28 +273,28 @@ typedef struct yyStackEntry yyStackEntry;
273
273
  /* The state of the parser is completely contained in an instance of
274
274
  ** the following structure */
275
275
  struct yyParser {
276
- yyStackEntry *yytos; /* Pointer to top element of the stack */
277
- #ifdef YYTRACKMAXSTACKDEPTH
276
+ yyStackEntry * yytos; /* Pointer to top element of the stack */
277
+ #ifdef YYTRACKMAXSTACKDEPTH
278
278
  int yyhwm; /* High-water mark of the stack */
279
- #endif
280
- #ifndef YYNOERRORRECOVERY
279
+ #endif
280
+ #ifndef YYNOERRORRECOVERY
281
281
  int yyerrcnt; /* Shifts left before out of the error */
282
- #endif
282
+ #endif
283
283
  OPMLARG_SDECL /* A place to hold %extra_argument */
284
- #if YYSTACKDEPTH<=0
284
+ #if YYSTACKDEPTH<=0
285
285
  int yystksz; /* Current side of the stack */
286
- yyStackEntry *yystack; /* The parser's stack */
286
+ yyStackEntry * yystack; /* The parser's stack */
287
287
  yyStackEntry yystk0; /* First stack entry */
288
- #else
288
+ #else
289
289
  yyStackEntry yystack[YYSTACKDEPTH]; /* The parser's stack */
290
- #endif
290
+ #endif
291
291
  };
292
292
  typedef struct yyParser yyParser;
293
293
 
294
294
  #ifndef NDEBUG
295
295
  #include <stdio.h>
296
- static FILE *yyTraceFILE = 0;
297
- static char *yyTracePrompt = 0;
296
+ static FILE * yyTraceFILE = 0;
297
+ static char * yyTracePrompt = 0;
298
298
  #endif /* NDEBUG */
299
299
 
300
300
  #ifndef NDEBUG
@@ -315,7 +315,7 @@ typedef struct yyParser yyParser;
315
315
  ** Outputs:
316
316
  ** None.
317
317
  */
318
- void OPMLTrace(FILE *TraceFILE, char *zTracePrompt) {
318
+ void OPMLTrace(FILE * TraceFILE, char * zTracePrompt) {
319
319
  yyTraceFILE = TraceFILE;
320
320
  yyTracePrompt = zTracePrompt;
321
321
 
@@ -330,7 +330,7 @@ void OPMLTrace(FILE *TraceFILE, char *zTracePrompt) {
330
330
  #ifndef NDEBUG
331
331
  /* For tracing shifts, the names of all terminals and nonterminals
332
332
  ** are required. The following table supplies these names */
333
- static const char *const yyTokenName[] = {
333
+ static const char * const yyTokenName[] = {
334
334
  "$", "OPML_XML", "OPML_WSNL", "OPML_OPML_OPEN",
335
335
  "OPML_OPML_CLOSE", "OPML_HEAD_OPEN", "OPML_HEAD_CLOSE", "OPML_TITLE_OPEN",
336
336
  "OPML_TITLE_CLOSE", "OPML_BODY_OPEN", "OPML_BODY_CLOSE", "OPML_OUTLINE_OPEN",
@@ -344,24 +344,26 @@ static const char *const yyTokenName[] = {
344
344
  #ifndef NDEBUG
345
345
  /* For tracing reduce actions, the names of all rules are required.
346
346
  */
347
- static const char *const yyRuleName[] = {
347
+ static const char * const yyRuleName[] = {
348
348
  /* 0 */ "doc ::= doc_xml",
349
349
  /* 1 */ "doc_xml ::= OPML_XML doc_opml",
350
- /* 2 */ "doc_xml ::= OPML_XML doc_opml OPML_WSNL",
351
- /* 3 */ "doc_opml ::= OPML_OPML_OPEN opml_header opml_body OPML_OPML_CLOSE",
352
- /* 4 */ "doc_opml ::= OPML_OPML_OPEN opml_body OPML_OPML_CLOSE",
353
- /* 5 */ "opml_header ::= OPML_HEAD_OPEN opml_title OPML_HEAD_CLOSE",
354
- /* 6 */ "opml_header ::= OPML_HEAD_OPEN OPML_HEAD_CLOSE",
355
- /* 7 */ "opml_title ::= OPML_TITLE_OPEN OPML_TITLE_CLOSE",
356
- /* 8 */ "opml_body ::= OPML_BODY_OPEN opml_outlines OPML_BODY_CLOSE",
357
- /* 9 */ "opml_body ::= OPML_BODY_OPEN OPML_BODY_CLOSE",
358
- /* 10 */ "opml_outlines ::= opml_outlines opml_outline",
359
- /* 11 */ "opml_outlines ::= opml_outline",
360
- /* 12 */ "opml_outline ::= OPML_OUTLINE_OPEN OPML_OUTLINE_CLOSE",
361
- /* 13 */ "opml_outline ::= OPML_OUTLINE_PREAMBLE OPML_OUTLINE_CLOSE",
362
- /* 14 */ "opml_outline ::= OPML_OUTLINE_OPEN opml_outlines OPML_OUTLINE_CLOSE",
363
- /* 15 */ "opml_outline ::= OPML_OUTLINE_METADATA opml_outlines OPML_OUTLINE_CLOSE",
364
- /* 16 */ "opml_outline ::= OPML_OUTLINE_SELF_CLOSE",
350
+ /* 2 */ "doc_xml ::= doc_opml",
351
+ /* 3 */ "doc_xml ::= OPML_XML doc_opml OPML_WSNL",
352
+ /* 4 */ "doc_xml ::= doc_opml OPML_WSNL",
353
+ /* 5 */ "doc_opml ::= OPML_OPML_OPEN opml_header opml_body OPML_OPML_CLOSE",
354
+ /* 6 */ "doc_opml ::= OPML_OPML_OPEN opml_body OPML_OPML_CLOSE",
355
+ /* 7 */ "opml_header ::= OPML_HEAD_OPEN opml_title OPML_HEAD_CLOSE",
356
+ /* 8 */ "opml_header ::= OPML_HEAD_OPEN OPML_HEAD_CLOSE",
357
+ /* 9 */ "opml_title ::= OPML_TITLE_OPEN OPML_TITLE_CLOSE",
358
+ /* 10 */ "opml_body ::= OPML_BODY_OPEN opml_outlines OPML_BODY_CLOSE",
359
+ /* 11 */ "opml_body ::= OPML_BODY_OPEN OPML_BODY_CLOSE",
360
+ /* 12 */ "opml_outlines ::= opml_outlines opml_outline",
361
+ /* 13 */ "opml_outlines ::= opml_outline",
362
+ /* 14 */ "opml_outline ::= OPML_OUTLINE_OPEN OPML_OUTLINE_CLOSE",
363
+ /* 15 */ "opml_outline ::= OPML_OUTLINE_PREAMBLE OPML_OUTLINE_CLOSE",
364
+ /* 16 */ "opml_outline ::= OPML_OUTLINE_OPEN opml_outlines OPML_OUTLINE_CLOSE",
365
+ /* 17 */ "opml_outline ::= OPML_OUTLINE_METADATA opml_outlines OPML_OUTLINE_CLOSE",
366
+ /* 18 */ "opml_outline ::= OPML_OUTLINE_SELF_CLOSE",
365
367
  };
366
368
  #endif /* NDEBUG */
367
369
 
@@ -371,10 +373,10 @@ static const char *const yyRuleName[] = {
371
373
  ** Try to increase the size of the parser stack. Return the number
372
374
  ** of errors. Return 0 on success.
373
375
  */
374
- static int yyGrowStack(yyParser *p) {
376
+ static int yyGrowStack(yyParser * p) {
375
377
  int newSize;
376
378
  int idx;
377
- yyStackEntry *pNew;
379
+ yyStackEntry * pNew;
378
380
 
379
381
  newSize = p->yystksz * 2 + 100;
380
382
  idx = p->yytos ? (int)(p->yytos - p->yystack) : 0;
@@ -392,14 +394,14 @@ static int yyGrowStack(yyParser *p) {
392
394
  if ( pNew ) {
393
395
  p->yystack = pNew;
394
396
  p->yytos = &p->yystack[idx];
395
- #ifndef NDEBUG
397
+ #ifndef NDEBUG
396
398
 
397
399
  if ( yyTraceFILE ) {
398
400
  fprintf(yyTraceFILE, "%sStack grows from %d to %d entries.\n",
399
401
  yyTracePrompt, p->yystksz, newSize);
400
402
  }
401
403
 
402
- #endif
404
+ #endif
403
405
  p->yystksz = newSize;
404
406
  }
405
407
 
@@ -428,15 +430,15 @@ static int yyGrowStack(yyParser *p) {
428
430
  ** A pointer to a parser. This pointer is used in subsequent calls
429
431
  ** to OPML and OPMLFree.
430
432
  */
431
- void *OPMLAlloc(void *(*mallocProc)(YYMALLOCARGTYPE)) {
432
- yyParser *pParser;
433
- pParser = (yyParser*)(*mallocProc)( (YYMALLOCARGTYPE)sizeof(yyParser) );
433
+ void * OPMLAlloc(void * (*mallocProc)(YYMALLOCARGTYPE)) {
434
+ yyParser * pParser;
435
+ pParser = (yyParser *)(*mallocProc)( (YYMALLOCARGTYPE)sizeof(yyParser) );
434
436
 
435
437
  if ( pParser ) {
436
- #ifdef YYTRACKMAXSTACKDEPTH
438
+ #ifdef YYTRACKMAXSTACKDEPTH
437
439
  pParser->yyhwm = 0;
438
- #endif
439
- #if YYSTACKDEPTH<=0
440
+ #endif
441
+ #if YYSTACKDEPTH<=0
440
442
  pParser->yytos = NULL;
441
443
  pParser->yystack = NULL;
442
444
  pParser->yystksz = 0;
@@ -446,10 +448,10 @@ void *OPMLAlloc(void *(*mallocProc)(YYMALLOCARGTYPE)) {
446
448
  pParser->yystksz = 1;
447
449
  }
448
450
 
449
- #endif
450
- #ifndef YYNOERRORRECOVERY
451
+ #endif
452
+ #ifndef YYNOERRORRECOVERY
451
453
  pParser->yyerrcnt = -1;
452
- #endif
454
+ #endif
453
455
  pParser->yytos = pParser->yystack;
454
456
  pParser->yystack[0].stateno = 0;
455
457
  pParser->yystack[0].major = 0;
@@ -466,9 +468,9 @@ void *OPMLAlloc(void *(*mallocProc)(YYMALLOCARGTYPE)) {
466
468
  ** directives of the input grammar.
467
469
  */
468
470
  static void yy_destructor(
469
- yyParser *yypParser, /* The parser */
471
+ yyParser * yypParser, /* The parser */
470
472
  YYCODETYPE yymajor, /* Type code for object to destroy */
471
- YYMINORTYPE *yypminor /* The object to be destroyed */
473
+ YYMINORTYPE * yypminor /* The object to be destroyed */
472
474
  ) {
473
475
  OPMLARG_FETCH;
474
476
 
@@ -496,12 +498,12 @@ static void yy_destructor(
496
498
  ** If there is a destructor routine associated with the token which
497
499
  ** is popped from the stack, then call it.
498
500
  */
499
- static void yy_pop_parser_stack(yyParser *pParser) {
500
- yyStackEntry *yytos;
501
+ static void yy_pop_parser_stack(yyParser * pParser) {
502
+ yyStackEntry * yytos;
501
503
  assert( pParser->yytos != 0 );
502
504
  assert( pParser->yytos > pParser->yystack );
503
505
  yytos = pParser->yytos--;
504
- #ifndef NDEBUG
506
+ #ifndef NDEBUG
505
507
 
506
508
  if ( yyTraceFILE ) {
507
509
  fprintf(yyTraceFILE, "%sPopping %s\n",
@@ -509,7 +511,7 @@ static void yy_pop_parser_stack(yyParser *pParser) {
509
511
  yyTokenName[yytos->major]);
510
512
  }
511
513
 
512
- #endif
514
+ #endif
513
515
  yy_destructor(pParser, yytos->major, &yytos->minor);
514
516
  }
515
517
 
@@ -522,38 +524,38 @@ static void yy_pop_parser_stack(yyParser *pParser) {
522
524
  ** assumed that the input pointer is never NULL.
523
525
  */
524
526
  void OPMLFree(
525
- void *p, /* The parser to be deleted */
526
- void (*freeProc)(void*) /* Function used to reclaim memory */
527
+ void * p, /* The parser to be deleted */
528
+ void (*freeProc)(void *) /* Function used to reclaim memory */
527
529
  ) {
528
- yyParser *pParser = (yyParser*)p;
529
- #ifndef YYPARSEFREENEVERNULL
530
+ yyParser * pParser = (yyParser *)p;
531
+ #ifndef YYPARSEFREENEVERNULL
530
532
 
531
533
  if ( pParser == 0 ) {
532
534
  return;
533
535
  }
534
536
 
535
- #endif
537
+ #endif
536
538
 
537
539
  while ( pParser->yytos > pParser->yystack ) {
538
540
  yy_pop_parser_stack(pParser);
539
541
  }
540
542
 
541
- #if YYSTACKDEPTH<=0
543
+ #if YYSTACKDEPTH<=0
542
544
 
543
545
  if ( pParser->yystack != &pParser->yystk0 ) {
544
546
  free(pParser->yystack);
545
547
  }
546
548
 
547
- #endif
548
- (*freeProc)((void*)pParser);
549
+ #endif
550
+ (*freeProc)((void *)pParser);
549
551
  }
550
552
 
551
553
  /*
552
554
  ** Return the peak depth of the stack for a parser.
553
555
  */
554
556
  #ifdef YYTRACKMAXSTACKDEPTH
555
- int OPMLStackPeak(void *p) {
556
- yyParser *pParser = (yyParser*)p;
557
+ int OPMLStackPeak(void * p) {
558
+ yyParser * pParser = (yyParser *)p;
557
559
  return pParser->yyhwm;
558
560
  }
559
561
  #endif
@@ -563,7 +565,7 @@ int OPMLStackPeak(void *p) {
563
565
  ** look-ahead token iLookAhead.
564
566
  */
565
567
  static unsigned int yy_find_shift_action(
566
- yyParser *pParser, /* The parser */
568
+ yyParser * pParser, /* The parser */
567
569
  YYCODETYPE iLookAhead /* The look-ahead token */
568
570
  ) {
569
571
  int i;
@@ -581,39 +583,39 @@ static unsigned int yy_find_shift_action(
581
583
  i += iLookAhead;
582
584
 
583
585
  if ( i < 0 || i >= YY_ACTTAB_COUNT || yy_lookahead[i] != iLookAhead ) {
584
- #ifdef YYFALLBACK
586
+ #ifdef YYFALLBACK
585
587
  YYCODETYPE iFallback; /* Fallback token */
586
588
 
587
589
  if ( iLookAhead < sizeof(yyFallback) / sizeof(yyFallback[0])
588
590
  && (iFallback = yyFallback[iLookAhead]) != 0 ) {
589
- #ifndef NDEBUG
591
+ #ifndef NDEBUG
590
592
 
591
593
  if ( yyTraceFILE ) {
592
594
  fprintf(yyTraceFILE, "%sFALLBACK %s => %s\n",
593
595
  yyTracePrompt, yyTokenName[iLookAhead], yyTokenName[iFallback]);
594
596
  }
595
597
 
596
- #endif
598
+ #endif
597
599
  assert( yyFallback[iFallback] == 0 ); /* Fallback loop must terminate */
598
600
  iLookAhead = iFallback;
599
601
  continue;
600
602
  }
601
603
 
602
- #endif
603
- #ifdef YYWILDCARD
604
+ #endif
605
+ #ifdef YYWILDCARD
604
606
  {
605
607
  int j = i - iLookAhead + YYWILDCARD;
606
608
 
607
609
  if (
608
- #if YY_SHIFT_MIN+YYWILDCARD<0
610
+ #if YY_SHIFT_MIN+YYWILDCARD<0
609
611
  j >= 0 &&
610
- #endif
611
- #if YY_SHIFT_MAX+YYWILDCARD>=YY_ACTTAB_COUNT
612
+ #endif
613
+ #if YY_SHIFT_MAX+YYWILDCARD>=YY_ACTTAB_COUNT
612
614
  j < YY_ACTTAB_COUNT &&
613
- #endif
615
+ #endif
614
616
  yy_lookahead[j] == YYWILDCARD && iLookAhead > 0
615
617
  ) {
616
- #ifndef NDEBUG
618
+ #ifndef NDEBUG
617
619
 
618
620
  if ( yyTraceFILE ) {
619
621
  fprintf(yyTraceFILE, "%sWILDCARD %s => %s\n",
@@ -621,11 +623,11 @@ static unsigned int yy_find_shift_action(
621
623
  yyTokenName[YYWILDCARD]);
622
624
  }
623
625
 
624
- #endif /* NDEBUG */
626
+ #endif /* NDEBUG */
625
627
  return yy_action[j];
626
628
  }
627
629
  }
628
- #endif /* YYWILDCARD */
630
+ #endif /* YYWILDCARD */
629
631
  return yy_default[stateno];
630
632
  } else {
631
633
  return yy_action[i];
@@ -642,45 +644,45 @@ static int yy_find_reduce_action(
642
644
  YYCODETYPE iLookAhead /* The look-ahead token */
643
645
  ) {
644
646
  int i;
645
- #ifdef YYERRORSYMBOL
647
+ #ifdef YYERRORSYMBOL
646
648
 
647
649
  if ( stateno > YY_REDUCE_COUNT ) {
648
650
  return yy_default[stateno];
649
651
  }
650
652
 
651
- #else
653
+ #else
652
654
  assert( stateno <= YY_REDUCE_COUNT );
653
- #endif
655
+ #endif
654
656
  i = yy_reduce_ofst[stateno];
655
657
  assert( i != YY_REDUCE_USE_DFLT );
656
658
  assert( iLookAhead != YYNOCODE );
657
659
  i += iLookAhead;
658
- #ifdef YYERRORSYMBOL
660
+ #ifdef YYERRORSYMBOL
659
661
 
660
662
  if ( i < 0 || i >= YY_ACTTAB_COUNT || yy_lookahead[i] != iLookAhead ) {
661
663
  return yy_default[stateno];
662
664
  }
663
665
 
664
- #else
666
+ #else
665
667
  assert( i >= 0 && i < YY_ACTTAB_COUNT );
666
668
  assert( yy_lookahead[i] == iLookAhead );
667
- #endif
669
+ #endif
668
670
  return yy_action[i];
669
671
  }
670
672
 
671
673
  /*
672
674
  ** The following routine is called if the stack overflows.
673
675
  */
674
- static void yyStackOverflow(yyParser *yypParser) {
676
+ static void yyStackOverflow(yyParser * yypParser) {
675
677
  OPMLARG_FETCH;
676
678
  yypParser->yytos--;
677
- #ifndef NDEBUG
679
+ #ifndef NDEBUG
678
680
 
679
681
  if ( yyTraceFILE ) {
680
682
  fprintf(yyTraceFILE, "%sStack Overflow!\n", yyTracePrompt);
681
683
  }
682
684
 
683
- #endif
685
+ #endif
684
686
 
685
687
  while ( yypParser->yytos > yypParser->yystack ) {
686
688
  yy_pop_parser_stack(yypParser);
@@ -697,7 +699,7 @@ static void yyStackOverflow(yyParser *yypParser) {
697
699
  ** Print tracing information for a SHIFT action
698
700
  */
699
701
  #ifndef NDEBUG
700
- static void yyTraceShift(yyParser *yypParser, int yyNewState) {
702
+ static void yyTraceShift(yyParser * yypParser, int yyNewState) {
701
703
  if ( yyTraceFILE ) {
702
704
  if ( yyNewState < YYNSTATE ) {
703
705
  fprintf(yyTraceFILE, "%sShift '%s', go to state %d\n",
@@ -717,29 +719,29 @@ static void yyTraceShift(yyParser *yypParser, int yyNewState) {
717
719
  ** Perform a shift action.
718
720
  */
719
721
  static void yy_shift(
720
- yyParser *yypParser, /* The parser to be shifted */
722
+ yyParser * yypParser, /* The parser to be shifted */
721
723
  int yyNewState, /* The new state to shift in */
722
724
  int yyMajor, /* The major token to shift in */
723
725
  OPMLTOKENTYPE yyMinor /* The minor token to shift in */
724
726
  ) {
725
- yyStackEntry *yytos;
727
+ yyStackEntry * yytos;
726
728
  yypParser->yytos++;
727
- #ifdef YYTRACKMAXSTACKDEPTH
729
+ #ifdef YYTRACKMAXSTACKDEPTH
728
730
 
729
731
  if ( (int)(yypParser->yytos - yypParser->yystack) > yypParser->yyhwm ) {
730
732
  yypParser->yyhwm++;
731
733
  assert( yypParser->yyhwm == (int)(yypParser->yytos - yypParser->yystack) );
732
734
  }
733
735
 
734
- #endif
735
- #if YYSTACKDEPTH>0
736
+ #endif
737
+ #if YYSTACKDEPTH>0
736
738
 
737
739
  if ( yypParser->yytos >= &yypParser->yystack[YYSTACKDEPTH] ) {
738
740
  yyStackOverflow(yypParser);
739
741
  return;
740
742
  }
741
743
 
742
- #else
744
+ #else
743
745
 
744
746
  if ( yypParser->yytos >= &yypParser->yystack[yypParser->yystksz] ) {
745
747
  if ( yyGrowStack(yypParser) ) {
@@ -748,7 +750,7 @@ static void yy_shift(
748
750
  }
749
751
  }
750
752
 
751
- #endif
753
+ #endif
752
754
 
753
755
  if ( yyNewState > YY_MAX_SHIFT ) {
754
756
  yyNewState += YY_MIN_REDUCE - YY_MIN_SHIFTREDUCE;
@@ -770,7 +772,9 @@ static const struct {
770
772
  } yyRuleInfo[] = {
771
773
  { 17, 1 },
772
774
  { 18, 2 },
775
+ { 18, 1 },
773
776
  { 18, 3 },
777
+ { 18, 2 },
774
778
  { 19, 4 },
775
779
  { 19, 3 },
776
780
  { 20, 3 },
@@ -787,23 +791,23 @@ static const struct {
787
791
  { 24, 1 },
788
792
  };
789
793
 
790
- static void yy_accept(yyParser*); /* Forward Declaration */
794
+ static void yy_accept(yyParser *); /* Forward Declaration */
791
795
 
792
796
  /*
793
797
  ** Perform a reduce action and the shift that must immediately
794
798
  ** follow the reduce.
795
799
  */
796
800
  static void yy_reduce(
797
- yyParser *yypParser, /* The parser */
801
+ yyParser * yypParser, /* The parser */
798
802
  unsigned int yyruleno /* Number of the rule by which to reduce */
799
803
  ) {
800
804
  int yygoto; /* The next state */
801
805
  int yyact; /* The next action */
802
- yyStackEntry *yymsp; /* The top of the parser's stack */
806
+ yyStackEntry * yymsp; /* The top of the parser's stack */
803
807
  int yysize; /* Amount to pop the stack */
804
808
  OPMLARG_FETCH;
805
809
  yymsp = yypParser->yytos;
806
- #ifndef NDEBUG
810
+ #ifndef NDEBUG
807
811
 
808
812
  if ( yyTraceFILE && yyruleno < (int)(sizeof(yyRuleName) / sizeof(yyRuleName[0])) ) {
809
813
  yysize = yyRuleInfo[yyruleno].nrhs;
@@ -811,28 +815,28 @@ static void yy_reduce(
811
815
  yyRuleName[yyruleno], yymsp[-yysize].stateno);
812
816
  }
813
817
 
814
- #endif /* NDEBUG */
818
+ #endif /* NDEBUG */
815
819
 
816
820
  /* Check that the stack is large enough to grow by a single entry
817
821
  ** if the RHS of the rule is empty. This ensures that there is room
818
822
  ** enough on the stack to push the LHS value */
819
823
  if ( yyRuleInfo[yyruleno].nrhs == 0 ) {
820
- #ifdef YYTRACKMAXSTACKDEPTH
824
+ #ifdef YYTRACKMAXSTACKDEPTH
821
825
 
822
826
  if ( (int)(yypParser->yytos - yypParser->yystack) > yypParser->yyhwm ) {
823
827
  yypParser->yyhwm++;
824
828
  assert( yypParser->yyhwm == (int)(yypParser->yytos - yypParser->yystack));
825
829
  }
826
830
 
827
- #endif
828
- #if YYSTACKDEPTH>0
831
+ #endif
832
+ #if YYSTACKDEPTH>0
829
833
 
830
834
  if ( yypParser->yytos >= &yypParser->yystack[YYSTACKDEPTH - 1] ) {
831
835
  yyStackOverflow(yypParser);
832
836
  return;
833
837
  }
834
838
 
835
- #else
839
+ #else
836
840
 
837
841
  if ( yypParser->yytos >= &yypParser->yystack[yypParser->yystksz - 1] ) {
838
842
  if ( yyGrowStack(yypParser) ) {
@@ -843,7 +847,7 @@ static void yy_reduce(
843
847
  yymsp = yypParser->yytos;
844
848
  }
845
849
 
846
- #endif
850
+ #endif
847
851
  }
848
852
 
849
853
  switch ( yyruleno ) {
@@ -864,21 +868,23 @@ static void yy_reduce(
864
868
  default:
865
869
  /* (1) doc_xml ::= OPML_XML doc_opml */
866
870
  yytestcase(yyruleno == 1);
867
- /* (2) doc_xml ::= OPML_XML doc_opml OPML_WSNL */ yytestcase(yyruleno == 2);
868
- /* (3) doc_opml ::= OPML_OPML_OPEN opml_header opml_body OPML_OPML_CLOSE */ yytestcase(yyruleno == 3);
869
- /* (4) doc_opml ::= OPML_OPML_OPEN opml_body OPML_OPML_CLOSE */ yytestcase(yyruleno == 4);
870
- /* (5) opml_header ::= OPML_HEAD_OPEN opml_title OPML_HEAD_CLOSE */ yytestcase(yyruleno == 5);
871
- /* (6) opml_header ::= OPML_HEAD_OPEN OPML_HEAD_CLOSE */ yytestcase(yyruleno == 6);
872
- /* (7) opml_title ::= OPML_TITLE_OPEN OPML_TITLE_CLOSE */ yytestcase(yyruleno == 7);
873
- /* (8) opml_body ::= OPML_BODY_OPEN opml_outlines OPML_BODY_CLOSE */ yytestcase(yyruleno == 8);
874
- /* (9) opml_body ::= OPML_BODY_OPEN OPML_BODY_CLOSE */ yytestcase(yyruleno == 9);
875
- /* (10) opml_outlines ::= opml_outlines opml_outline */ yytestcase(yyruleno == 10);
876
- /* (11) opml_outlines ::= opml_outline (OPTIMIZED OUT) */ assert(yyruleno != 11);
877
- /* (12) opml_outline ::= OPML_OUTLINE_OPEN OPML_OUTLINE_CLOSE */ yytestcase(yyruleno == 12);
878
- /* (13) opml_outline ::= OPML_OUTLINE_PREAMBLE OPML_OUTLINE_CLOSE */ yytestcase(yyruleno == 13);
879
- /* (14) opml_outline ::= OPML_OUTLINE_OPEN opml_outlines OPML_OUTLINE_CLOSE */ yytestcase(yyruleno == 14);
880
- /* (15) opml_outline ::= OPML_OUTLINE_METADATA opml_outlines OPML_OUTLINE_CLOSE */ yytestcase(yyruleno == 15);
881
- /* (16) opml_outline ::= OPML_OUTLINE_SELF_CLOSE */ yytestcase(yyruleno == 16);
871
+ /* (2) doc_xml ::= doc_opml */ yytestcase(yyruleno == 2);
872
+ /* (3) doc_xml ::= OPML_XML doc_opml OPML_WSNL */ yytestcase(yyruleno == 3);
873
+ /* (4) doc_xml ::= doc_opml OPML_WSNL */ yytestcase(yyruleno == 4);
874
+ /* (5) doc_opml ::= OPML_OPML_OPEN opml_header opml_body OPML_OPML_CLOSE */ yytestcase(yyruleno == 5);
875
+ /* (6) doc_opml ::= OPML_OPML_OPEN opml_body OPML_OPML_CLOSE */ yytestcase(yyruleno == 6);
876
+ /* (7) opml_header ::= OPML_HEAD_OPEN opml_title OPML_HEAD_CLOSE */ yytestcase(yyruleno == 7);
877
+ /* (8) opml_header ::= OPML_HEAD_OPEN OPML_HEAD_CLOSE */ yytestcase(yyruleno == 8);
878
+ /* (9) opml_title ::= OPML_TITLE_OPEN OPML_TITLE_CLOSE */ yytestcase(yyruleno == 9);
879
+ /* (10) opml_body ::= OPML_BODY_OPEN opml_outlines OPML_BODY_CLOSE */ yytestcase(yyruleno == 10);
880
+ /* (11) opml_body ::= OPML_BODY_OPEN OPML_BODY_CLOSE */ yytestcase(yyruleno == 11);
881
+ /* (12) opml_outlines ::= opml_outlines opml_outline */ yytestcase(yyruleno == 12);
882
+ /* (13) opml_outlines ::= opml_outline (OPTIMIZED OUT) */ assert(yyruleno != 13);
883
+ /* (14) opml_outline ::= OPML_OUTLINE_OPEN OPML_OUTLINE_CLOSE */ yytestcase(yyruleno == 14);
884
+ /* (15) opml_outline ::= OPML_OUTLINE_PREAMBLE OPML_OUTLINE_CLOSE */ yytestcase(yyruleno == 15);
885
+ /* (16) opml_outline ::= OPML_OUTLINE_OPEN opml_outlines OPML_OUTLINE_CLOSE */ yytestcase(yyruleno == 16);
886
+ /* (17) opml_outline ::= OPML_OUTLINE_METADATA opml_outlines OPML_OUTLINE_CLOSE */ yytestcase(yyruleno == 17);
887
+ /* (18) opml_outline ::= OPML_OUTLINE_SELF_CLOSE */ yytestcase(yyruleno == 18);
882
888
  break;
883
889
  /********** End reduce actions ************************************************/
884
890
  };
@@ -913,16 +919,16 @@ static void yy_reduce(
913
919
  */
914
920
  #ifndef YYNOERRORRECOVERY
915
921
  static void yy_parse_failed(
916
- yyParser *yypParser /* The parser */
922
+ yyParser * yypParser /* The parser */
917
923
  ) {
918
924
  OPMLARG_FETCH;
919
- #ifndef NDEBUG
925
+ #ifndef NDEBUG
920
926
 
921
927
  if ( yyTraceFILE ) {
922
928
  fprintf(yyTraceFILE, "%sFail!\n", yyTracePrompt);
923
929
  }
924
930
 
925
- #endif
931
+ #endif
926
932
 
927
933
  while ( yypParser->yytos > yypParser->yystack ) {
928
934
  yy_pop_parser_stack(yypParser);
@@ -942,7 +948,7 @@ static void yy_parse_failed(
942
948
  ** The following code executes when a syntax error first occurs.
943
949
  */
944
950
  static void yy_syntax_error(
945
- yyParser *yypParser, /* The parser */
951
+ yyParser * yypParser, /* The parser */
946
952
  int yymajor, /* The major type of the error token */
947
953
  OPMLTOKENTYPE yyminor /* The minor type of the error token */
948
954
  ) {
@@ -951,7 +957,7 @@ static void yy_syntax_error(
951
957
  /************ Begin %syntax_error code ****************************************/
952
958
 
953
959
  fprintf(stderr, "Parser syntax error.\n");
954
- #ifndef NDEBUG
960
+ #ifndef NDEBUG
955
961
  fprintf(stderr, "Parser syntax error.\n");
956
962
  int n = sizeof(yyTokenName) / sizeof(yyTokenName[0]);
957
963
 
@@ -963,7 +969,7 @@ static void yy_syntax_error(
963
969
  }
964
970
  }
965
971
 
966
- #endif
972
+ #endif
967
973
  /************ End %syntax_error code ******************************************/
968
974
  OPMLARG_STORE; /* Suppress warning about unused %extra_argument variable */
969
975
  }
@@ -972,19 +978,19 @@ static void yy_syntax_error(
972
978
  ** The following is executed when the parser accepts
973
979
  */
974
980
  static void yy_accept(
975
- yyParser *yypParser /* The parser */
981
+ yyParser * yypParser /* The parser */
976
982
  ) {
977
983
  OPMLARG_FETCH;
978
- #ifndef NDEBUG
984
+ #ifndef NDEBUG
979
985
 
980
986
  if ( yyTraceFILE ) {
981
987
  fprintf(yyTraceFILE, "%sAccept!\n", yyTracePrompt);
982
988
  }
983
989
 
984
- #endif
985
- #ifndef YYNOERRORRECOVERY
990
+ #endif
991
+ #ifndef YYNOERRORRECOVERY
986
992
  yypParser->yyerrcnt = -1;
987
- #endif
993
+ #endif
988
994
  assert( yypParser->yytos == yypParser->yystack );
989
995
  /* Here code is inserted which will be executed whenever the
990
996
  ** parser accepts */
@@ -1015,61 +1021,61 @@ static void yy_accept(
1015
1021
  ** None.
1016
1022
  */
1017
1023
  void OPML(
1018
- void *yyp, /* The parser */
1024
+ void * yyp, /* The parser */
1019
1025
  int yymajor, /* The major token code number */
1020
1026
  OPMLTOKENTYPE yyminor /* The value for the token */
1021
1027
  OPMLARG_PDECL /* Optional %extra_argument parameter */
1022
1028
  ) {
1023
1029
  YYMINORTYPE yyminorunion;
1024
1030
  unsigned int yyact; /* The parser action. */
1025
- #if !defined(YYERRORSYMBOL) && !defined(YYNOERRORRECOVERY)
1031
+ #if !defined(YYERRORSYMBOL) && !defined(YYNOERRORRECOVERY)
1026
1032
  int yyendofinput; /* True if we are at the end of input */
1027
- #endif
1028
- #ifdef YYERRORSYMBOL
1033
+ #endif
1034
+ #ifdef YYERRORSYMBOL
1029
1035
  int yyerrorhit = 0; /* True if yymajor has invoked an error */
1030
- #endif
1031
- yyParser *yypParser; /* The parser */
1036
+ #endif
1037
+ yyParser * yypParser; /* The parser */
1032
1038
 
1033
- yypParser = (yyParser*)yyp;
1039
+ yypParser = (yyParser *)yyp;
1034
1040
  assert( yypParser->yytos != 0 );
1035
- #if !defined(YYERRORSYMBOL) && !defined(YYNOERRORRECOVERY)
1041
+ #if !defined(YYERRORSYMBOL) && !defined(YYNOERRORRECOVERY)
1036
1042
  yyendofinput = (yymajor == 0);
1037
- #endif
1043
+ #endif
1038
1044
  OPMLARG_STORE;
1039
1045
 
1040
- #ifndef NDEBUG
1046
+ #ifndef NDEBUG
1041
1047
 
1042
1048
  if ( yyTraceFILE ) {
1043
1049
  fprintf(yyTraceFILE, "%sInput '%s'\n", yyTracePrompt, yyTokenName[yymajor]);
1044
1050
  }
1045
1051
 
1046
- #endif
1052
+ #endif
1047
1053
 
1048
1054
  do {
1049
1055
  yyact = yy_find_shift_action(yypParser, (YYCODETYPE)yymajor);
1050
1056
 
1051
1057
  if ( yyact <= YY_MAX_SHIFTREDUCE ) {
1052
1058
  yy_shift(yypParser, yyact, yymajor, yyminor);
1053
- #ifndef YYNOERRORRECOVERY
1059
+ #ifndef YYNOERRORRECOVERY
1054
1060
  yypParser->yyerrcnt--;
1055
- #endif
1061
+ #endif
1056
1062
  yymajor = YYNOCODE;
1057
1063
  } else if ( yyact <= YY_MAX_REDUCE ) {
1058
1064
  yy_reduce(yypParser, yyact - YY_MIN_REDUCE);
1059
1065
  } else {
1060
1066
  assert( yyact == YY_ERROR_ACTION );
1061
1067
  yyminorunion.yy0 = yyminor;
1062
- #ifdef YYERRORSYMBOL
1068
+ #ifdef YYERRORSYMBOL
1063
1069
  int yymx;
1064
- #endif
1065
- #ifndef NDEBUG
1070
+ #endif
1071
+ #ifndef NDEBUG
1066
1072
 
1067
1073
  if ( yyTraceFILE ) {
1068
1074
  fprintf(yyTraceFILE, "%sSyntax Error!\n", yyTracePrompt);
1069
1075
  }
1070
1076
 
1071
- #endif
1072
- #ifdef YYERRORSYMBOL
1077
+ #endif
1078
+ #ifdef YYERRORSYMBOL
1073
1079
 
1074
1080
  /* A syntax error has occurred.
1075
1081
  ** The response to an error depends upon whether or not the
@@ -1097,14 +1103,14 @@ void OPML(
1097
1103
  yymx = yypParser->yytos->major;
1098
1104
 
1099
1105
  if ( yymx == YYERRORSYMBOL || yyerrorhit ) {
1100
- #ifndef NDEBUG
1106
+ #ifndef NDEBUG
1101
1107
 
1102
1108
  if ( yyTraceFILE ) {
1103
1109
  fprintf(yyTraceFILE, "%sDiscard input token %s\n",
1104
1110
  yyTracePrompt, yyTokenName[yymajor]);
1105
1111
  }
1106
1112
 
1107
- #endif
1113
+ #endif
1108
1114
  yy_destructor(yypParser, (YYCODETYPE)yymajor, &yyminorunion);
1109
1115
  yymajor = YYNOCODE;
1110
1116
  } else {
@@ -1120,9 +1126,9 @@ void OPML(
1120
1126
  if ( yypParser->yytos < yypParser->yystack || yymajor == 0 ) {
1121
1127
  yy_destructor(yypParser, (YYCODETYPE)yymajor, &yyminorunion);
1122
1128
  yy_parse_failed(yypParser);
1123
- #ifndef YYNOERRORRECOVERY
1129
+ #ifndef YYNOERRORRECOVERY
1124
1130
  yypParser->yyerrcnt = -1;
1125
- #endif
1131
+ #endif
1126
1132
  yymajor = YYNOCODE;
1127
1133
  } else if ( yymx != YYERRORSYMBOL ) {
1128
1134
  yy_shift(yypParser, yyact, YYERRORSYMBOL, yyminor);
@@ -1131,7 +1137,7 @@ void OPML(
1131
1137
 
1132
1138
  yypParser->yyerrcnt = 3;
1133
1139
  yyerrorhit = 1;
1134
- #elif defined(YYNOERRORRECOVERY)
1140
+ #elif defined(YYNOERRORRECOVERY)
1135
1141
  /* If the YYNOERRORRECOVERY macro is defined, then do not attempt to
1136
1142
  ** do any kind of error recovery. Instead, simply invoke the syntax
1137
1143
  ** error routine and continue going as if nothing had happened.
@@ -1143,7 +1149,7 @@ void OPML(
1143
1149
  yy_destructor(yypParser, (YYCODETYPE)yymajor, &yyminorunion);
1144
1150
  yymajor = YYNOCODE;
1145
1151
 
1146
- #else /* YYERRORSYMBOL is not defined */
1152
+ #else /* YYERRORSYMBOL is not defined */
1147
1153
 
1148
1154
  /* This is what we do if the grammar does not define ERROR:
1149
1155
  **
@@ -1163,20 +1169,20 @@ void OPML(
1163
1169
 
1164
1170
  if ( yyendofinput ) {
1165
1171
  yy_parse_failed(yypParser);
1166
- #ifndef YYNOERRORRECOVERY
1172
+ #ifndef YYNOERRORRECOVERY
1167
1173
  yypParser->yyerrcnt = -1;
1168
- #endif
1174
+ #endif
1169
1175
  }
1170
1176
 
1171
1177
  yymajor = YYNOCODE;
1172
- #endif
1178
+ #endif
1173
1179
  }
1174
1180
  } while ( yymajor != YYNOCODE && yypParser->yytos > yypParser->yystack );
1175
1181
 
1176
- #ifndef NDEBUG
1182
+ #ifndef NDEBUG
1177
1183
 
1178
1184
  if ( yyTraceFILE ) {
1179
- yyStackEntry *i;
1185
+ yyStackEntry * i;
1180
1186
  char cDiv = '[';
1181
1187
  fprintf(yyTraceFILE, "%sReturn. Stack=", yyTracePrompt);
1182
1188
 
@@ -1188,6 +1194,6 @@ void OPML(
1188
1194
  fprintf(yyTraceFILE, "]\n");
1189
1195
  }
1190
1196
 
1191
- #endif
1197
+ #endif
1192
1198
  return;
1193
1199
  }