Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 940648 - x11-libs/fox-1.6.57-r3 - [ncurses-6.5] [libtool] [gcc-15] FXGLShape.cpp: error: dereferencing type-punned pointer will break strict-aliasing rules [-Werror=strict-aliasin
Summary: x11-libs/fox-1.6.57-r3 - [ncurses-6.5] [libtool] [gcc-15] FXGLShape.cpp: erro...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal
Assignee: Jason A. Donenfeld
URL:
Whiteboard:
Keywords:
Depends on:
Blocks: lto
  Show dependency tree
 
Reported: 2024-10-02 14:35 UTC by Toralf Förster
Modified: 2024-10-09 10:48 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments
emerge-info.txt (emerge-info.txt,18.76 KB, text/plain)
2024-10-02 14:35 UTC, Toralf Förster
Details
emerge-history.txt (emerge-history.txt,65.19 KB, text/plain)
2024-10-02 14:35 UTC, Toralf Förster
Details
environment (environment,96.96 KB, text/plain)
2024-10-02 14:35 UTC, Toralf Förster
Details
etc.clang.tar.xz (etc.clang.tar.xz,1.00 KB, application/x-xz)
2024-10-02 14:35 UTC, Toralf Förster
Details
etc.portage.tar.xz (etc.portage.tar.xz,20.93 KB, application/x-xz)
2024-10-02 14:35 UTC, Toralf Förster
Details
logs.tar.xz (logs.tar.xz,10.60 KB, application/x-xz)
2024-10-02 14:35 UTC, Toralf Förster
Details
qlist-info.txt (qlist-info.txt,149.06 KB, text/plain)
2024-10-02 14:35 UTC, Toralf Förster
Details
temp.tar.xz (temp.tar.xz,25.17 KB, application/x-xz)
2024-10-02 14:35 UTC, Toralf Förster
Details
x11-libs:fox-1.6.57-r3:20241002-114848.log.xz (x11-libs:fox-1.6.57-r3:20241002-114848.log.xz,19.40 KB, application/x-xz)
2024-10-02 14:35 UTC, Toralf Förster
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Toralf Förster gentoo-dev 2024-10-02 14:35:30 UTC
too long lines were shrinked:

FXGLObject.cpp: In member function 'virtual void FX::FXGLGroup::bounds(FX::FXRangef&)':
FXGLObject.cpp:118:18: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
  118 |   register FXint i;
      |                  ^
libtool: compile:  x86_64-pc-linux-gnu-g++ -DPACKAGE_NAME=\"fox\" -DPACKAGE_TARNAME=\"fox\" -DPACKAGE_VERSION=\"1.6.57\" "-DPACKAGE_STRING=\"fox 1.6.57\"" -DPACKAGE_BUGREPORT=\"jeroen@fox-toolkit.com\" -DPACKAGE_URL=\"\" -DPACKAGE=\"fox\" -DVERSION=\"1.6.57\" -DHAVE_STDIO_H=1 -DHAVE_STDLIB_H=1 -DHAV
FXGLShape.cpp: In member function 'long int FX::FXGLShape::onDNDDrop(FX::FXObject*, FX::FXSelector, void*)':
FXGLShape.cpp:179:84: error: dereferencing type-punned pointer will break strict-aliasing rules [-Werror=strict-aliasing]
  179 | r)->getDNDData(FROM_DRAGNDROP,FXWindow::colorType,(FXuchar*&)clr,len)){
      |                                                              ^~~

  -------------------------------------------------------------------

  This is an unstable amd64 chroot image at a tinderbox (==build bot)
  name: 23.0_no_multilib_systemd-20240930-224005

  UNMASKED:
  /etc/portage/package.unmask/60gcc:<sys-devel/gcc-15.0.9999:15
    Requested by sam
    Issues involving opaque types / incomplete typedefs should block bug 930805
  /etc/portage/package.unmask/50unstable:>=sys-libs/ncurses-6.5

  The attached etc.portage.tar.xz has all details.
  -------------------------------------------------------------------

gcc-config -l:
 [1] x86_64-pc-linux-gnu-10
 [2] x86_64-pc-linux-gnu-15 *
clang/llvm (if any):
clang version 19.1.1
Target: x86_64-pc-linux-gnu
Thread model: posix
InstalledDir: /usr/lib/llvm/19/bin
Configuration file: /etc/clang/x86_64-pc-linux-gnu-clang.cfg
/usr/lib/llvm/19
19.1.1
Python 3.12.7
Available Ruby profiles:
  (none found)
Available Rust versions:
  [1]   rust-bin-1.81.0 *
The following VMs are available for generation-2:
*)	Eclipse Temurin JDK 21.0.4_p7 [openjdk-bin-21]
Available Java Virtual Machines:
  [1]   openjdk-bin-21  system-vm

The Glorious Glasgow Haskell Compilation System, version 9.2.8
php cli (if any):
go version go1.23.1 linux/amd64

  HEAD of ::gentoo
commit 5895d166567dd37f6dbdfece0d605c8ec2ee5fd7
Author: Repository mirror & CI <repomirrorci@gentoo.org>
Date:   Wed Oct 2 11:19:45 2024 +0000

    2024-10-02 11:19:44 UTC

emerge -qpvO =x11-libs/fox-1.6.57-r3
[ebuild  N    ] x11-libs/fox-1.6.57-r3  USE="bzip2 jpeg opengl png truetype zlib -debug -doc -profile -tiff"
Comment 1 Toralf Förster gentoo-dev 2024-10-02 14:35:31 UTC
Created attachment 904659 [details]
emerge-info.txt
Comment 2 Toralf Förster gentoo-dev 2024-10-02 14:35:32 UTC
Created attachment 904660 [details]
emerge-history.txt
Comment 3 Toralf Förster gentoo-dev 2024-10-02 14:35:34 UTC
Created attachment 904661 [details]
environment
Comment 4 Toralf Förster gentoo-dev 2024-10-02 14:35:37 UTC
Created attachment 904662 [details]
etc.clang.tar.xz
Comment 5 Toralf Förster gentoo-dev 2024-10-02 14:35:38 UTC
Created attachment 904663 [details]
etc.portage.tar.xz
Comment 6 Toralf Förster gentoo-dev 2024-10-02 14:35:39 UTC
Created attachment 904664 [details]
logs.tar.xz
Comment 7 Toralf Förster gentoo-dev 2024-10-02 14:35:41 UTC
Created attachment 904665 [details]
qlist-info.txt
Comment 8 Toralf Förster gentoo-dev 2024-10-02 14:35:42 UTC
Created attachment 904666 [details]
temp.tar.xz
Comment 9 Toralf Förster gentoo-dev 2024-10-02 14:35:43 UTC
Created attachment 904667 [details]
x11-libs:fox-1.6.57-r3:20241002-114848.log.xz
Comment 10 Sam James archtester Gentoo Infrastructure gentoo-dev Security 2024-10-09 10:39:57 UTC
commit 83dc9cfeac977a6577bf9f03bf8fe14c83f095cd
Author: Eli Schwartz <eschwartz93@gmail.com>
Date:   Wed Apr 3 17:04:05 2024 -0400

    x11-libs/fox: also mark oldest version as LTO-unsafe

    It has a different slot.

    Bug: https://bugs.gentoo.org/864412
    Signed-off-by: Eli Schwartz <eschwartz93@gmail.com>
    Signed-off-by: Sam James <sam@gentoo.org>

and

commit fe5777553eb7e9cf64c0526ba194b831cb455f38
Author: Sam James <sam@gentoo.org>
Date:   Sat Jul 27 23:19:33 2024 +0100

    x11-libs/fox: filter LTO

    Has strict aliasing issues. The website has:
    > Tentative alias_cast() template may be used for shutting up GCC alias warnings. This means type-punning related warnings are now properly suppressed.
    which isn't promising.

    Signed-off-by: Sam James <sam@gentoo.org>

In the latter commit, I should have added -fno-strict-aliasing too.
Comment 11 Sam James archtester Gentoo Infrastructure gentoo-dev Security 2024-10-09 10:43:37 UTC
Oh no, but wait.

On *top* of that:

libtool: compile:  x86_64-pc-linux-gnu-g++ -DPACKAGE_NAME=\"fox\" -DPACKAGE_TARNAME=\"fox\" -DPACKAGE_VERSION=\"1.6.57\" "-DPACKAGE_STRING=\"fox 1.6.57\"" -DPACKAGE_BUGREPORT=\"jeroen@fox-toolkit.com\" -DPACKAGE_URL=\"\" -DPACKAGE=\"fox\" -DVERSION=\"1.6.57\" -DHAVE_STDIO_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_STRINGS_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_UNISTD_H=1 -DHAVE_WCHAR_H=1 -DSTDC_HEADERS=1 -D_ALL_SOURCE=1 -D_DARWIN_C_SOURCE=1 -D_GNU_SOURCE=1 -D_HPUX_ALT_XOPEN_SOCKET_API=1 -D_NETBSD_SOURCE=1 -D_OPENBSD_SOURCE=1 -D_POSIX_PTHREAD_SEMANTICS=1 -D__STDC_WANT_IEC_60559_ATTRIBS_EXT__=1 -D__STDC_WANT_IEC_60559_BFP_EXT__=1 -D__STDC_WANT_IEC_60559_DFP_EXT__=1 -D__STDC_WANT_IEC_60559_EXT__=1 -D__STDC_WANT_IEC_60559_FUNCS_EXT__=1 -D__STDC_WANT_IEC_60559_TYPES_EXT__=1 -D__STDC_WANT_LIB_EXT2__=1 -D__STDC_WANT_MATH_SPEC_FUNCS__=1 -D_TANDEM_SOURCE=1 -D__EXTENSIONS__=1 -DHAVE_DLFCN_H=1 -DLT_OBJDIR=\".libs/\" -DHAVE_SYS_TIME_H=1 -DHAVE_SYS_PARAM_H=1 -DTIME_WITH_SYS_TIME=1 -DHAVE_SYS_WAIT_H=1 -DHAVE_DIRENT_H=1 -DHAVE_GETPAGESIZE=1 -DHAVE_MMAP=1 -DHAVE_LIBRT=1 -DHAVE_LIBPTHREAD=1 -DHAVE_LIBDL=1 -DHAVE_VSSCANF=1 -DHAVE_VSNPRINTF=1 -DHAVE_STRTOLL=1 -DHAVE_STRTOULL=1 -DHAVE_PNG_H=1 -DHAVE_ZLIB_H=1 -DHAVE_BZLIB_H=1 -DHAVE_X11_EXTENSIONS_XSHM_H=1 -DHAVE_X11_EXTENSIONS_SHAPE_H=1 -DHAVE_X11_XCURSOR_XCURSOR_H=1 -DHAVE_X11_EXTENSIONS_XRENDER_H=1 -DHAVE_X11_EXTENSIONS_XRANDR_H=1 -DHAVE_X11_EXTENSIONS_XFIXES_H=1 -DHAVE_X11_EXTENSIONS_XINPUT_H=1 -I. -I../include -I../include -O2 -pipe -march=native -fno-diagnostics-color -Werror=lto-type-mismatch -Werror=strict-aliasing -Werror=odr -fno-strict-aliasing -Wall -Wformat -Woverloaded-virtual -Wshadow -DUNICODE -O2 -DNDEBUG -Wuninitialized -ffast-math -fstrict-aliasing -finline-functions -fomit-frame-pointer -fexpensive-optimizations -DHAVE_JPEG_H=1 -DHAVE_PNG_H=1 -DHAVE_ZLIB_H=1 -DHAVE_BZ2LIB_H=1 -DHAVE_XFT_H=1 -I/usr/include/freetype2 -DHAVE_XSHM_H=1 -DHAVE_XSHAPE_H=1 -DHAVE_XCURSOR_H=1 -DHAVE_XRENDER_H=1 -DHAVE_XRANDR_H=1 -DHAVE_XFIXES_H=1 -DHAVE_XINPUT_H=1 -DNO_XIM -DHAVE_GLU_H=1 -DHAVE_GL_H=1 -c FXGLTriangleMesh.cpp  -fPIC -DPIC -o .libs/FXGLTriangleMesh.o
FXGLShape.cpp: In member function 'long int FX::FXGLShape::onDNDDrop(FX::FXObject*, FX::FXSelector, void*)':
FXGLShape.cpp:179:84: error: dereferencing type-punned pointer will break strict-aliasing rules [-Werror=strict-aliasing]
  179 | r)->getDNDData(FROM_DRAGNDROP,FXWindow::colorType,(FXuchar*&)clr,len)){
      |                                                              ^~~

They're passing -fstrict-aliasing!
Comment 12 Larry the Git Cow gentoo-dev 2024-10-09 10:48:26 UTC
The bug has been closed via the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=422109dcf6f391736093a4346ec6b7e41be497ac

commit 422109dcf6f391736093a4346ec6b7e41be497ac
Author:     Sam James <sam@gentoo.org>
AuthorDate: 2024-10-09 10:41:28 +0000
Commit:     Sam James <sam@gentoo.org>
CommitDate: 2024-10-09 10:41:28 +0000

    x11-libs/fox: consistently pass -fno-strict-aliasing
    
    It's not fixed in 1.7.84, they've just papered over it, see
    fe5777553eb7e9cf64c0526ba194b831cb455f38 where I quote the upstream site.
    
    Bug: https://bugs.gentoo.org/864412
    Closes: https://bugs.gentoo.org/940648
    Signed-off-by: Sam James <sam@gentoo.org>

 x11-libs/fox/fox-1.6.57-r3.ebuild | 5 +----
 x11-libs/fox/fox-1.7.67-r1.ebuild | 5 +----
 x11-libs/fox/fox-1.7.67-r2.ebuild | 5 +----
 x11-libs/fox/fox-1.7.84.ebuild    | 3 +++
 4 files changed, 6 insertions(+), 12 deletions(-)

Additionally, it has been referenced in the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=da568497d947f0a9d0a41934e12fc6b15bdf507f

commit da568497d947f0a9d0a41934e12fc6b15bdf507f
Author:     Sam James <sam@gentoo.org>
AuthorDate: 2024-10-09 10:47:43 +0000
Commit:     Sam James <sam@gentoo.org>
CommitDate: 2024-10-09 10:47:43 +0000

    x11-libs/fox: revbump for earlier flag fixes
    
    Bug: https://bugs.gentoo.org/940648
    Signed-off-by: Sam James <sam@gentoo.org>

 x11-libs/fox/{fox-1.6.57-r3.ebuild => fox-1.6.57-r4.ebuild} | 0
 x11-libs/fox/{fox-1.7.67-r2.ebuild => fox-1.7.67-r3.ebuild} | 0
 2 files changed, 0 insertions(+), 0 deletions(-)

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ee0634b18dff1c5bb1d064ae72830bfadb7a1ab8

commit ee0634b18dff1c5bb1d064ae72830bfadb7a1ab8
Author:     Sam James <sam@gentoo.org>
AuthorDate: 2024-10-09 10:45:15 +0000
Commit:     Sam James <sam@gentoo.org>
CommitDate: 2024-10-09 10:46:26 +0000

    x11-libs/fox: don't use --enable-release
    
    It passes -fstrict-aliasing amongst other things when the codebase
    isn't alias-safe.
    
    Bug: https://bugs.gentoo.org/940648
    Signed-off-by: Sam James <sam@gentoo.org>

 x11-libs/fox/fox-1.6.57-r3.ebuild | 5 ++++-
 x11-libs/fox/fox-1.7.67-r1.ebuild | 5 ++++-
 x11-libs/fox/fox-1.7.67-r2.ebuild | 5 ++++-
 3 files changed, 12 insertions(+), 3 deletions(-)