Bug 2165211
| Summary: | cppcheck-2.11 is available | ||||||||
|---|---|---|---|---|---|---|---|---|---|
| Product: | [Fedora] Fedora | Reporter: | Upstream Release Monitoring <upstream-release-monitoring> | ||||||
| Component: | cppcheck | Assignee: | Steve Grubb <sgrubb> | ||||||
| Status: | ASSIGNED --- | QA Contact: | Fedora Extras Quality Assurance <extras-qa> | ||||||
| Severity: | unspecified | Docs Contact: | |||||||
| Priority: | unspecified | ||||||||
| Version: | rawhide | CC: | c72578, gaul, mtasaka, sgrubb, susi.lehtola, tdawson | ||||||
| Target Milestone: | --- | Keywords: | FutureFeature, Triaged | ||||||
| Target Release: | --- | ||||||||
| Hardware: | Unspecified | ||||||||
| OS: | Unspecified | ||||||||
| Whiteboard: | |||||||||
| Fixed In Version: | Doc Type: | If docs needed, set a value | |||||||
| Doc Text: | Story Points: | --- | |||||||
| Clone Of: | Environment: | ||||||||
| Last Closed: | Type: | --- | |||||||
| Regression: | --- | Mount Type: | --- | ||||||
| Documentation: | --- | CRM: | |||||||
| Verified Versions: | Category: | --- | |||||||
| oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |||||||
| Cloudforms Team: | --- | Target Upstream Version: | |||||||
| Embargoed: | |||||||||
| Attachments: |
|
||||||||
|
Description
Upstream Release Monitoring
2023-01-28 13:29:15 UTC
Created attachment 1940877 [details]
Update to 2.10 (#2165211)
the-new-hotness/release-monitoring.org's scratch build of cppcheck-2.10-1.fc36.src.rpm for rawhide failed http://koji.fedoraproject.org/koji/taskinfo?taskID=96802033 The build was failing because upstream switched to python 3. Removing the python 3 patch fixes the build. In rawhide, the build ultimately fails with a very longwinded error message. (It builds fine on F36 and F37 so this might be related to gcc 13 C++ changes.) Here's the build: https://kojipkgs.fedoraproject.org//work/tasks/1981/97021981/build.log And the error message: In file included from /usr/include/c++/13/ext/alloc_traits.h:34, from /usr/include/c++/13/bits/basic_string.h:39, from /usr/include/c++/13/string:54, from /builddir/build/BUILD/cppcheck-2.10/lib/config.h:84, from /builddir/build/BUILD/cppcheck-2.10/lib/precompiled.h:20, from /builddir/build/BUILD/cppcheck-2.10/redhat-linux-build/lib/CMakeFiles/cppcheck-core.dir/cmake_pch.hxx:5, from <command-line>: /usr/include/c++/13/bits/alloc_traits.h: In instantiation of 'struct std::__allocator_traits_base::__rebind<TaggedAllocator<ReferenceToken, 3>, ReferenceToken, void>': /usr/include/c++/13/bits/alloc_traits.h:94:11: required by substitution of 'template<class _Alloc, class _Up> using std::__alloc_rebind = typename std::__allocator_traits_base::__rebind<_Alloc, _Up>::type [with _Alloc = TaggedAllocator<ReferenceToken, 3>; _Up = ReferenceToken]' /usr/include/c++/13/bits/alloc_traits.h:228:8: required by substitution of 'template<class _Alloc> template<class _Tp> using std::allocator_traits< <template-parameter-1-1> >::rebind_alloc = std::__alloc_rebind<_Alloc, _Tp> [with _Tp = ReferenceToken; _Alloc = TaggedAllocator<ReferenceToken, 3>]' /usr/include/c++/13/ext/alloc_traits.h:126:65: required from 'struct __gnu_cxx::__alloc_traits<TaggedAllocator<ReferenceToken, 3>, ReferenceToken>::rebind<ReferenceToken>' /usr/include/c++/13/bits/stl_vector.h:88:21: required from 'struct std::_Vector_base<ReferenceToken, TaggedAllocator<ReferenceToken, 3> >' /usr/include/c++/13/bits/stl_vector.h:423:11: required from 'class std::vector<ReferenceToken, TaggedAllocator<ReferenceToken, 3> >' /builddir/build/BUILD/cppcheck-2.10/lib/smallvector.h:47:7: required from 'class SmallVector<ReferenceToken>' /builddir/build/BUILD/cppcheck-2.10/lib/astutils.cpp:1158:58: required from here /usr/include/c++/13/bits/alloc_traits.h:70:31: error: static assertion failed: allocator_traits<A>::rebind_alloc<A::value_type> must be A 70 | _Tp>::value, | ^~~~~ /usr/include/c++/13/bits/alloc_traits.h:70:31: note: 'std::integral_constant<bool, false>::value' evaluates to false /usr/include/c++/13/bits/alloc_traits.h: In instantiation of 'struct std::__allocator_traits_base::__rebind<TaggedAllocator<const Token*, 9>, const Token*, void>': /usr/include/c++/13/bits/alloc_traits.h:94:11: required by substitution of 'template<class _Alloc, class _Up> using std::__alloc_rebind = typename std::__allocator_traits_base::__rebind<_Alloc, _Up>::type [with _Alloc = TaggedAllocator<const Token*, 9>; _Up = const Token*]' /usr/include/c++/13/bits/alloc_traits.h:228:8: required by substitution of 'template<class _Alloc> template<class _Tp> using std::allocator_traits< <template-parameter-1-1> >::rebind_alloc = std::__alloc_rebind<_Alloc, _Tp> [with _Tp = const Token*; _Alloc = TaggedAllocator<const Token*, 9>]' /usr/include/c++/13/ext/alloc_traits.h:126:65: required from 'struct __gnu_cxx::__alloc_traits<TaggedAllocator<const Token*, 9>, const Token*>::rebind<const Token*>' /usr/include/c++/13/bits/stl_vector.h:88:21: required from 'struct std::_Vector_base<const Token*, TaggedAllocator<const Token*, 9> >' /usr/include/c++/13/bits/stl_vector.h:423:11: required from 'class std::vector<const Token*, TaggedAllocator<const Token*, 9> >' /builddir/build/BUILD/cppcheck-2.10/lib/smallvector.h:47:7: required from 'class SmallVector<const Token*, 9>' /usr/include/c++/13/bits/stl_stack.h:140:47: required from 'class std::stack<const Token*, SmallVector<const Token*, 9> >' /builddir/build/BUILD/cppcheck-2.10/lib/astutils.h:59:46: required from 'void visitAstNodes(T*, const TFunc&) [with T = const Token; TFunc = extractForLoopValues(const Token*, int*, bool*, MathLib::bigint*, bool*, MathLib::bigint*, MathLib::bigint*)::<lambda(const Token*)>; <template-parameter-1-3> = void]' /builddir/build/BUILD/cppcheck-2.10/lib/astutils.cpp:887:18: required from here /usr/include/c++/13/bits/alloc_traits.h:70:31: error: static assertion failed: allocator_traits<A>::rebind_alloc<A::value_type> must be A /usr/include/c++/13/bits/alloc_traits.h:70:31: note: 'std::integral_constant<bool, false>::value' evaluates to false Commit 2fd9c198 was reverted so cppcheck at least builds. Status 2023-03-08 Tested with Cppcheck 2.10.2 Scratch build: https://koji.fedoraproject.org/koji/taskinfo?taskID=98433397 [ 27%] Building CXX object lib/CMakeFiles/cppcheck-core.dir/build/mc_astutils.cpp.o cd /builddir/build/BUILD/cppcheck-2.10.2/redhat-linux-build/lib && /usr/bin/g++ -DFILESDIR=\"/usr/share/Cppcheck\" -DHAVE_RULES -DTIXML_USE_STL -I/builddir/build/BUILD/cppcheck-2.10.2/redhat-linux-build/lib -I/builddir/build/BUILD/cppcheck-2.10.2/lib -I/builddir/build/BUILD/cppcheck-2.10.2/externals -I/builddir/build/BUILD/cppcheck-2.10.2/externals/picojson -I/builddir/build/BUILD/cppcheck-2.10.2/externals/simplecpp -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -DNDEBUG -std=gnu++11 -O2 -pedantic -Wall -Wextra -Wcast-qual -Wfloat-equal -Wmissing-declarations -Wmissing-format-attribute -Wno-long-long -Wpacked -Wredundant-decls -Wundef -Wno-missing-field-initializers -Wno-missing-braces -Wno-sign-compare -Wno-multichar -pipe -Woverloaded-virtual -Wno-maybe-uninitialized -Wsuggest-attribute=noreturn -Wno-shadow -Winvalid-pch -include /builddir/build/BUILD/cppcheck-2.10.2/redhat-linux-build/lib/CMakeFiles/cppcheck-core.dir/cmake_pch.hxx -MD -MT lib/CMakeFiles/cppcheck-core.dir/build/mc_astutils.cpp.o -MF CMakeFiles/cppcheck-core.dir/build/mc_astutils.cpp.o.d -o CMakeFiles/cppcheck-core.dir/build/mc_astutils.cpp.o -c /builddir/build/BUILD/cppcheck-2.10.2/redhat-linux-build/lib/build/mc_astutils.cpp In file included from /usr/include/c++/13/ext/alloc_traits.h:34, from /usr/include/c++/13/bits/basic_string.h:39, from /usr/include/c++/13/string:54, from /builddir/build/BUILD/cppcheck-2.10.2/lib/config.h:84, from /builddir/build/BUILD/cppcheck-2.10.2/lib/precompiled.h:20, from /builddir/build/BUILD/cppcheck-2.10.2/redhat-linux-build/lib/CMakeFiles/cppcheck-core.dir/cmake_pch.hxx:5, from <command-line>: /usr/include/c++/13/bits/alloc_traits.h: In instantiation of 'struct std::__allocator_traits_base::__rebind<TaggedAllocator<ReferenceToken, 3>, ReferenceToken, void>': /usr/include/c++/13/bits/alloc_traits.h:94:11: required by substitution of 'template<class _Alloc, class _Up> using std::__alloc_rebind = typename std::__allocator_traits_base::__rebind<_Alloc, _Up>::type [with _Alloc = TaggedAllocator<ReferenceToken, 3>; _Up = ReferenceToken]' /usr/include/c++/13/bits/alloc_traits.h:228:8: required by substitution of 'template<class _Alloc> template<class _Tp> using std::allocator_traits< <template-parameter-1-1> >::rebind_alloc = std::__alloc_rebind<_Alloc, _Tp> [with _Tp = ReferenceToken; _Alloc = TaggedAllocator<ReferenceToken, 3>]' /usr/include/c++/13/ext/alloc_traits.h:126:65: required from 'struct __gnu_cxx::__alloc_traits<TaggedAllocator<ReferenceToken, 3>, ReferenceToken>::rebind<ReferenceToken>' /usr/include/c++/13/bits/stl_vector.h:88:21: required from 'struct std::_Vector_base<ReferenceToken, TaggedAllocator<ReferenceToken, 3> >' /usr/include/c++/13/bits/stl_vector.h:423:11: required from 'class std::vector<ReferenceToken, TaggedAllocator<ReferenceToken, 3> >' /builddir/build/BUILD/cppcheck-2.10.2/lib/smallvector.h:47:7: required from 'class SmallVector<ReferenceToken>' /builddir/build/BUILD/cppcheck-2.10.2/lib/astutils.cpp:1158:58: required from here /usr/include/c++/13/bits/alloc_traits.h:70:31: error: static assertion failed: allocator_traits<A>::rebind_alloc<A::value_type> must be A 70 | _Tp>::value, | ^~~~~ /usr/include/c++/13/bits/alloc_traits.h:70:31: note: 'std::integral_constant<bool, false>::value' evaluates to false Info at "Porting to GCC 13" concerning the error: alloc_traits.h:70:31: error: static assertion failed: allocator_traits<A>::rebind_alloc<A::value_type> must be A https://gcc.gnu.org/gcc-13/porting_to.html#alloc-rebind Releases retrieved: 2.11 Upstream release that is considered latest: 2.11 Current version/release in rawhide: 2.9-4.fc38 URL: http://sourceforge.net/projects/cppcheck Please consult the package updates policy before you issue an update to a stable branch: https://docs.fedoraproject.org/en-US/fesco/Updates_Policy/ More information about the service that created this bug can be found at: https://docs.fedoraproject.org/en-US/package-maintainers/Upstream_Release_Monitoring Please keep in mind that with any upstream change, there may also be packaging changes that need to be made. Specifically, please remember that it is your responsibility to review the new version to ensure that the licensing is still correct and that no non-free or legally problematic items have been added upstream. Based on the information from Anitya: https://release-monitoring.org/project/357/ To change the monitoring settings for the project, please visit: https://src.fedoraproject.org/rpms/cppcheck Created attachment 1972058 [details]
Update to 2.11 (#2165211)
the-new-hotness/release-monitoring.org's scratch build of cppcheck-2.11-1.fc38.src.rpm for rawhide failed http://koji.fedoraproject.org/koji/taskinfo?taskID=102448762 Cppcheck-2.11 was built for rawhide. The problem in 2.10 was fixed. This release is problematic, though. There are lots of compiler warnings and there's 2 style tests that failed (see koji TaskID 102463461 aarch64). The %check target was disabled for now. I presume there will be upstream fixes that can be cherry picked (or a new release). I'd recommend letting this sit in rawhide a bit before building for F38. The python3 patch has been removed diff --git a/cppcheck.spec b/cppcheck.spec index 2d62a9a..4b14fbc 100644 --- a/cppcheck.spec +++ b/cppcheck.spec @@ -56,7 +56,7 @@ from xml files first generated using cppcheck. %prep %setup -q %patch -P0 -p1 -b .translations -%patch -P1 -p1 -b .python3 +%patch -P1 -p1 -b .versions # Make sure bundled tinyxml2 is not used rm -r externals/tinyxml2 # Generate the Qt online-help file There are build problems on F38. The act of compiling the test cases causes the build to fail mysteriously (as in no clue why). To get it to build, you have to disable testing completely by removing -DBUILD_TESTS=yes. I'm not sure that is a good idea since we've had to disable running make check for 2 failing tests. |