On Donnerstag, 10. Dezember 2020 21:03:30 CET Rolf Eike Beer wrote: > > but meanwhile it's also being > > evaluated for use in OSM validation tooling: > > https://github.com/osm-fr/osmose-backend/issues/555. That has already > > resulted in a number of contributions increasing the tolerance for > > non-conforming expressions, which benefits all other use-cases as well. > > I was thinking about doing something similar for OSM2go, which currently > also runs on the N900 and needs gcc 4.2 for it. Is there interest to have a > C++98 STL only version of the main parser? Or is it so tied to Qt classes > that there is no chance in that?
The parser itself is flex/bison and isn't using Qt types much, and doing this in a STL-only way was already discussed in the context of the use in OSM validation tooling. That doesn't give you much though, the evaluation code heavily depends on Qt for date/time math, timezones, calendar system, locale, holidays, etc, there are no replacements for much of this in STL, let alone in C++98. Going back from C++17 to C++98 would also be a major effort I guess. For the flex/bison code it might be possible to factor out these parts, as it's largely very basic C++ code anyway. You'd need to rebuild most of the logic around that though I'm afraid. Probably needs a more detailed look at what you need exactly and what you have available in terms of libs and tools to see what's possible. Regards, Volker