I am writing a parser and I want it to be as portable as possible.
Right now I am using GNU bison to generate my parser but I am not sure if my code is relying on yacc extensions that are not fully portable.
So I would like to know features GNU bison has that the original yacc is missing.
The reason I get worried is because I noticed that my parser failed to compile on Windows using a bison port. I would sacrifice GNU bison features and stick with the original standardized yacc if it would make my parser easier to port between different platforms.
So what are the differences between GNU bison and the original standard yacc? What features should I avoid when using GNU bison if I want my program to be as portable as possible?