Vaclav Petras wrote: > So my question is, was this fixed in the time of [1]? It is not clear from > the discussion.
No. > If not, what is the right fix? The right fix is to remove all occurrences of "using namespace std;", then fix the (probably hundreds) of errors which arise, either by using qualified names (e.g. std::vector) or by adding "using" statements for individual names (e.g. "using std::vector;"). [Note that iostream uses templates, so it might matter which approach is taken. A qualified name forces the use of a specific function (or type, etc), whereas a "using" statement adds the name as a fallback but argument-dependent lookup takes priority.] A more comprehensive fix would be to simply not accept code written in C++. It's a deceptively complex language, and writing portable C++ code is significantly harder than writing "works-on-my-system" code. Consequently, a very large proportion of C++ code falls into the latter category. That isn't a problem if you're writing something for your personal use and you're willing to abandon it once it no longer compiles on current systems. OTOH, it is a problem for a project like GRASS, which aims to support multiple platforms over the long term. -- Glynn Clements <gl...@gclements.plus.com> _______________________________________________ grass-dev mailing list grass-dev@lists.osgeo.org http://lists.osgeo.org/mailman/listinfo/grass-dev