boostorg / boostorg/python

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

Đang mở
#384 4 bình luận 3 reaction 0 người được giao Xem trên GitHub
Ngôn ngữ chính
C++
Star
537
Fork
223
Merge trung bình
11 giờ 22 phút
Pull request đã merge (30 ngày)
2

Mô tả

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!

Hướng dẫn đóng góp

Chưa lập chỉ mục được hướng dẫn đóng góp cho kho mã nguồn này

Đánh giá

Issue này chưa được đánh giá.

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.