compiling on the latest libstdc++3 breaks the whole
kaboodle, including
#include <ostream>
#include <istream> in tinyxml.h
gets things working again :)
sorry for being brief, it's late ;) hope its usefull :)
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
I believe that, instead of including <ostream> and <istream> in tinyxml.h, you can just include <istream> in the .cpp files that need it (<istream> includes std::ostream, as it happens) and include <iosfwd> just after the <string> include in tinyxml.h. This reduces dependencies and compile times.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
I think you are correct. However, there have been so many bugs around this topic (that I can reproduce) that I would rather overinclude than break something else.
lee
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
compiling on the latest libstdc++3 breaks the whole
kaboodle, including
#include <ostream>
#include <istream> in tinyxml.h
gets things working again :)
sorry for being brief, it's late ;) hope its usefull :)
Thanks for the fix. It's in 2.1.5 (to come)
You have to define TIXML_NEED_STREAM in tinyxml.h.
Apple users have the same problem
I believe that, instead of including <ostream> and <istream> in tinyxml.h, you can just include <istream> in the .cpp files that need it (<istream> includes std::ostream, as it happens) and include <iosfwd> just after the <string> include in tinyxml.h. This reduces dependencies and compile times.
I think you are correct. However, there have been so many bugs around this topic (that I can reproduce) that I would rather overinclude than break something else.
lee