diff options
| -rw-r--r-- | src/common/parent_of_member.h | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/common/parent_of_member.h b/src/common/parent_of_member.h index e0f8ab5c8..58c70b0e7 100644 --- a/src/common/parent_of_member.h +++ b/src/common/parent_of_member.h | |||
| @@ -109,7 +109,8 @@ struct OffsetOfCalculator { | |||
| 109 | } | 109 | } |
| 110 | } | 110 | } |
| 111 | 111 | ||
| 112 | return (next - start) * sizeof(MemberType) + Offset; | 112 | return static_cast<ptrdiff_t>(static_cast<size_t>(next - start) * sizeof(MemberType) + |
| 113 | Offset); | ||
| 113 | } | 114 | } |
| 114 | 115 | ||
| 115 | static constexpr std::ptrdiff_t OffsetOf(MemberType ParentType::*member) { | 116 | static constexpr std::ptrdiff_t OffsetOf(MemberType ParentType::*member) { |