imagjpeg.h     WXH
 imaglist.h     WXH
 intl.h WXH     Base
+iosfwrap.h     WXH     Base
 ioswrap.h      WXH     Base
 ipc.h  WXH     Base
 ipcbase.h      WXH     Base
 
 class WXDLLEXPORT wxConfigBase;
 
 #if wxUSE_STD_IOSTREAM
-  #include "wx/ioswrap.h"
+  #include "wx/iosfwrap.h"
 #else
   #include "wx/stream.h"
 #endif
 
--- /dev/null
+///////////////////////////////////////////////////////////////////////////////
+// Name:        wx/iosfwrap.h
+// Purpose:     includes the correct stream-related forward declarations
+// Author:      Jan van Dijk
+// Modified by:
+// Created:     18.12.2002
+// RCS-ID:      $Id$
+// Copyright:   (c) 2002 Jan van Dijk <jan@etpmod.phys.tue.nl>
+// Licence:     wxWindows license
+///////////////////////////////////////////////////////////////////////////////
+
+#if wxUSE_STD_IOSTREAM
+
+#if wxUSE_IOSTREAMH
+    // There is no pre-ANSI iosfwd header (?). We include the full decarations.
+#   include <iostream.h>
+#else
+#   include <iosfwd>
+#endif
+
+#endif
+  // wxUSE_STD_IOSTREAM
+
 
 ///////////////////////////////////////////////////////////////////////////////
-// Name:        ioswrap.h
+// Name:        wx/ioswrap.h
 // Purpose:     includes the correct iostream headers for current compiler
 // Author:      Vadim Zeitlin
 // Modified by:
 #if wxUSE_STD_IOSTREAM
 
 #if wxUSE_IOSTREAMH
-    // N.B. BC++ doesn't have istream.h, ostream.h
 #   include <iostream.h>
 #else
 #   include <iostream>
-#   if 0 // this is not needed any longer now that we have wxSTD
-#   if defined(__VISUALC__) || defined(__MWERKS__)
-        using namespace std;
-#   endif
-#endif // 0
 #endif
 
 #endif
 
     #define wxTraceOleCalls 0x0100  // OLE interface calls
 #endif
 
-#include "wx/ioswrap.h"
+#include "wx/iosfwrap.h"
 
 // ----------------------------------------------------------------------------
 // derive from this class to redirect (or suppress, or ...) log messages
 
 // ----------------------------------------------------------------------------
 
 // we use iostream for wxLongLong output
-#include "wx/ioswrap.h"
+#include "wx/iosfwrap.h"
 
 #if wxUSE_LONGLONG_NATIVE
 
 
 class WXDLLEXPORT wxHashTable;
 class WXDLLEXPORT wxObjectRefData;
 
-#if wxUSE_STD_IOSTREAM && (defined(__WXDEBUG__) || wxUSE_DEBUG_CONTEXT)
-    #include "wx/ioswrap.h"
-#endif
-
-
 // ----------------------------------------------------------------------------
 // wxClassInfo
 // ----------------------------------------------------------------------------
 
 #endif  // __WXDEBUG__
 
-
-// for some reason Borland seems to need this include.
-#if wxUSE_STD_IOSTREAM                                \
-    && (defined(__WXDEBUG__) || wxUSE_DEBUG_CONTEXT)  \
-    && defined(__BORLANDC__)
-    #if wxUSE_IOSTREAMH
-        #include <iostream.h>
-    #else
-        #include <iostream>
-    #endif
-#endif // wxUSE_IOSTREAMH
-
 // ----------------------------------------------------------------------------
 // set up memory debugging macros
 // ----------------------------------------------------------------------------
 
 #endif // WXDEBUG && wxUSE_MEMORY_TRACING
 
+#if wxUSE_STD_IOSTREAM && (defined(__WXDEBUG__) || wxUSE_DEBUG_CONTEXT)
+// needed by wxObject::Dump
+#include "wx/iosfwrap.h"
+#endif
 
 // ----------------------------------------------------------------------------
 // wxObject: the root class of wxWindows object hierarchy
 
 
 #if defined(wxSTD_STRING_COMPATIBILITY) && wxUSE_STD_IOSTREAM
 
-#include "wx/ioswrap.h"
+#include "wx/iosfwrap.h"
 
 WXDLLEXPORT wxSTD istream& operator>>(wxSTD istream&, wxString&);
 WXDLLEXPORT wxSTD ostream& operator<<(wxSTD ostream&, const wxString&);
 
 
 #ifndef NO_TEXT_WINDOW_STREAM
     #if wxUSE_STD_IOSTREAM
-        #include "wx/ioswrap.h"    // for iostream classes if we need them
+        #include "wx/ioswrap.h"    // derivation: we need the full decls.
     #else // !wxUSE_STD_IOSTREAM
         // can't compile this feature in if we don't use streams at all
         #define NO_TEXT_WINDOW_STREAM
 
     #include "wx/db.h"  // will #include sqltypes.h
 #endif //ODBC
 
-#include "wx/ioswrap.h"
+#include "wx/iosfwrap.h"
 
 /*
  * wxVariantData stores the actual data in a wxVariant object,
 
 // ----------------------------------------------------------------------------
 
 #if wxUSE_STD_IOSTREAM
+#include "wx/ioswrap.h"
 wxLogStream::wxLogStream(wxSTD ostream *ostr)
 {
     if ( ostr == NULL )