Compilation of math_parser.C with DEC cxx fails
cxx: Error: math_parser.C, line 189: #304 no instance of overloaded function
"std::basic_istream<charT, traits>::get [with charT=char,
traits=std::char_traits<char>]" matches the argument list
argument types are: (unsigned char)
yyis->get(c);
and in several other places.
The relevant code is:
unsigned char LexGetArg(unsigned char lf, bool accept_spaces = false)
{
while (yyis->good()) {
unsigned char c;
yyis->get(c);
...
}
}
The relevant code in the <istream> header file is
template<class charT, class traits>
class _RWSTDExportTemplate basic_istream : virtual public basic_ios<charT,
traits> {
public:
istream_type& get(char_type& c);
}
So it looks like the correct fix is to have:
{
while (yyis->good()) {
char c;
yyis->get(c);
...
}
}
Is this correct?
Angus