The simple way to avoid this problem is to generate all the scanners with the /noEmbedBuffer option ("%option noembedbuffer" in the *.lex file will have the same effect). That way the buffer code is placed in the file GplexBuffers.cs which
gplex will emit. The buffer code, including the Guesser code will live in the QUT.GplexBuffers namespace, and will be shared by all the scanners.
Actually, if you run gplex with the /noEmbedBuffers option several times you will actually emit GplexBuffers.cs several times, but the later emits will just overwrite the equally named earlier ones. The option names are case-invariant both on the command
line, and as part of an %option declaration in the spec.
Section 4.2 of the gplex doco has more on all this.
If you still have problems send me a message on CodePlex and we can switch to regular email.
Thanks for the question