To whom it may concern
The explicit instantiations of the template classes std::basic_string for char and wchar_t, std::allocator for char and wchar_t, string buffer, std::basic_ostringstream etc. seem to be missing. They seem to no longer be exported from the VC 10 runtime libraries. In VC9, these were exported from the runtime libraries and thus allowed custom classes with these types as members to be exported from dlls.
In general, documentation in this regard all points to:
This article (probably out of date) explicitly lists the char and wchar_t instantiations of the template std::basic_string as being exported from the runtime libraries (in addition to others that are missing).
- If this is intentional, why have the exports been removed?
- Please support the exports as in previous versions of the runtimes?
Please find attached VC9 and VC10 samples, the VC9 compiles, the VC10 issues warnings and errors.
We have code based on the exportability of std::string that no longer compiles as required.