mirror of
https://gitlab.com/libeigen/eigen.git
synced 2025-04-30 15:54:13 +08:00
bug fix, since the last storage order changes, this InnerSize calculation was wrong
This commit is contained in:
parent
5250c4395c
commit
1c04484a01
@ -81,8 +81,7 @@ struct ei_traits<Block<XprType, BlockRows, BlockCols, HasDirectAccess> > : ei_tr
|
|||||||
: (MaxColsAtCompileTime==1&&MaxRowsAtCompileTime!=1) ? 0
|
: (MaxColsAtCompileTime==1&&MaxRowsAtCompileTime!=1) ? 0
|
||||||
: XprTypeIsRowMajor,
|
: XprTypeIsRowMajor,
|
||||||
HasSameStorageOrderAsXprType = (IsRowMajor == XprTypeIsRowMajor),
|
HasSameStorageOrderAsXprType = (IsRowMajor == XprTypeIsRowMajor),
|
||||||
InnerSize = XprTypeIsRowMajor // notice how it's XprTypeIsRowMajor here, not IsRowMajor. Inner size is computed wrt the host matrix's storage order.
|
InnerSize = IsRowMajor ? int(ColsAtCompileTime) : int(RowsAtCompileTime),
|
||||||
? int(ColsAtCompileTime) : int(RowsAtCompileTime),
|
|
||||||
InnerStrideAtCompileTime = HasSameStorageOrderAsXprType
|
InnerStrideAtCompileTime = HasSameStorageOrderAsXprType
|
||||||
? int(ei_inner_stride_at_compile_time<XprType>::ret)
|
? int(ei_inner_stride_at_compile_time<XprType>::ret)
|
||||||
: int(ei_outer_stride_at_compile_time<XprType>::ret),
|
: int(ei_outer_stride_at_compile_time<XprType>::ret),
|
||||||
|
Loading…
x
Reference in New Issue
Block a user