[Bf-blender-cvs] [114150e80c4] master: Fix compilation error with -Werror=array-bounds

Jacques Lucke noreply at git.blender.org
Tue Sep 1 11:11:47 CEST 2020


Commit: 114150e80c43eb2f3e7e0f70ec6e25e29cf28984
Author: Jacques Lucke
Date:   Tue Sep 1 11:11:12 2020 +0200
Branches: master
https://developer.blender.org/rB114150e80c43eb2f3e7e0f70ec6e25e29cf28984

Fix compilation error with -Werror=array-bounds

This error happened only with O2 or O3 in my tests.
Casting to uintptr_t and back seems to quiet the compiler.

===================================================================

M	source/blender/blenlib/tests/BLI_span_test.cc

===================================================================

diff --git a/source/blender/blenlib/tests/BLI_span_test.cc b/source/blender/blenlib/tests/BLI_span_test.cc
index 82d21e53084..9a8d9df7873 100644
--- a/source/blender/blenlib/tests/BLI_span_test.cc
+++ b/source/blender/blenlib/tests/BLI_span_test.cc
@@ -237,7 +237,8 @@ TEST(span, ContainsPtr)
   EXPECT_TRUE(a_span.contains_ptr(&a[0] + 1));
   EXPECT_TRUE(a_span.contains_ptr(&a[0] + 2));
   EXPECT_FALSE(a_span.contains_ptr(&a[0] + 3));
-  EXPECT_FALSE(a_span.contains_ptr(&a[0] - 1));
+  int *ptr_before = reinterpret_cast<int *>(reinterpret_cast<uintptr_t>(a.data()) - 1);
+  EXPECT_FALSE(a_span.contains_ptr(ptr_before));
   EXPECT_FALSE(a_span.contains_ptr(&other));
 }



More information about the Bf-blender-cvs mailing list