Преглед изворни кода

parent_of_member: Make sign conversion explicit in OffsetOfImpl()

Previously these conversions were implicit and causing quite a few
warnings on clang.
Lioncash пре 5 година
родитељ
комит
0aff3ba2ff
1 измењених фајлова са 2 додато и 1 уклоњено
  1. 2 1
      src/common/parent_of_member.h

+ 2 - 1
src/common/parent_of_member.h

@@ -109,7 +109,8 @@ struct OffsetOfCalculator {
             }
         }
 
-        return (next - start) * sizeof(MemberType) + Offset;
+        return static_cast<ptrdiff_t>(static_cast<size_t>(next - start) * sizeof(MemberType) +
+                                      Offset);
     }
 
     static constexpr std::ptrdiff_t OffsetOf(MemberType ParentType::*member) {