On 22 May 2009, at 20:11, Paritosh Aggarwal wrote:
/*JIT PARSER BISON FILE*/
%{
#include<map>
#include "heading.h"
using namespace std;
int yyerror(char *s);
int yylex(void);
%}
%union
{
pair<const string,int>* it;
int val;
}
................
compiling this gives the following error: jitparser.y:15: error: ISO
C++
forbids declaration of ‘pair’ with no type
jitparser.y:15: error: expected ‘;’ before ‘<’ token
In the above, make sure the header for std::pair is included -
impossible to see from your example. Perhaps the class used as a
pointer needs to be instantiated before - try it without the 'union'.
Sometimes "using namespace std" may cause problems - try without it.
And you do not mention which Bison version you are using - in case it
is a know bug fixed. Just some inputs.
Hans
_______________________________________________
help-bison@gnu.org http://lists.gnu.org/mailman/listinfo/help-bison