// { dg-additional-options -fmodule-header } // { dg-module-cmi {} } template class istreambuf_iterator; void move(char __t); void move(istreambuf_iterator &__u); template struct allocator {}; template struct __alloc_traits { static void _S_on_swap(_Alloc& __b) { move (__b); } typedef allocator other; }; template class basic_string { typedef __alloc_traits::other _Char_alloc_type; }; template class istreambuf_iterator { void frob (const basic_string& __s); };