------- Comment #5 from jwakely dot gcc at gmail dot com 2009-08-10 19:39 ------- The definitions are in that header, but the 'extern template' extension is used to prevent the compiler from instantiating the code in your program, see http://gcc.gnu.org/onlinedocs/gcc/Template-Instantiation.html
Instead of instantiating that code in every object a single explicit instantiation is provided in libstdc++.so, that's the purpose of src/fstream-inst.cc -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=41005