Akim, you are right, Bison thought <Playmode> and < Playmode > were two different types.
I removed the spaces from < Playmode > and the compilation went all right with the new generated hh file. The problem is solved. Thank you so much guys. On Sun, Dec 22, 2013 at 10:31 AM, Akim Demaille <a...@lrde.epita.fr> wrote: > > Le 22 déc. 2013 à 17:28, Akim Demaille <a...@lrde.epita.fr> a écrit : > > > We would really need to be able to reproduce this if you want us to > > track down your problem. Can you send your input files? > > Well, I had a better look at your input file, and the problem is > most probably here: > > %token <Playmode> BEFORE_KICK_OFF > %token <Playmode> TIME_OVER > %token <Playmode> PLAY_ON > ... > %type < Playmode > playmode > > I bet that the spaces are _not_ removed from the <…>, so bison > will have considered <Playmode> and < Playmode > as two different > types, and therefore will have generated twice the constructors. > However your c++ is smart enough to see that's twice the same thing, > and complains about this. > > Obviously, Bison should strip these spaces. > >