Bug 2427943

Summary: libyui: FTBFS with gcc16 due to C++20 change
Product: [Fedora] Fedora Reporter: Mamoru TASAKA <mtasaka>
Component: libyuiAssignee: Orphan Owner <extras-orphan>
Status: POST --- QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: unspecified    
Version: rawhideCC: besser82, jonathan, lbalhar, mhroncok, ngompa13, thunderbirdtr
Target Milestone: ---Flags: mhroncok: needinfo? (ngompa13)
Target Release: ---   
Hardware: Unspecified   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: ---
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 2384424, 2412434, 2418384, 2424310, 2433833    

Description Mamoru TASAKA 2026-01-08 15:03:23 UTC
Now we are rebuilding libyui against ruby4.0, but rebuilding libyui failed due to g++16 changes (not related to ruby4.0 change):

https://koji.fedoraproject.org/koji/taskinfo?taskID=140860124
x86_64:
https://koji.fedoraproject.org/koji/taskinfo?taskID=140860232

/builddir/build/BUILD/libyui-4.2.16-build/libyui-4.2.16/libyui-ncurses/src/NCRichText.cc:521:59: error: use of deleted function ‘std::basic_ostream<char, _Traits>& std::operator<<(basic_ostream<char, _Traits>&, wchar_t) [with _Traits = char_traits<char>]’
  521 |                             yuiDebug() << "Ignoring " << *wch << std::endl;
      |                                                           ^~~
In file included from /usr/include/c++/16/ostream:42,
                 from /usr/include/c++/16/iostream:43,
                 from /builddir/build/BUILD/libyui-4.2.16-build/libyui-4.2.16/libyui-ncurses/build/src/include/yui/YUILog.h:31,
                 from /builddir/build/BUILD/libyui-4.2.16-build/libyui-4.2.16/libyui-ncurses/src/NCRichText.cc:26:
/usr/include/c++/16/bits/ostream.h:667:5: note: declared here
  667 |     operator<<(basic_ostream<char, _Traits>&, wchar_t) = delete;
      |     ^~~~~~~~
/builddir/build/BUILD/libyui-4.2.16-build/libyui-4.2.16/libyui-ncurses/src/NCRichText.cc:521:59: note: use ‘-fdiagnostics-all-candidates’ to display considered candidates
  521 |                             yuiDebug() << "Ignoring " << *wch << std::endl;
      |                                                           ^~~
gmake[2]: *** [src/CMakeFiles/libyui-ncurses.dir/build.make:880: src/CMakeFiles/libyui-ncurses.dir/NCRichText.cc.o] Error 1

Looks like C++20 now deletes stream insertion operator, ref:
https://en.cppreference.com/w/cpp/io/basic_ostream/operator_ltlt2

Reproducible: Always

Comment 1 Mamoru TASAKA 2026-01-08 15:07:35 UTC
For now I may end up with commenting out the problematic line (because looks like the line is for debugging purpose)

Comment 2 Lumír Balhar 2026-04-09 07:25:25 UTC
The package is now blocking us in Python 3.15 rebuild. Could you please open a PR for the problem? If not, let me know, and I'll take a look.

Comment 3 Lumír Balhar 2026-04-22 10:54:26 UTC
The first error reported here was just the tip of the iceberg. There are many incompatibilities with the latest CMake as well.

PR: https://src.fedoraproject.org/rpms/libyui/pull-request/3

Comment 4 Miro Hrončok 2026-05-20 12:13:46 UTC
Coudl you please have alook at the posted PR?

Comment 5 Fedora Admin user for bugzilla script actions 2026-06-01 01:01:47 UTC
This package has changed maintainer in Fedora. Reassigning to the new maintainer of this component.