Visual studio 11 (beta) uses the new C++11 standard, which seems to break protobuf. Where I’m stuck at the moment is the way that the C++11 standard defines make_pair. The problem is defined well in this StackOverflow posting and is defined as by design by Microsoft.
I’m trying to compile a “small, but complex” project using Visual Studio 2011 Beta that includes protobuf. Is there a way to get this to work with VS11 (patch, compiler setting, …), or do I have to “downgrade” to VS2010?
That’s issue 379. The report suggests a workaround to replace
make_pair<string, string>withpair<string, string>at the two problem locations in command_line_interface.cc.A tempting solution is to remove the template arguments entirely since they’re not needed. However, that would cause a regression of issue 166, which prompted the addition of the template arguments to work around a problem with Sun compilers.