On some platforms, Gnulib #defines read to rpl_read. The lexer uses
an unreleated function pointer member named 'read' in struct
lex_reader_class. It doesn't really matter whether this name gets
replaced with rpl_read as long as it always happens consistently.
Adding "#include <unistd.h>" to lexer.h should ensure that.
Reported by Harry Thijssen.