src/hb-machinery.hh | 2 +- src/hb-ot-cmap-table.hh | 3 ++- src/hb-set.hh | 4 ++-- src/hb-subset.cc | 2 +- src/hb-vector.hh | 4 ++-- 5 files changed, 8 insertions(+), 7 deletions(-)
New commits: commit 861bc75349257f74c12b261abfcd5ab9e2f04863 Author: Behdad Esfahbod <[email protected]> Date: Thu Nov 29 14:34:44 2018 -0500 [vector] Make pointer cast explicit Too bad this doesn't help MSVC 2008 build, as explicit operators are C++11. diff --git a/src/hb-machinery.hh b/src/hb-machinery.hh index 39e96293..5f3d153e 100644 --- a/src/hb-machinery.hh +++ b/src/hb-machinery.hh @@ -658,7 +658,7 @@ struct Supplier } inline Supplier (const hb_vector_t<Type> *v) { - head = *v; + head = (const Type *) *v; len = v->len; stride = sizeof (Type); } diff --git a/src/hb-ot-cmap-table.hh b/src/hb-ot-cmap-table.hh index cdc610be..a2e611c9 100644 --- a/src/hb-ot-cmap-table.hh +++ b/src/hb-ot-cmap-table.hh @@ -495,7 +495,8 @@ struct CmapSubtableLongSegmented { TRACE_SERIALIZE (this); if (unlikely (!c->extend_min (*this))) return_trace (false); - Supplier<CmapSubtableLongGroup> supplier (group_data, group_data.len); + Supplier<CmapSubtableLongGroup> supplier ((const OT::CmapSubtableLongGroup*) group_data, + group_data.len); if (unlikely (!groups.serialize (c, supplier, group_data.len))) return_trace (false); return true; } diff --git a/src/hb-set.hh b/src/hb-set.hh index 100bdb2a..a3beeef1 100644 --- a/src/hb-set.hh +++ b/src/hb-set.hh @@ -375,8 +375,8 @@ struct hb_set_t if (!resize (count)) return; population = other->population; - memcpy (pages, other->pages, count * pages.item_size); - memcpy (page_map, other->page_map, count * page_map.item_size); + memcpy ((void *) pages, (const void *) other->pages, count * pages.item_size); + memcpy ((void *) page_map, (const void *) other->page_map, count * page_map.item_size); } inline bool is_equal (const hb_set_t *other) const diff --git a/src/hb-subset.cc b/src/hb-subset.cc index a3917b86..14d4774c 100644 --- a/src/hb-subset.cc +++ b/src/hb-subset.cc @@ -77,7 +77,7 @@ _subset2 (hb_subset_plan_t *plan) return false; } retry: - hb_serialize_context_t serializer (buf, buf_size); + hb_serialize_context_t serializer ((void *) buf, buf_size); hb_subset_context_t c (plan, &serializer); result = table->subset (&c); if (serializer.ran_out_of_room) diff --git a/src/hb-vector.hh b/src/hb-vector.hh index 787512f9..313c24c4 100644 --- a/src/hb-vector.hh +++ b/src/hb-vector.hh @@ -101,8 +101,8 @@ struct hb_vector_t inline hb_sorted_array_t<const Type> as_sorted_array (void) const { return hb_sorted_array (arrayZ(), len); } - template <typename T> inline operator T * (void) { return arrayZ(); } - template <typename T> inline operator const T * (void) const { return arrayZ(); } + template <typename T> explicit_operator inline operator T * (void) { return arrayZ(); } + template <typename T> explicit_operator inline operator const T * (void) const { return arrayZ(); } inline Type * operator + (unsigned int i) { return arrayZ() + i; } inline const Type * operator + (unsigned int i) const { return arrayZ() + i; } _______________________________________________ HarfBuzz mailing list [email protected] https://lists.freedesktop.org/mailman/listinfo/harfbuzz
