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

Reply via email to