This is GCC Bugzilla
This is GCC Bugzilla Version 2.20+
View Bug Activity | Format For Printing | Clone This Bug
On Cygwin (1.5.5) and using g++ 3.3.1 ("g++ (GCC) 3.3.1 (cygming special)") Using the 3 files below, $ cat AA1.h #pragma interface #include "AA2.h" class AA1 { public: void g(){ std::ostringstream os; } }; $ cat AA2.h #pragma interface #include <sstream> #include <iostream> class AA2 { public: void f(std::ostringstream os) { os.str(); } }; $ cat BB.cpp #include "AA1.h" #pragma implementation "AA1.h" #pragma implementation "AA2.h" int myi; A compilation results in two bogus undefined symbols. $ g++ -c BB.cpp ; nm BB.o | grep ' U' U __GLOBAL__D_myi U __GLOBAL__I_myi It works flawlessly under Linux. This snippet comes from compiling ddd under cygwin. Similar problems have been reported. See: http://www.cygwin.com/ml/cygwin/2003-11/msg01066.html
This is a dup of bug 9941. *** This bug has been marked as a duplicate of 9941 ***