[ntuple] Fixes for alignment#22312
Conversation
bb61c3d to
694bd02
Compare
27ddc85 to
ba94832
Compare
Test Results 22 files 22 suites 3d 14h 33m 49s ⏱️ For more details on these failures, see this check. Results for commit 39576f7. ♻️ This comment has been updated with latest results. |
hahnjo
left a comment
There was a problem hiding this comment.
The code changes look good overall; quickly looking at the failures, it appears that macOS and Windows are complaining about the missing import of <array>. Not sure if that solves all issues...
hahnjo
left a comment
There was a problem hiding this comment.
As discussed offline, this is missing the part of aligning the dynamic array in std::vector<T> (relatively easy to do) and RVec<T> (harder because it currently uses malloc and free). In the worst case, we discussed throwing in case we have alignment larger than std::max_align_t
787669e to
2c2dc4a
Compare
2c2dc4a to
aa8c36c
Compare
074d861 to
410b9d9
Compare
hahnjo
left a comment
There was a problem hiding this comment.
Looks good in principle. Windows is unhappy, which I think is because of aligned operator new in the header / just-in-time-compiled code. Maybe this can be solved by outlining the function?
410b9d9 to
2b8e789
Compare
2b8e789 to
39576f7
Compare
Use the new
TClassalignment information where applicable. This fixesAdditionally, use the
newanddeleteoperators with alignment info. This ensures correct memory allocation for over-aligned types.Fixes #16765