One (the only) thing I've noticed so far about gcc-10 is that (sloppily) defined variables in header files that lack an extern qualifier and that don't have an explicit defn in a .c file are no longer 'common' or .comm but are now .global .bss and cause link errors due to duplicate definitions.
This very well might be because I made a mistake in the way I built gcc-10. I'm not sure I have any way to know. If it's not a mistake on my part then this change has revealed a few bugs in the other applications that I work on. These bugs should be fixed of course, but it's something to be aware of when considering a major change like this, this late in the f32/rawhide development cycle. Almost certainly a lot of other things will have similar bugs. On Thu, Jan 2, 2020 at 10:12 AM Ben Cotton <bcot...@redhat.com> wrote: > https://fedoraproject.org/wiki/Changes/GCC10 > > == Summary == > Switch GCC in Fedora 32 to 10.x.y, rebuild all packages with it, or > optionally rebuild just some packages with it and rebuild all packages > only in Fedora 33. > > == Owner == > * Name: [[User:Jakub|Jakub JelĂnek]] > * Email: ja...@redhat.com > > == Detailed Description == > > GCC 10 is currently in stage3, switching to stage4 in January, at > which point it will be in a prerelease state with only regression > bugfixes and documentation fixes allowed. The release will happen > probably in the middle of April. rpms will be built in early January, > but Jeff Law has been testing x86_64 Fedora test mass rebuilds with > GCC 10 snapshots for a while. > > > == Benefit to Fedora == > > See http://gcc.gnu.org/gcc-10/changes.html for the list of changes. > > == Scope == > * Proposal owners: > Prepare rpms for the new compiler, push them into rawhide, watch > voluntary rebuilds, fix bugs as they are reported, watch fallout from > mass rebuild. > > * Other developers: N/A (not a System Wide Change) > Adjust for what will be written in > https://gcc.gnu.org/gcc-10/porting_to.html , fix bugs in packages that > will show up after rebuild or report if there are bugs on the compiler > side. > > * Release engineering: Perform a mass rebuild, which will be needed > for the LTO System Wide change too. > > * Policies and guidelines: N/A (not a System Wide Change) > I don't think so, this is a usual system compiler update that is being > done every year. I think we have skipped GCC 4.2, so in Fedora this > is likely the 15th such System Wide change. > * Trademark approval: N/A (not needed for this Change) > > > == Upgrade/compatibility impact == > No impact > > == How To Test == > GCC has its own testsuite, which is run during the package build, plus > many other packages with automated tests also help to test the new > gcc. > > == User Experience == > Users will be able to see compiled code improvements and use the newly > added features. > Developers will notice a newer compiler, and might need to adjust > their codebases acording to http://gcc.gnu.org/gcc-10/porting_to.html, > or, if they detect a GCC bug, report it. > > == Dependencies == > libtool, annobin, gcc-python-plugin depend on exact gcc version, those > need to be rebuilt. > > == Contingency Plan == > If bugs are discovered, I'd appreciate help from the package owners in > preparing self-contained testcases to speed up analysis and fixing the > bugs. Don't have time to debug issues in 12000+ packages, especially > when in many cases it could be caused by undefined code in the > packages etc. I don't expect we'll have to fall back to the older > gcc, we've never had to do it in the past, > but worst case we can mass rebuild everything with older gcc again. > Jeff Law has performed test mass rebuild on x86_64. > > * Contingency mechanism: (What to do? Who will do it?) Revert to > older gcc, mass rebuild everything again > * Contingency deadline: Before release > * Blocks release? Yes > * Blocks product? No > > == Documentation == > http://gcc.gnu.org/gcc-10/ > > == Release Notes == > Fedora 32 comes with GCC 10.1 as primary compiler, see > http://gcc.gnu.org/gcc-10/changes.html for user visible changes in it. > > -- > Ben Cotton > He / Him / His > Fedora Program Manager > Red Hat > TZ=America/Indiana/Indianapolis > _______________________________________________ > devel mailing list -- devel@lists.fedoraproject.org > To unsubscribe send an email to devel-le...@lists.fedoraproject.org > Fedora Code of Conduct: > https://docs.fedoraproject.org/en-US/project/code-of-conduct/ > List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines > List Archives: > https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org >
_______________________________________________ devel mailing list -- devel@lists.fedoraproject.org To unsubscribe send an email to devel-le...@lists.fedoraproject.org Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/ List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines List Archives: https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org