--- OpenShadingLanguage-Release-1.10.6/src/liboslexec/pointcloud.cpp.orig	2019-07-31 23:15:48.917595100 +0300
+++ OpenShadingLanguage-Release-1.10.6/src/liboslexec/pointcloud.cpp	2019-07-31 23:16:06.701626300 +0300
@@ -244,8 +244,8 @@
             return 0;   // No "position" attribute -- fail
     }
 
-    static_assert (sizeof(size_t) == sizeof(Partio::ParticleIndex),
-                   "Partio ParticleIndex should be the size of a size_t");
+    // static_assert (sizeof(size_t) == sizeof(Partio::ParticleIndex),
+    //         "Only will work if Partio ParticleIndex is the size of a size_t");
     // FIXME -- if anybody cares about an architecture in which that is not
     // the case, we can easily allocate local space to retrieve the indices,
     // then copy them back to the caller's indices.
@@ -362,8 +362,8 @@
         count = maxn;
     }
 
-    static_assert (sizeof(size_t) == sizeof(Partio::ParticleIndex),
-                   "Partio ParticleIndex should be the size of a size_t");
+    // static_assert (sizeof(size_t) == sizeof(Partio::ParticleIndex),
+    //                "Partio ParticleIndex should be the size of a size_t");
     // FIXME -- if anybody cares about an architecture in which that is not
     // the case, we can easily allocate local space to retrieve the indices,
     // then copy them back to the caller's indices.
