> On 13 Feb 2019, at 20:16, Daniel Johnson <address@hidden> wrote: > > I am using guile 1.8.8, gcc 7.4.0, and flex 2.6.4. Here's my configure line: > > On build, I get a long string of errors originating in > out/lexer.cc<http://lexer.cc>: > > out/lexer.cc:6272<http://lexer.cc:6272>:46: error: cannot convert > 'std::istream {aka > std::basic_istream<char>}' to 'std::istream* {aka std::basic_istream<char>*}' > in assignment > YY_CURRENT_BUFFER_LVALUE->yy_input_file = yyin;
Use flex 2.5.37, as the flex 2.6.* C++ lexer is broken (discussed on the Bison lists): a stream pointer has been changed in the declaration to a reference without doing it in the code. Reported some years ago on the flex list. `configure` should warn or bail on incompatible flex versions. I suggest we add a version check in configure.ac to ensure that flex version is between 2.5.37 and 2.5.39 (given that 2.5.38 and 2.5.39 actually works). Erlend E. Aasland