More adjustment to OffsetTo<>::friend opeator+

Let's see if I break any bots.  But yeah, it wasn't accepting a
non-const pointer.  It just happens that we don't use that in the
code it seems.
diff --git a/src/hb-open-type.hh b/src/hb-open-type.hh
index ec7b5db..ee2723a 100644
--- a/src/hb-open-type.hh
+++ b/src/hb-open-type.hh
@@ -279,10 +279,12 @@
     return StructAtOffset<Type> (base, *this);
   }
 
-  template <typename Base>
-  friend const Type& operator + (const Base &base, const OffsetTo &offset) { return offset (base); }
-  template <typename Base>
-  friend Type& operator + (Base &base, OffsetTo &offset) { return offset (base); }
+  template <typename Base,
+	    hb_enable_if (hb_is_convertible (const Base, const void *))>
+  friend const Type& operator + (const Base &base, const OffsetTo &offset) { return offset ((const void *) base); }
+  template <typename Base,
+	    hb_enable_if (hb_is_convertible (Base, void *))>
+  friend Type& operator + (Base &&base, OffsetTo &offset) { return offset ((void *) base); }
 
   Type& serialize (hb_serialize_context_t *c, const void *base)
   {