boostorg / boostorg/python

map_indexing_suite doesn't work with std::unordered_map<std::string, std::vector<double>> for MSVC 14.2

Offen
#289 1 Kommentar 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen
Vorherrschende Sprache
C++
Sterne
537
Forks
223
Ø Merge
11 Std. 22 Min.
Gemergte PRs (30 T.)
2

Beschreibung

This works on MSVC 14.1 (Visual Studio 17):

#define BOOST_PYTHON_STATIC_LIB

#include
#include
#include
#include
#include
#include

BOOST_PYTHON_MODULE(HelloBoostPython)
{
using namespace boost::python;

class_>("DoubleVector")
.def(vector_indexing_suite>())
;

class_>("StringVecMap")
.def(map_indexing_suite>>())
;
}

But fails when building against the v142 (VS 19) Platform Toolset:

Severity Code Description Project File Line Suppression State
Error C2039 'key_comp': is not a member of 'std::unordered_map>,std::hash,std::equal_to,std::allocator>>>>' HelloBoostPython C:\Misc\boost_1_71_0\boost\python\suite\indexing\map_indexing_suite.hpp 155

Change `std::unordered_map` to `std::map` and it works.

Change `std::unordered_map>` to `std::unordered_map>` and it works.

Beitragsleitfaden

Für dieses Repository ist kein Beitragsleitfaden indexiert

Bewertung

Dieses Issue wurde noch nicht bewertet.

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.