A simple #include <iosfwd> results in 14k lines being included,
including windows.h, winbase.h etc resulting in increased
compile times.
On a posix system including cygwin, this
only includes less than 1.2k lines.
Shouldn't really be
necessary to include that much.
C:\&gt;type
ios.cpp
#include <iosfwd>
C:\&gt;g++ -E ios.cpp | wc
14723 41226 655727
C:\&gt;g++ -M ios.cpp
ios.o:
ios.cpp D:/USER/MINGW/include/c++/3.2/iosfwd \
D:/USER/MINGW/include/c++/3.2/mingw32/bits/c++config.h
\
D:/USER/MINGW/include/c++/3.2/mingw32/bits/os_defines.h
\
D:/USER/MINGW/include/c++/3.2/bits/stringfwd.h \
D:/USER/MINGW/include/c++/3.2/bits/fpos.h \
D:/USER/MINGW/include/c++/3.2/mingw32/bits/c++io.h
\
D:/USER/MINGW/include/c++/3.2/cstdio \
D:/USER/MINGW/include/c++/3.2/cstddef
D:/USER/MINGW/include/stddef.h \
D:/USER/MINGW/lib/gcc-lib/mingw32/3.2/include/stddef.h
\
D:/USER/MINGW/include/stdio.h
D:/USER/MINGW/include/_mingw.h \
D:/USER/MINGW/include/stdarg.h \
D:/USER/MINGW/lib/gcc-lib/mingw32/3.2/include/stdarg.h
\
D:/USER/MINGW/include/c++/3.2/mingw32/bits/gthr.h
\
D:/USER/MINGW/include/c++/3.2/mingw32/bits/gthr-
default.h \
D:/USER/MINGW/include/errno.h
D:/USER/MINGW/include/windows.h \
D:/USER/MINGW/include/windef.h
D:/USER/MINGW/include/winnt.h \
D:/USER/MINGW/include/winerror.h
D:/USER/MINGW/include/string.h \
D:/USER/MINGW/include/basetsd.h
D:/USER/MINGW/include/wincon.h \
D:/USER/MINGW/include/basetyps.h
D:/USER/MINGW/include/winbase.h \
D:/USER/MINGW/include/wingdi.h
D:/USER/MINGW/include/winuser.h \
D:/USER/MINGW/include/winnls.h
D:/USER/MINGW/include/winver.h \
D:/USER/MINGW/include/winnetwk.h
D:/USER/MINGW/include/winreg.h \
D:/USER/MINGW/include/winsvc.h
D:/USER/MINGW/include/commdlg.h \
D:/USER/MINGW/include/cderr.h
D:/USER/MINGW/include/dde.h \
D:/USER/MINGW/include/ddeml.h
D:/USER/MINGW/include/dlgs.h \
D:/USER/MINGW/include/imm.h
D:/USER/MINGW/include/lzexpand.h \
D:/USER/MINGW/include/mmsystem.h
D:/USER/MINGW/include/nb30.h \
D:/USER/MINGW/include/rpc.h
D:/USER/MINGW/include/rpcdce.h \
D:/USER/MINGW/include/rpcdcep.h
D:/USER/MINGW/include/rpcnsi.h \
D:/USER/MINGW/include/rpcnterr.h
D:/USER/MINGW/include/shellapi.h \
D:/USER/MINGW/include/winperf.h
D:/USER/MINGW/include/winspool.h \
D:/USER/MINGW/include/winsock2.h
D:/USER/MINGW/include/ole2.h \
D:/USER/MINGW/include/objbase.h
D:/USER/MINGW/include/rpcndr.h \
D:/USER/MINGW/include/rpcnsip.h
D:/USER/MINGW/include/objfwd.h \
D:/USER/MINGW/include/stdlib.h
D:/USER/MINGW/include/wtypes.h \
D:/USER/MINGW/include/unknwn.h
D:/USER/MINGW/include/objidl.h \
D:/USER/MINGW/include/cguid.h
D:/USER/MINGW/include/olectlid.h \
D:/USER/MINGW/include/oleauto.h
D:/USER/MINGW/include/oaidl.h \
D:/USER/MINGW/include/oleidl.h
D:/USER/MINGW/include/c++/3.2/cwchar \
D:/USER/MINGW/include/c++/3.2/ctime
D:/USER/MINGW/include/time.h \
D:/USER/MINGW/include/sys/types.h
D:/USER/MINGW/include/wchar.h \
D:/USER/MINGW/include/ctype.h \
D:/USER/MINGW/include/c++/3.2/bits/functexcept.h \
D:/USER/MINGW/include/c++/3.2/exception_defines.h
C:\&gt;g++
--version
g++ (GCC) 3.2 (mingw special 20020817-
1)
Copyright (C) 2002 Free Software Foundation, Inc.
Logged In: YES
user_id=15438
Try the gcc-3.2.1 release candidate. This problem should be
fixed.
Earnie.
Diff: