• [ANN] GCC 14.2.0-3 (aarch64, macOS)

    From Simon Wright@21:1/5 to All on Sun Nov 17 14:41:33 2024
    Available at [1]. Included tools at v25.0.0.

    [1] https://github.com/simonjwright/distributing-gcc/releases/tag/gcc-14.2.0-3-aarch64

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From moi@21:1/5 to Bill Findlay on Thu Nov 21 15:45:53 2024
    On 21/11/2024 15:30, Bill Findlay wrote:
    On 17 Nov 2024, Simon Wright wrote
    (in article <lyserpq5wi.fsf@pushface.org>):

    Available at [1]. Included tools at v25.0.0.

    [1] https://github.com/simonjwright/distributing-gcc/releases/tag/gcc-14.2.0-3
    -aarch64

    Hi Simon, many thanks for that.

    I note that 14.2.0-3 has the same issue as all previous 14.2 versions:
    a spurious error message on a simple string concatenation,
    which appears only when link-time optimization is called for:
    ...
    That was garbled by the newsreader! Should be:

    lto-wrapper: note: see the '-flto' option documentation for more information /Users/wf/KDF9/emulation/Source/posix.adb: In function 'posix__output_line': /Users/wf/KDF9/emulation/Source/posix.adb:277:49: warning: '__builtin_memcpy' writing between 1 and 2147483647 bytes into a region of size 0
    [-Wstringop-overflow=]
    277 | message_line : constant String := message & NL;
    | ^

    with the ^ pointing to the &.

    I forgot to say that I'm running up-to-date Sequoia.

    --
    Bill F.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Bill Findlay@21:1/5 to Simon Wright on Thu Nov 21 15:30:22 2024
    On 17 Nov 2024, Simon Wright wrote
    (in article <lyserpq5wi.fsf@pushface.org>):

    Available at [1]. Included tools at v25.0.0.

    [1] https://github.com/simonjwright/distributing-gcc/releases/tag/gcc-14.2.0-3
    -aarch64

    Hi Simon, many thanks for that.

    I note that 14.2.0-3 has the same issue as all previous 14.2 versions:
    a spurious error message on a simple string concatenation,
    which appears only when link-time optimization is called for:

    gnatmake -aI../Source -aO../Build -funwind-tables -gnatl12j96 -gnatw.e
    -gnatwD -gnatwH -gnatwP -gnatwT -gnatw.W -gnatw.B -gnatwC -gnatw.u -gnatyO -gnatw.Y -gnatw.N -fdata-sections -ffunction-sections -O3 -flto askance
    -bargs -static -Sin -largs -Wl,-dead_strip -Wl,-dead_strip -largs -flto
    ...
    gnatbind -aI../Source -aO../Build -static -Sin -x askance.ali
    gnatlink askance.ali -funwind-tables -fdata-sections -ffunction-sections -O3 -flto -Wl,-dead_strip -Wl,-dead_strip -flto
    lto-wrapper: warning: using serial compilation of 4 LTRANS jobs
    lto-wrapper: note: see the '-flto' option documentation for more information /Users/wf/KDF9/emulation/Source/posix.adb: In function 'posix__output_line': /Users/wf/KDF9/emulation/Source/posix.adb:277:49: warning: '__builtin_memcpy' writing between 1 and 2147483647 bytes into a region of size 0 [-Wstringop-overflow=]
    277 | message_line : constant String := message & NL;
    | ^

    This is in the routine:

    procedure output_line (message : in String) is
    message_line : String := message & NL;
    begin
    output(message_line);
    end output_line;

    where:

    NL : constant String := OS_specifics.EOL;

    in the package spec., and:

    package body OS_specifics is

    function EOL
    return String
    is (1 => Character'Val(16#0A#));
    ...

    Changing the complained-of line to:

    message_line : String := message & (NL & "");

    makes the warning go away.

    --
    Bill Findlay

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Simon Wright@21:1/5 to All on Thu Nov 21 20:40:18 2024
    I can't reproduce.

    The only change made to the 14.2.0 compiler release are to do with
    fixincludes vs SDK16.

    -1: gcc-14.2-darwin-r1
    -2, -3: gcc-14.2-darwin-r2

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From moi@21:1/5 to Simon Wright on Fri Nov 22 01:18:36 2024
    On 21/11/2024 20:40, Simon Wright wrote:
    I can't reproduce.

    The only change made to the 14.2.0 compiler release are to do with fixincludes vs SDK16.

    -1: gcc-14.2-darwin-r1
    -2, -3: gcc-14.2-darwin-r2

    I'm not surpised, it seems to be very dependent on the exact context.
    I could not reproduce it in a simple example.
    It has been present in all 14* compilers, but it is absent from 13.2.0.
    --
    Bill F.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From =?UTF-8?B?QmrDtnJu?= Persson@21:1/5 to Bill Findlay on Fri Nov 22 11:02:23 2024
    Bill Findlay wrote:
    warning: '__builtin_memcpy' writing between 1 and 2147483647 bytes
    into a region of size 0 [-Wstringop-overflow=]

    I've seen many occurrences of that bogus warning in Fedora, so it's not
    unique to Simon's build. Thus the place to report it would
    be https://gcc.gnu.org/bugzilla/.

    Björn Persson

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From moi@21:1/5 to All on Sun Nov 24 00:19:06 2024
    On 22/11/2024 10:02, Björn Persson wrote:
    Bill Findlay wrote:
    warning: '__builtin_memcpy' writing between 1 and 2147483647 bytes
    into a region of size 0 [-Wstringop-overflow=]

    I've seen many occurrences of that bogus warning in Fedora, so it's not unique to Simon's build. Thus the place to report it would
    be https://gcc.gnu.org/bugzilla/.

    Björn Persson

    Do you get it only in 14.2.0-*, Björn?
    --
    Bill F.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Simon Wright@21:1/5 to moi on Sun Nov 24 11:17:07 2024
    moi <findlaybill@blueyonder.co.uk> writes:

    On 22/11/2024 10:02, Björn Persson wrote:
    Bill Findlay wrote:
    warning: '__builtin_memcpy' writing between 1 and 2147483647 bytes
    into a region of size 0 [-Wstringop-overflow=]
    I've seen many occurrences of that bogus warning in Fedora, so it's
    not unique to Simon's build. Thus the place to report it would be
    https://gcc.gnu.org/bugzilla/.
    Björn Persson

    Do you get it only in 14.2.0-*, Björn?

    It happens with gcc version 15.0.0 20241102 (experimental) :-(

    And with an x86_64-apple-darwin GCC 4.2.0 build (on aarch64, under
    Rosetta) I noticed

    In function 'disassembly__data_access_name',
    inlined from 'disassembly__the_full_name_of' at /Users/simon/tmp/emulation/Source/disassembly.adb:483:44:
    /Users/simon/tmp/emulation/Source/disassembly.adb:452:48: warning: '__builtin_memcpy' writing between 1 and 2147483647 bytes into a region of size 0 overflows the destination [-Wstringop-overflow=]
    452 | modifier : constant String := M_suffix & Q_suffix;
    | ^ /Users/simon/tmp/emulation/Source/disassembly.adb:452:48: note: destination object 'S1471b.315' of size 0
    452 | modifier : constant String := M_suffix & Q_suffix;
    | ^ /Users/simon/tmp/emulation/Source/disassembly.adb:452:48: warning: '__builtin_memcpy' writing between 1 and 2147483647 bytes into a region of size 0 overflows the destination [-Wstringop-overflow=]
    452 | modifier : constant String := M_suffix & Q_suffix;
    | ^ /Users/simon/tmp/emulation/Source/disassembly.adb:452:48: note: destination object 'S1471b.315' of size 0
    452 | modifier : constant String := M_suffix & Q_suffix;
    | ^

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From =?UTF-8?B?QmrDtnJu?= Persson@21:1/5 to moi on Tue Nov 26 16:48:31 2024
    moi wrote:
    On 22/11/2024 10:02, Björn Persson wrote:
    Bill Findlay wrote:
    warning: '__builtin_memcpy' writing between 1 and 2147483647 bytes
    into a region of size 0 [-Wstringop-overflow=]

    I've seen many occurrences of that bogus warning in Fedora, so it's not unique to Simon's build. Thus the place to report it would
    be https://gcc.gnu.org/bugzilla/.

    Björn Persson

    Do you get it only in 14.2.0-*, Björn?

    I haven't taken notes of the GCC version. I just concluded that the
    warning was obviously wrong, and moved on. I can let you know if I see
    it again.

    Björn Persson

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From =?UTF-8?B?QmrDtnJu?= Persson@21:1/5 to moi on Fri Nov 29 20:08:53 2024
    moi wrote:
    On 22/11/2024 10:02, Björn Persson wrote:
    Bill Findlay wrote:
    warning: '__builtin_memcpy' writing between 1 and 2147483647 bytes
    into a region of size 0 [-Wstringop-overflow=]

    I've seen many occurrences of that bogus warning in Fedora, so it's not unique to Simon's build. Thus the place to report it would
    be https://gcc.gnu.org/bugzilla/.

    Björn Persson

    Do you get it only in 14.2.0-*, Björn?

    It happened today in GCC 14.2.1 (as packaged in Fedora 41), so no, not
    only in 14.2.0.

    Björn Persson

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Simon Wright@21:1/5 to Bjorn@rombobjörn.se on Fri Nov 29 20:52:08 2024
    Björn Persson <Bjorn@rombobjörn.se> writes:

    It happened today in GCC 14.2.1 (as packaged in Fedora 41), so no, not
    only in 14.2.0.

    There's no official FSF 14.2.1 release - it may just be like Alire,
    which only handles 3 levels, so they call the first packaging of 14.2.0
    14.2.1. If you say 'gcc -v' it'll probably say 14.2.0.

    Of course I could be completely wrong and Fedora have added lots of
    value!

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Simon Wright@21:1/5 to Keith Thompson on Fri Nov 29 22:25:22 2024
    Keith Thompson <Keith.S.Thompson+u@gmail.com> writes:

    Simon Wright <simon@pushface.org> writes:
    Björn Persson <Bjorn@rombobjörn.se> writes:
    It happened today in GCC 14.2.1 (as packaged in Fedora 41), so no, not
    only in 14.2.0.

    There's no official FSF 14.2.1 release - it may just be like Alire,
    which only handles 3 levels, so they call the first packaging of 14.2.0
    14.2.1. If you say 'gcc -v' it'll probably say 14.2.0.

    Of course I could be completely wrong and Fedora have added lots of
    value!

    I see some potential for confusion, since there almost certainly will be
    an official gcc 14.2.1 release in the near future. That official
    release will include code that's not included in what Fedora calls gcc 14.2.1. It's a point release, so I wouldn't expect substantial changes,
    but still, I think Fedora should use a different naming scheme.

    I have this vague memory that 14.2.1 is a draft for 14.3.0, and that GCC
    never has .1 _releases_. In the same way that 15.0.0 migrates to 15.0.1
    before the 15.1.0 release.

    Yes, see [1], section "Version Numbering Scheme for GCC 5 and Up".

    Also, in gcc-mirror on github, gcc/BASE-VER in the releases/gcc-14
    branch [2] holds 14.2.1.

    [1] https://gcc.gnu.org/develop.html
    [2] https://github.com/gcc-mirror/gcc/blob/releases/gcc-14/gcc/BASE-VER

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From =?UTF-8?B?QmrDtnJu?= Persson@21:1/5 to Keith Thompson on Fri Nov 29 23:52:17 2024
    Keith Thompson wrote:
    Simon Wright <simon@pushface.org> writes:
    Björn Persson <Bjorn@rombobjörn.se> writes:
    It happened today in GCC 14.2.1 (as packaged in Fedora 41), so no, not
    only in 14.2.0.

    There's no official FSF 14.2.1 release - it may just be like Alire,
    which only handles 3 levels, so they call the first packaging of 14.2.0 14.2.1. If you say 'gcc -v' it'll probably say 14.2.0.

    $ LANG=en gcc -v
    Using built-in specs.
    COLLECT_GCC=gcc COLLECT_LTO_WRAPPER=/usr/libexec/gcc/x86_64-redhat-linux/14/lto-wrapper OFFLOAD_TARGET_NAMES=nvptx-none:amdgcn-amdhsa
    OFFLOAD_TARGET_DEFAULT=1
    Target: x86_64-redhat-linux
    Configured with: ../configure --enable-bootstrap --enable-languages=c,c++,fortran,objc,obj-c++,ada,go,d,m2,lto --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info --with-bugurl=http://bugzilla.redhat.com/bugzilla --enable-shared --enable-
    threads=posix --enable-checking=release --enable-multilib --with-system-zlib --enable-__cxa_atexit --disable-libunwind-exceptions --enable-gnu-unique-object --enable-linker-build-id --with-gcc-major-version-only --enable-libstdcxx-backtrace --with-
    libstdcxx-zoneinfo=/usr/share/zoneinfo --with-linker-hash-style=gnu --enable-plugin --enable-initfini-array --with-isl=/builddir/build/BUILD/gcc-14.2.1-build/gcc-14.2.1-20240912/obj-x86_64-redhat-linux/isl-install --enable-offload-targets=nvptx-none,
    amdgcn-amdhsa --enable-offload-defaulted --without-cuda-driver --enable-gnu-indirect-function --enable-cet --with-tune=generic --with-arch_32=i686 --build=x86_64-redhat-linux --with-build-config=bootstrap-lto --enable-link-serialization=1
    Thread model: posix
    Supported LTO compression algorithms: zlib zstd
    gcc version 14.2.1 20240912 (Red Hat 14.2.1-3) (GCC)

    I see some potential for confusion, since there almost certainly will be
    an official gcc 14.2.1 release in the near future. That official
    release will include code that's not included in what Fedora calls gcc 14.2.1. It's a point release, so I wouldn't expect substantial changes,
    but still, I think Fedora should use a different naming scheme.

    Anyone who needs to know the exact state of the code packaged in Fedora
    41 can find the Git revision and all the patches here: https://src.fedoraproject.org/rpms/gcc/blob/f41/f/gcc.spec

    If someone has a problem with the version numbering, they could always
    try reporting it as a bug, but they should first know that the main
    admin of the Fedora package is also frequently seen in the revision
    history at gcc.gnu.org. One who is that deeply involved in the
    development of GCC probably has a better idea of the differences
    between versions than most of us do.

    Björn Persson

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)