I've hit some problems with a build that I'm hoping this community can help with.
/----------------------------------------------------------------------------------------------------------------------------------------------
/scratch/RDKit_git/Code/RDGeneral > /usr/local/src/emscripten/em++ -o blah.obj -c blah.cpp
In file included from blah.cpp:1:
In file included from /usr/local/src/emscripten/system/include/libcxx/map:371:
In file included from /usr/local/src/emscripten/system/include/libcxx/__tree:16:
In file included from /usr/local/src/emscripten/system/include/libcxx/memory:594:
/usr/local/src/emscripten/system/include/libcxx/utility:255:15: error: no viable overloaded '='
first = __p.first;
~~~~~ ^ ~~~~~~~~~
/usr/local/src/emscripten/system/include/libcxx/__tree:1246:35: note: in instantiation of member function
'std::__1::pair<const std::__1::basic_string<char>, int>::operator=' requested here
__cache->__value_ = *__first;
^
/usr/local/src/emscripten/system/include/libcxx/__tree:1187:9: note: in instantiation of function template
specialization 'std::__1::__tree<std::__1::pair<const std::__1::basic_string<char>, int>,
std::__1::__map_value_compare<const std::__1::basic_string<char>, int, std::__1::less<const
std::__1::basic_string<char> >, true>, std::__1::allocator<std::__1::pair<const
std::__1::basic_string<char>, int> >
>::__assign_multi<std::__1::__tree_const_iterator<std::__1::pair<const std::__1::basic_string<char>,
int>, const std::__1::__tree_node<std::__1::pair<const std::__1::basic_string<char>, int>, void *> *,
int> >' requested here
__assign_multi(__t.begin(), __t.end());
^
/usr/local/src/emscripten/system/include/libcxx/map:766:21: note: in instantiation of member function
'std::__1::__tree<std::__1::pair<const std::__1::basic_string<char>, int>,
std::__1::__map_value_compare<const std::__1::basic_string<char>, int, std::__1::less<const
std::__1::basic_string<char> >, true>, std::__1::allocator<std::__1::pair<const
std::__1::basic_string<char>, int> > >::operator=' requested here
__tree_ = __m.__tree_;
^
blah.cpp:8:11: note: in instantiation of member function 'std::__1::map<const std::__1::basic_string<char>,
int, std::__1::less<const std::__1::basic_string<char> >, std::__1::allocator<std::__1::pair<const
std::__1::basic_string<char>, int> > >::operator=' requested here
_data = other._data;
^
/usr/local/src/emscripten/system/include/libcxx/string:1174:19: note: candidate function not viable: 'this'
argument has type 'const std::__1::basic_string<char>', but method is not marked const
basic_string& operator=(const basic_string& __str);
^
/usr/local/src/emscripten/system/include/libcxx/string:1181:45: note: candidate function not viable: 'this'
argument has type 'const std::__1::basic_string<char>', but method is not marked const
_LIBCPP_INLINE_VISIBILITY basic_string& operator=(const_pointer __s) {return assign(__s);}
^
/usr/local/src/emscripten/system/include/libcxx/string:1182:19: note: candidate function not viable: 'this'
argument has type 'const std::__1::basic_string<char>', but method is not marked const
basic_string& operator=(value_type __c);
^
1 error generated.
ERROR root: compiler frontend failed to generate LLVM bitcode, halting
/scratch/RDKit_git/Code/RDGeneral > /usr/local/bin/clang++ -o blah.obj -c blah.cpp
allows emscripten to build the code, but I'm pretty sure that this shouldn't be necessary.
I did a git pull this morning for emscripten and am using clang++ v3.2 on a 64-bit ubuntu 12.04 system.