summary refs log tree commit diff
path: root/gnu/packages/patches/blender-2.79-gcc8.patch
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/packages/patches/blender-2.79-gcc8.patch')
-rw-r--r--gnu/packages/patches/blender-2.79-gcc8.patch36
1 files changed, 36 insertions, 0 deletions
diff --git a/gnu/packages/patches/blender-2.79-gcc8.patch b/gnu/packages/patches/blender-2.79-gcc8.patch
new file mode 100644
index 0000000000..6a9186323b
--- /dev/null
+++ b/gnu/packages/patches/blender-2.79-gcc8.patch
@@ -0,0 +1,36 @@
+diff --git a/intern/itasc/kdl/tree.hpp b/intern/itasc/kdl/tree.hpp
+index c8a253fc901..bd35f82d185 100644
+--- a/intern/itasc/kdl/tree.hpp
++++ b/intern/itasc/kdl/tree.hpp
+@@ -34,7 +34,7 @@ namespace KDL
+     //Forward declaration
+     class TreeElement;
+     // Eigen allocator is needed for alignment of Eigen data types
+-    typedef std::map<std::string,TreeElement, std::less<std::string>, Eigen::aligned_allocator<std::pair<std::string, TreeElement> > > SegmentMap;
++    typedef std::map<std::string,TreeElement, std::less<std::string>, Eigen::aligned_allocator<std::pair<const std::string, TreeElement> > > SegmentMap;
+ 
+     class TreeElement
+     {
+diff --git a/intern/cycles/util/util_sseb.h b/intern/cycles/util/util_sseb.h
+index 6e669701f3b..977976c3fc0 100644
+--- a/intern/cycles/util/util_sseb.h
++++ b/intern/cycles/util/util_sseb.h
+@@ -22,6 +22,9 @@ CCL_NAMESPACE_BEGIN
+ 
+ #ifdef __KERNEL_SSE2__
+ 
++struct ssei;
++struct ssef;
++
+ /*! 4-wide SSE bool type. */
+ struct sseb
+ {
+@@ -116,7 +119,7 @@ __forceinline const sseb unpacklo( const sseb& a, const sseb& b ) { return _mm_u
+ __forceinline const sseb unpackhi( const sseb& a, const sseb& b ) { return _mm_unpackhi_ps(a, b); }
+ 
+ template<size_t i0, size_t i1, size_t i2, size_t i3> __forceinline const sseb shuffle( const sseb& a ) {
+-	return _mm_shuffle_epi32(a, _MM_SHUFFLE(i3, i2, i1, i0));
++	return _mm_castsi128_ps(_mm_shuffle_epi32(a, _MM_SHUFFLE(i3, i2, i1, i0)));
+ }
+ 
+ template<> __forceinline const sseb shuffle<0, 1, 0, 1>( const sseb& a ) {