https://llvm.org/bugs/show_bug.cgi?id=24860
David Blaikie <dblai...@gmail.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED CC| |dblai...@gmail.com Resolution|--- |INVALID --- Comment #1 from David Blaikie <dblai...@gmail.com> --- This seems to be working as intended & doesn't seem to be related to std::map. Your emplace call is roughly equivalent to this construction of a std::pair: std::pair<int, Thing> p(0, std::string("hello")); which exhibits the same compilation error as your std::map::emplace call. The reason is that std::is_convertible<std::string, Thing>::value is false. This is because Thing is not copy or move constructible, which is curious, but technically the way that std::is_convertible is defined: "the predicate condition for a template specialization is_convertible<From, To> shall be satisfied if and only if the return expression in the following code would be well-formed, including any implicit conversions to the return type of the function: To test() { return create<From>(); }" -- You are receiving this mail because: You are on the CC list for the bug.
_______________________________________________ llvm-bugs mailing list llvm-bugs@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs