diff options
author | Dimitry Andric <dim@FreeBSD.org> | 2024-09-13 11:11:45 +0200 |
---|---|---|
committer | Dimitry Andric <dim@FreeBSD.org> | 2024-09-28 11:43:47 +0200 |
commit | 7955b1d7ec787bf13f2cfea75e9355a3f3e91a53 (patch) | |
tree | 0d02c2d980fcecc4eeb67046377b81728ea59aed /audio/libaudiofile/files/patch-gtest_gtest.h | |
parent | graphics/vigra: fix build with clang 19 (diff) |
audio/libaudiofile: fix build with clang 19, enable tests
Clang 19 has become more strict about initialization with undefined
behavior, resulting in errors similar to:
./SimpleModule.h:126:40: error: in-class initializer for static data member is not a constant expression
126 | static const int kMinSignedValue = -1 << kScaleBits;
| ~~~^~~~~~~~~~~~~
./SimpleModule.h:176:22: note: in instantiation of template class 'signConverter<kInt8>' requested here
176 | transform<typename signConverter<Format>::signedToUnsigned>(src, dst, count);
| ^
./SimpleModule.h:183:5: note: in instantiation of function template specialization 'ConvertSign::convertSignedToUnsigned<kInt8>' requested here
183 | convertSignedToUnsigned<kInt8>(src, dst, count);
| ^
This is because left-shifting negative values is undefined. Replace -1
with ~0u which results in the expected value.
While here, add a few other patches to remove warnings about undefined
left-shifts, and add support for the "make test" target.
PR: 281477
Approved by: maintainer timeout (2 weeks)
MFH: 2024Q3
Diffstat (limited to 'audio/libaudiofile/files/patch-gtest_gtest.h')
-rw-r--r-- | audio/libaudiofile/files/patch-gtest_gtest.h | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/audio/libaudiofile/files/patch-gtest_gtest.h b/audio/libaudiofile/files/patch-gtest_gtest.h new file mode 100644 index 000000000000..d5e97a6b529b --- /dev/null +++ b/audio/libaudiofile/files/patch-gtest_gtest.h @@ -0,0 +1,11 @@ +--- gtest/gtest.h.orig 2013-02-11 17:23:26 UTC ++++ gtest/gtest.h +@@ -529,7 +529,7 @@ + // feature depending on tuple with be disabled in this mode). + #ifndef GTEST_HAS_TR1_TUPLE + // The user didn't tell us not to do it, so we assume it's OK. +-# define GTEST_HAS_TR1_TUPLE 1 ++# define GTEST_HAS_TR1_TUPLE 0 + #endif // GTEST_HAS_TR1_TUPLE + + // Determines whether Google Test's own tr1 tuple implementation |