diff --git a/Eigen/src/Core/Block.h b/Eigen/src/Core/Block.h index 6c16e6596..3866d2912 100644 --- a/Eigen/src/Core/Block.h +++ b/Eigen/src/Core/Block.h @@ -71,12 +71,12 @@ struct ei_traits::MaxRowsAtCompileTime : BlockRows), + : (BlockRows==Dynamic ? int(ei_traits::MaxRowsAtCompileTime) : BlockRows), MaxColsAtCompileTime = ColsAtCompileTime == 1 ? 1 - : (BlockCols==Dynamic ? ei_traits::MaxColsAtCompileTime : BlockCols), + : (BlockCols==Dynamic ? int(ei_traits::MaxColsAtCompileTime) : BlockCols), RowMajor = int(ei_traits::Flags)&RowMajorBit, - InnerSize = RowMajor ? ColsAtCompileTime : RowsAtCompileTime, - InnerMaxSize = RowMajor ? MaxColsAtCompileTime : MaxRowsAtCompileTime, + InnerSize = RowMajor ? int(ColsAtCompileTime) : int(RowsAtCompileTime), + InnerMaxSize = RowMajor ? int(MaxColsAtCompileTime) : int(MaxRowsAtCompileTime), MaskPacketAccessBit = (InnerMaxSize == Dynamic || (InnerSize >= ei_packet_traits::size)) ? PacketAccessBit : 0, FlagsLinearAccessBit = (RowsAtCompileTime == 1 || ColsAtCompileTime == 1) ? LinearAccessBit : 0,