[ https://issues.apache.org/jira/browse/STDCXX-152?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Martin Sebor updated STDCXX-152: -------------------------------- Affects Version/s: 4.1.4 Fix Version/s: 4.3 Added 4.1.4 to the affected versions and scheduled for 4.3 (although it might need to be deferred until 5.0 if it breaks binary compatibility). > error instantiating std::map on an incomplete type > -------------------------------------------------- > > Key: STDCXX-152 > URL: https://issues.apache.org/jira/browse/STDCXX-152 > Project: C++ Standard Library > Issue Type: Improvement > Components: 23. Containers > Affects Versions: 4.1.2, 4.1.3, 4.1.4 > Environment: all > Reporter: Martin Sebor > Fix For: 4.3 > > > From > http://mail-archives.apache.org/mod_mbox/incubator-stdcxx-user/200602.mbox/[EMAIL > PROTECTED]: > I am trying to use Boost built using stdcxx on Solaris. I was able to build > the date_time > library but when I try to compile a test program I end up with errors related > to incomplete > types. I have narrowed the issue to the following code > > #include <map> > #include <string> > using namespace std; > template <class T> > struct C { > typedef multimap<T,C> maps; > typedef typename maps::value_type value_type; > }; > > int main () { > C<std::string> c; > } > When I compile using the default Sun CC libraries or rwtools7_std or > stlport4, the code > compiles fine. But when I compile using stdcxx, I end up with the following > errors. > > "/opt/idev3/dbapatla/apache-stdcxx-4.1.3/include/rw/_pair.h", line 55: > Error: In this declaration > "second" is of an incomplete type "C<std::string>". > "/opt/idev3/dbapatla/apache-stdcxx-4.1.3/include/rw/_tree.h", line 86: > Where: While specializing > "std::pair<const std::string, C<std::string>>". > "/opt/idev3/dbapatla/apache-stdcxx-4.1.3/include/rw/_tree.h", line 86: > Where: Specialized > in __rw::__rw_rb_tree_node<std::allocator<std::pair<const std::string, > C<std::string>>>, > std::pair<const std::string, C<std::string>>, std::string, > __rw::__select1st<std::pair<const > std::string, C<std::string>>, std::string>>. > "/opt/idev3/dbapatla/apache-stdcxx-4.1.3/include/rw/_tree.h", line 259: > Where: Specialized > in __rw::__rb_tree<std::string, std::pair<const std::string, C<std::string>>, > __rw::__select1st<std::pair<const std::string, C<std::string>>, std::string>, > std::less<std::string>, std::allocator<std::pair<const std::string, > C<std::string>>>>. > "/opt/idev3/dbapatla/apache-stdcxx-4.1.3/include/map", line 323: Where: > Specialized in > std::multimap<std::string, C<std::string>, std::less<std::string>, > std::allocator<std::pair<const > std::string, C<std::string>>>>. > "test2.cpp", line 9: Where: Specialized in C<std::string>. > "test2.cpp", line 13: Where: Specialized in non-template code. > 1 Error(s) detected. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.