summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSam James <sam@gentoo.org>2024-07-15 05:34:19 +0100
committerSam James <sam@gentoo.org>2024-07-15 05:34:19 +0100
commit68f0e9969e5761d580346c0788186dcf471e5a0c (patch)
tree32aa906ae8b395799865b2437a1c2fa4997d1771
parentdev-util/cppcheck: add 2.14.2 (diff)
downloadgentoo-68f0e9969e5761d580346c0788186dcf471e5a0c.tar.gz
gentoo-68f0e9969e5761d580346c0788186dcf471e5a0c.tar.bz2
gentoo-68f0e9969e5761d580346c0788186dcf471e5a0c.zip
dev-util/cppcheck: backport 32-bit test(-only) fix
Bug: https://bugs.gentoo.org/935368 Signed-off-by: Sam James <sam@gentoo.org>
-rw-r--r--dev-util/cppcheck/cppcheck-2.13.0.ebuild4
-rw-r--r--dev-util/cppcheck/files/cppcheck-2.13.0-32-bit-tests.patch28
2 files changed, 32 insertions, 0 deletions
diff --git a/dev-util/cppcheck/cppcheck-2.13.0.ebuild b/dev-util/cppcheck/cppcheck-2.13.0.ebuild
index 71c678e92cc5..949840795040 100644
--- a/dev-util/cppcheck/cppcheck-2.13.0.ebuild
+++ b/dev-util/cppcheck/cppcheck-2.13.0.ebuild
@@ -75,6 +75,10 @@ BDEPEND="
)
"
+PATCHES=(
+ "${FILESDIR}"/${PN}-2.13.0-32-bit-tests.patch
+)
+
src_prepare() {
cmake_src_prepare
diff --git a/dev-util/cppcheck/files/cppcheck-2.13.0-32-bit-tests.patch b/dev-util/cppcheck/files/cppcheck-2.13.0-32-bit-tests.patch
new file mode 100644
index 000000000000..a31a014f5968
--- /dev/null
+++ b/dev-util/cppcheck/files/cppcheck-2.13.0-32-bit-tests.patch
@@ -0,0 +1,28 @@
+https://bugs.gentoo.org/935368
+https://github.com/danmar/cppcheck/commit/9118d330d387e73a20e1bc46c65387306afa0895
+
+From 9118d330d387e73a20e1bc46c65387306afa0895 Mon Sep 17 00:00:00 2001
+From: chrchr-github <78114321+chrchr-github@users.noreply.github.com>
+Date: Sat, 23 Dec 2023 20:59:59 +0100
+Subject: [PATCH] Fix test failure on 32bit platform (#5803)
+
+--- a/test/testother.cpp
++++ b/test/testother.cpp
+@@ -2173,6 +2173,7 @@ class TestOther : public TestFixture {
+ "}\n");
+ ASSERT_EQUALS("[test.cpp:1]: (performance) Function parameter 't' should be passed by const reference.\n", errout.str());
+
++ Settings settings0 = settingsBuilder(_settings).platform(Platform::Type::Unix64).build();
+ check("struct S {\n" // #12138
+ " union {\n"
+ " int a = 0;\n"
+@@ -2189,7 +2190,7 @@ class TestOther : public TestFixture {
+ "};\n"
+ "void f(S s) {\n"
+ " if (s.x > s.y) {}\n"
+- "}\n");
++ "}\n", /*filename*/ nullptr, /*inconclusive*/ true, /*runSimpleChecks*/ true, /*verbose*/ false, &settings0);
+ ASSERT_EQUALS("", errout.str());
+
+ check("struct S { std::list<int> l; };\n" // #12147
+