boostorg / boostorg/python

Assertion `(char *) aligned_storage + holder_size <= (char *)base_storage + base_allocation' failed.

Offen
#384 4 Kommentare 3 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

Hi,

Many thanks for the great library!

We just migrated to boost 1.78 and start getting:
```
python3: libs/python/src/object/class.cpp:762: static void* boost::python::instance_holder::allocate(PyObject*, std::size_t, std::size_t, std::size_t): Assertion `(char *) aligned_storage + holder_size <= (char *)base_storage + base_allocation' failed.
```
on arm platform. On x64 everything works perfect.

I took a look into boost::python::instance_holder::allocate with debugger and see:
```
sizeof(alignment_marker_t) == 4
alignment == 4
holder_size == 16
```
so assertion is correct.

I'm a bit confused, why we need -1 at https://github.com/boostorg/python/blame/develop/src/object/class.cpp#L750?

Looking forward for your answer!

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.