From 4dae81436197449b8eec5d16de5b7e35f5a9bb76 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Wed, 17 Jul 2024 18:19:38 +0000 Subject: [PATCH 1/4] Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild --- bison.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/bison.spec b/bison.spec index a61c93a..be0e4c2 100644 --- a/bison.spec +++ b/bison.spec @@ -1,7 +1,7 @@ Summary: A GNU general-purpose parser generator Name: bison Version: 3.8.2 -Release: 8%{?dist} +Release: 9%{?dist} # An SPDX license string check done against bison-3.8.2 found strings # corresponding to the following licenses across the bison source tree: @@ -124,6 +124,9 @@ gzip -9nf ${RPM_BUILD_ROOT}%{_infodir}/bison.info* %{_libdir}/liby.a %changelog +* Wed Jul 17 2024 Fedora Release Engineering - 3.8.2-9 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild + * Tue Jan 23 2024 Fedora Release Engineering - 3.8.2-8 - Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild From 73bc4f2166091cd4fba554c3fde78aba86d8c32d Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Thu, 16 Jan 2025 12:32:26 +0000 Subject: [PATCH 2/4] Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild --- bison.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/bison.spec b/bison.spec index be0e4c2..ff10c6b 100644 --- a/bison.spec +++ b/bison.spec @@ -1,7 +1,7 @@ Summary: A GNU general-purpose parser generator Name: bison Version: 3.8.2 -Release: 9%{?dist} +Release: 10%{?dist} # An SPDX license string check done against bison-3.8.2 found strings # corresponding to the following licenses across the bison source tree: @@ -124,6 +124,9 @@ gzip -9nf ${RPM_BUILD_ROOT}%{_infodir}/bison.info* %{_libdir}/liby.a %changelog +* Thu Jan 16 2025 Fedora Release Engineering - 3.8.2-10 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild + * Wed Jul 17 2024 Fedora Release Engineering - 3.8.2-9 - Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild From 20bb1a840e2933e3f1d9fd6c5c400b63a61d2c0b Mon Sep 17 00:00:00 2001 From: Yaakov Selkowitz Date: Tue, 22 Apr 2025 18:48:04 -0400 Subject: [PATCH 3/4] Fix build with GCC 15 GCC 15 added bounds-checks to vector when assertions are enabled, which caused test "764: Leaked lookahead after nondeterministic parse syntax error: glr2.cc FAILED (glr-regression.at:1862)". The patch is from Gentoo and was submitted upstream without response. https://bugs.gentoo.org/935754 https://bugzilla.redhat.com/show_bug.cgi?id=2336443 --- bison-3.8.2-gcc15-glibcxx-assertions.patch | 69 ++++++++++++++++++++++ bison.spec | 5 +- 2 files changed, 73 insertions(+), 1 deletion(-) create mode 100644 bison-3.8.2-gcc15-glibcxx-assertions.patch diff --git a/bison-3.8.2-gcc15-glibcxx-assertions.patch b/bison-3.8.2-gcc15-glibcxx-assertions.patch new file mode 100644 index 0000000..245cc84 --- /dev/null +++ b/bison-3.8.2-gcc15-glibcxx-assertions.patch @@ -0,0 +1,69 @@ +https://bugs.gentoo.org/935754 +https://lists.gnu.org/archive/html/bison-patches/2024-07/msg00000.html + +* data/skeletons/glr2.cc (yyundeleteLastStack): Recover +yylookaheadNeeds stack entry also, to prevent desyncing the sizes +of yystates and yylookaheadNeeds. +(class glr_state_set): New field yylookaheadNeedLastDeleted, +tracks lookahead need of last deleted state. +(yymarkStackDeleted): Save yylookaheadNeeds also. +--- +Hi! + +GCC 15 has added bounds-checks to vector when assertions are +enabled. This has caught a bug in Bison. See bug referenced above. + +Now, WRT the fix: I am not sure of its correctness, but it appears to +pass tests and everything seems to indicate that the presumption it is +based on is correct. That presumption is that the two stacks mentioned +above (yylookaheadNeeds and yystates) ought to be the same size. I +inferred this because all other locations that alter the size of the two +vectors appear to do so in lock-step. + +TIA, have a lovely day. + + data/skeletons/glr2.cc | 8 +++++++- + 1 file changed, 7 insertions(+), 1 deletion(-) + +diff --git a/data/skeletons/glr2.cc b/data/skeletons/glr2.cc +index 970ccfdf..8b962d6f 100644 +--- a/data/skeletons/glr2.cc ++++ b/data/skeletons/glr2.cc +@@ -1080,7 +1080,10 @@ namespace + { + size_t k = yyk.uget (); + if (yystates[k] != YY_NULLPTR) +- yylastDeleted = yystates[k]; ++ { ++ yylastDeleted = yystates[k]; ++ yylookaheadNeedLastDeleted = yylookaheadNeeds[k]; ++ } + yystates[k] = YY_NULLPTR; + } + +@@ -1093,6 +1096,7 @@ namespace + if (yylastDeleted == YY_NULLPTR || !yystates.empty ()) + return; + yystates.push_back (yylastDeleted); ++ yylookaheadNeeds.push_back (yylookaheadNeedLastDeleted); + YYCDEBUG << "Restoring last deleted stack as stack #0.\n"; + clearLastDeleted (); + } +@@ -1102,6 +1106,7 @@ namespace + void + yyremoveDeletes () + { ++ YYASSERT(yystates.size () == yylookaheadNeeds.size ()); + size_t newsize = yystates.size (); + /* j is the number of live stacks we have seen. */ + for (size_t i = 0, j = 0; j < newsize; ++i) +@@ -1160,6 +1165,7 @@ namespace + + /** The last stack we invalidated. */ + glr_state* yylastDeleted; ++ bool yylookaheadNeedLastDeleted; + }; // class glr_state_set + } // namespace + +-- +2.45.2 diff --git a/bison.spec b/bison.spec index ff10c6b..786b35e 100644 --- a/bison.spec +++ b/bison.spec @@ -14,6 +14,9 @@ Source1: https://ftp.gnu.org/gnu/%{name}/%{name}-%{version}.tar.xz.sig # gpg2 --export --export-options export-minimal 7DF84374B1EE1F9764BBE25D0DDCAA3278D5264E > gpgkey-7DF84374B1EE1F9764BBE25D0DDCAA3278D5264E.gpg Source2: gpgkey-7DF84374B1EE1F9764BBE25D0DDCAA3278D5264E.gpg +# from Gentoo sys-devel/bison +Patch0: bison-3.8.2-gcc15-glibcxx-assertions.patch + # testsuite dependency BuildRequires: gcc-c++ BuildRequires: autoconf @@ -80,7 +83,7 @@ Bison manual section for more information. %prep %{gpgverify} --keyring='%{SOURCE2}' --signature='%{SOURCE1}' --data='%{SOURCE0}' -%autosetup +%autosetup -p1 %build %configure From 96d07b164cfdc864a2ef75a16cd9e6b83eeb41c0 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Wed, 23 Jul 2025 17:43:03 +0000 Subject: [PATCH 4/4] Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild --- bison.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/bison.spec b/bison.spec index 786b35e..eabe3b8 100644 --- a/bison.spec +++ b/bison.spec @@ -1,7 +1,7 @@ Summary: A GNU general-purpose parser generator Name: bison Version: 3.8.2 -Release: 10%{?dist} +Release: 11%{?dist} # An SPDX license string check done against bison-3.8.2 found strings # corresponding to the following licenses across the bison source tree: @@ -127,6 +127,9 @@ gzip -9nf ${RPM_BUILD_ROOT}%{_infodir}/bison.info* %{_libdir}/liby.a %changelog +* Wed Jul 23 2025 Fedora Release Engineering - 3.8.2-11 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild + * Thu Jan 16 2025 Fedora Release Engineering - 3.8.2-10 - Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild