/* Copyright (c) 2004 Arnaud Legrand, Martin Quinson. All rights reserved. */
/* This program is free software; you can redistribute it and/or modify it
* under the terms of the license (GNU LGPL) which comes with this package. */
-/* char string_buf[GRAS_DDT_PARSE_MAX_STR_CONST];
- char *string_buf_ptr = NULL; FIXME; killme*/
-#line 15 "gras/DataDesc/ddt_parse.yy.l"
+#line 12 "gras/DataDesc/ddt_parse.yy.l"
#include "gras/DataDesc/datadesc_private.h"
#include "gras/DataDesc/ddt_parse.yy.h"
#include <string.h>
XBT_LOG_NEW_DEFAULT_SUBCATEGORY(lexer,ddt_parse,"The crude internals of the lexer used for type parsing");
#define SHOW_WHERE DEBUG4("%d:%d (char #%d): seen '%s'", gras_ddt_parse_line_pos,gras_ddt_parse_col_pos,gras_ddt_parse_char_pos,gras_ddt_parse_text)
-#line 507 "gras/DataDesc/ddt_parse.yy.c"
+#line 505 "gras/DataDesc/ddt_parse.yy.c"
#define INITIAL 0
#define annotate 1
register char *yy_cp, *yy_bp;
register int yy_act;
-#line 35 "gras/DataDesc/ddt_parse.yy.l"
+#line 32 "gras/DataDesc/ddt_parse.yy.l"
int comment_caller=0;
int annotate_caller=0;
-#line 666 "gras/DataDesc/ddt_parse.yy.c"
+#line 664 "gras/DataDesc/ddt_parse.yy.c"
if ( (yy_init) )
{
case 1:
YY_RULE_SETUP
-#line 39 "gras/DataDesc/ddt_parse.yy.l"
+#line 36 "gras/DataDesc/ddt_parse.yy.l"
YY_BREAK
case 2:
YY_RULE_SETUP
-#line 41 "gras/DataDesc/ddt_parse.yy.l"
+#line 38 "gras/DataDesc/ddt_parse.yy.l"
{ /****************** ANNOTATION ************************/
DEBUG0("Begin annotation");
annotate_caller = INITIAL;
YY_BREAK
case 3:
YY_RULE_SETUP
-#line 48 "gras/DataDesc/ddt_parse.yy.l"
+#line 45 "gras/DataDesc/ddt_parse.yy.l"
{ /* trim annotation */
DEBUG0("Begin annotation");
annotate_caller = foo;
YY_BREAK
case 4:
YY_RULE_SETUP
-#line 56 "gras/DataDesc/ddt_parse.yy.l"
+#line 53 "gras/DataDesc/ddt_parse.yy.l"
{
DEBUG0("End annotation");
gras_ddt_parse_char_pos+= strlen(gras_ddt_parse_text);
YY_BREAK
case 5:
YY_RULE_SETUP
-#line 63 "gras/DataDesc/ddt_parse.yy.l"
+#line 60 "gras/DataDesc/ddt_parse.yy.l"
{
PARSE_ERROR0("``/*g'' construct closed by a regular ``*/''");
}
case 6:
/* rule 6 can match eol */
YY_RULE_SETUP
-#line 66 "gras/DataDesc/ddt_parse.yy.l"
+#line 63 "gras/DataDesc/ddt_parse.yy.l"
{
PARSE_ERROR0("Type annotation cannot spread over several lines");
}
YY_BREAK
case 7:
YY_RULE_SETUP
-#line 70 "gras/DataDesc/ddt_parse.yy.l"
+#line 67 "gras/DataDesc/ddt_parse.yy.l"
{ /* eat the rest */
gras_ddt_parse_char_pos+= strlen(gras_ddt_parse_text);
gras_ddt_parse_col_pos+= strlen(gras_ddt_parse_text);
YY_BREAK
case 8:
YY_RULE_SETUP
-#line 76 "gras/DataDesc/ddt_parse.yy.l"
+#line 73 "gras/DataDesc/ddt_parse.yy.l"
{ /****************** COMMENTS ************************/
/* constructs like : */
/*g [string] g*/
YY_BREAK
case 9:
YY_RULE_SETUP
-#line 84 "gras/DataDesc/ddt_parse.yy.l"
+#line 81 "gras/DataDesc/ddt_parse.yy.l"
{
comment_caller = foo;
BEGIN(comment);
YY_BREAK
case 10:
YY_RULE_SETUP
-#line 89 "gras/DataDesc/ddt_parse.yy.l"
+#line 86 "gras/DataDesc/ddt_parse.yy.l"
{ /* eat anything that's not a '*' */
}
YY_BREAK
case 11:
YY_RULE_SETUP
-#line 91 "gras/DataDesc/ddt_parse.yy.l"
+#line 88 "gras/DataDesc/ddt_parse.yy.l"
{ /* eat up '*'s not followed by '/'s */
}
YY_BREAK
case 12:
/* rule 12 can match eol */
YY_RULE_SETUP
-#line 93 "gras/DataDesc/ddt_parse.yy.l"
+#line 90 "gras/DataDesc/ddt_parse.yy.l"
{
++gras_ddt_parse_line_pos;
gras_ddt_parse_col_pos=0;
YY_BREAK
case 13:
YY_RULE_SETUP
-#line 98 "gras/DataDesc/ddt_parse.yy.l"
+#line 95 "gras/DataDesc/ddt_parse.yy.l"
{
gras_ddt_parse_char_pos+= strlen(gras_ddt_parse_text);
gras_ddt_parse_col_pos+= strlen(gras_ddt_parse_text);
YY_BREAK
case 14:
YY_RULE_SETUP
-#line 104 "gras/DataDesc/ddt_parse.yy.l"
+#line 101 "gras/DataDesc/ddt_parse.yy.l"
{ /****************** STATEMENTS ************************/
gras_ddt_parse_char_pos += strlen(gras_ddt_parse_text);
gras_ddt_parse_col_pos += strlen(gras_ddt_parse_text);
YY_BREAK
case 15:
YY_RULE_SETUP
-#line 110 "gras/DataDesc/ddt_parse.yy.l"
+#line 107 "gras/DataDesc/ddt_parse.yy.l"
{
gras_ddt_parse_char_pos++;
gras_ddt_parse_col_pos++;
YY_BREAK
case 16:
YY_RULE_SETUP
-#line 116 "gras/DataDesc/ddt_parse.yy.l"
+#line 113 "gras/DataDesc/ddt_parse.yy.l"
{
gras_ddt_parse_char_pos++;
gras_ddt_parse_col_pos++;
YY_BREAK
case 17:
YY_RULE_SETUP
-#line 122 "gras/DataDesc/ddt_parse.yy.l"
+#line 119 "gras/DataDesc/ddt_parse.yy.l"
{
gras_ddt_parse_char_pos++;
gras_ddt_parse_col_pos++;
YY_BREAK
case 18:
YY_RULE_SETUP
-#line 128 "gras/DataDesc/ddt_parse.yy.l"
+#line 125 "gras/DataDesc/ddt_parse.yy.l"
{
gras_ddt_parse_char_pos++;
gras_ddt_parse_col_pos++;
YY_BREAK
case 19:
YY_RULE_SETUP
-#line 134 "gras/DataDesc/ddt_parse.yy.l"
+#line 131 "gras/DataDesc/ddt_parse.yy.l"
{
gras_ddt_parse_char_pos++;
gras_ddt_parse_col_pos++;
YY_BREAK
case 20:
YY_RULE_SETUP
-#line 140 "gras/DataDesc/ddt_parse.yy.l"
+#line 137 "gras/DataDesc/ddt_parse.yy.l"
{
gras_ddt_parse_char_pos++;
gras_ddt_parse_col_pos++;
YY_BREAK
case 21:
YY_RULE_SETUP
-#line 146 "gras/DataDesc/ddt_parse.yy.l"
+#line 143 "gras/DataDesc/ddt_parse.yy.l"
{
gras_ddt_parse_char_pos++;
gras_ddt_parse_col_pos++;
YY_BREAK
case 22:
YY_RULE_SETUP
-#line 152 "gras/DataDesc/ddt_parse.yy.l"
+#line 149 "gras/DataDesc/ddt_parse.yy.l"
{
gras_ddt_parse_char_pos++;
gras_ddt_parse_col_pos++;
YY_BREAK
case 23:
YY_RULE_SETUP
-#line 158 "gras/DataDesc/ddt_parse.yy.l"
+#line 155 "gras/DataDesc/ddt_parse.yy.l"
{
gras_ddt_parse_char_pos++;
gras_ddt_parse_col_pos++;
case 24:
/* rule 24 can match eol */
YY_RULE_SETUP
-#line 164 "gras/DataDesc/ddt_parse.yy.l"
+#line 161 "gras/DataDesc/ddt_parse.yy.l"
{
gras_ddt_parse_line_pos++;
gras_ddt_parse_char_pos++;
YY_BREAK
case 25:
YY_RULE_SETUP
-#line 170 "gras/DataDesc/ddt_parse.yy.l"
+#line 167 "gras/DataDesc/ddt_parse.yy.l"
{
gras_ddt_parse_char_pos++;
gras_ddt_parse_col_pos++;
YY_BREAK
case 26:
YY_RULE_SETUP
-#line 175 "gras/DataDesc/ddt_parse.yy.l"
+#line 172 "gras/DataDesc/ddt_parse.yy.l"
ECHO;
YY_BREAK
-#line 985 "gras/DataDesc/ddt_parse.yy.c"
+#line 983 "gras/DataDesc/ddt_parse.yy.c"
case YY_STATE_EOF(INITIAL):
case YY_STATE_EOF(annotate):
case YY_STATE_EOF(comment):
#undef YY_DECL_IS_OURS
#undef YY_DECL
#endif
-#line 175 "gras/DataDesc/ddt_parse.yy.l"
+#line 172 "gras/DataDesc/ddt_parse.yy.l"
/* {space}+ { return(TOKEN_SPACE);} */