[serialize] Fix copy() calling operator=
authorBehdad Esfahbod <behdad@behdad.org>
Mon, 17 Jun 2019 21:23:04 +0000 (14:23 -0700)
committerBehdad Esfahbod <behdad@behdad.org>
Mon, 17 Jun 2019 21:23:04 +0000 (14:23 -0700)
https://github.com/googlefonts/harfbuzz/commit/9f610ae239a11e86f94621e26bc15849b65ce41b#commitcomment-33944686

src/hb-serialize.hh

index 76f7016..5764a90 100644 (file)
@@ -375,7 +375,7 @@ struct hb_serialize_context_t
   (Type *, src.copy (this, hb_forward<Ts> (ds)...))
 
   template <typename Type> auto
-  _copy (const Type &src, hb_priority<0>) -> decltype (&(src = src))
+  _copy (const Type &src, hb_priority<0>) -> decltype (&(hb_declval<Type> () = src))
   {
     Type *ret = this->allocate_size<Type> (sizeof (Type));
     if (unlikely (!ret)) return nullptr;