DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT <http://nagoya.apache.org/bugzilla/show_bug.cgi?id=20643>. ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND INSERTED IN THE BUG DATABASE.
http://nagoya.apache.org/bugzilla/show_bug.cgi?id=20643 Use preprocessor directives for using the best choice of iostreams Summary: Use preprocessor directives for using the best choice of iostreams Product: Xerces-C++ Version: 2.3.0 Platform: PC OS/Version: Windows NT/2K Status: NEW Severity: Enhancement Priority: Other Component: Miscellaneous AssignedTo: [EMAIL PROTECTED] ReportedBy: [EMAIL PROTECTED] In StdOutFormatTarget.cpp old-style iostreams (#include <iostream.h>) are used to support non-ANSI C++ compliant compilers (cf. Rev 1.4 note). Wouldn't it be better to use preprocessor directives instead? Not only does VC++ 7.x emit a warning when old-style iostreams are used, but you also end up with a dependency on the run-time library MSVCI70.DLL that you wouldn't need otherwise. The ANSI compliant iostreams are implemented in MSVCP70.DLL, and you don't always want to ship both DLLs when distributing an application that is otherwise only using the latter DLL. This works with VC++ 7.x, but tests for more ANSI C++ compliant compilers should of course be added. #if (_MSC_VER >= 1300) // Perhaps use 1200 instead; VC6 supports ANSI C++ compliant iostreams, doesn't it? // Use ANSI C++ compliant iostreams #include <iostream> using namespace std; #else // Use old-style iostreams #include <iostream.h> #endif --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
