title: recover yyparse after yyaccept
body: <p>Friends, I am parsing a bibtex file, having multiple bibtex entry within a file, e.g.</p>
  
  <pre><code>@Book{a1,
      Title="ASR",
      Publisher="oxf",
      Author = {a {\"m}ook, Rudra Banerjee},
      Year="2010",
      Address="UK",
      Edition="1",
  }
  @Article{a2,
      Author="Rudra Banerjee",
      Title="Fe{\"Ni}Mo",
      Publisher="P{\"R}B",
      Number="12",
      Pages="36690",
      Year="2011",
      Address="UK",
      Edition="1",
  }
  </code></pre>
  
  <p>Now, I want yyparse to return after each entry, hence, my parser is:</p>
  
  <pre><code>%union
  {
      char    *sval;
  };
  %token &lt;sval&gt; VALUE
  %token &lt;sval&gt; KEY
  %token OBRACE
  %token EBRACE
  %token QUOTE
  %token SEMICOLON 
  
  %start Input
  %%
  Input: 
       /* empty */ 
       | Input Entry ;  /* input is zero or more entires */
  Entry: 
       '@' KEY '{' KEY ','{ 
                g_hash_table_insert(table, g_strdup("TYPE"), g_strdup($2));
                    g_hash_table_insert(table, g_strdup("ID"), g_strdup($4));
            g_printf("%s:%s\n","KEY=&gt;",g_hash_table_lookup(table,"TYPE"));
  //                  g_printf("%s: %s\n", $2, $4);
                } 
       KeyVals '}'
       {YYACCEPT;}
       ;
  KeyVals: 
         /* empty */ 
         | KeyVals KeyVal ; /* zero or more keyvals */
  KeyVal: 
        KEY '=' VALUE ',' { g_hash_table_insert(table, g_strdup($1), g_strdup($3));
  //                          g_printf("%s: %s\n", $1, $3);
                             g_printf("%s:%s\n",$1,g_hash_table_lookup(table,$1));
                };
  
  %%
  </code></pre>
  
  <p>and in main routine, it is called as:</p>
  
  <pre><code>do{
     yyparse();
    }
  </code></pre>
  
  <p>The problem is, it is parsed correctly, but only the first entry; i.e. it is not recovering from the YYACCEPT.
  How I can make the code recall the yyparse again after yyaccept?</p>
  
  <p>This is almost same question as <a href="https://stackoverflow.com/questions/11564563/how-do-i-convince-bison-to-parse-part-of-a-file">How do I convince Bison to parse part of a file?</a> But I have failed to solve my problem.</p>