Description of problem: Both qt5-qtvirtualkeyboard and qt5-qtquickcontrols fail to build on ppc64le for same reason. Both fail on compilation of QML file (javascript) that gets generated into C++ file. The failure looks like this: Error compiling qml file: DefaultMessageDialog.qml:69: error: Break outside of loop make[2]: *** [Makefile:466: ../../qml/QtQuick/Dialogs/DefaultMessageDialog.qmlc] Error 1 make[1]: *** [Makefile:127: sub-dialogs-make_first] Error 2 make[1]: *** Waiting for unfinished jobs.... Here is for example latest build of qt5-qtvirtualkeyboard: https://koji.fedoraproject.org/koji/taskinfo?taskID=83643660 This is an update to newer Qt version, but I did a scratch build of previous version which built on F36 before and now also fail to build on ppc64le so it's not a new issue introduced with the new version of Qt.
Looks like an issue in qtbase. I managed to build it now.
I tried tagging different packages that might have effected the build and it looks the only one making a difference is qt5-qtdeclarative-5.15.2-10.fc36 so when I again tag back latest qt5-qtdeclarative-5.15.2-11.fc36, it again fails to build. The -11 build was just a mass rebuild bump and it was build with GCC 12, while -10 build was build with GCC 11. Therefore I again think this is a GCC issue.
The "error: Break outside of loop" message doesn't come from gcc, but some Qt tool, which one?
(In reply to Jakub Jelinek from comment #3) > The "error: Break outside of loop" message doesn't come from gcc, but some > Qt tool, which one? It comes from qtquickcompiler, which is in qtdeclarative/src/qml/compiler.
(In reply to Jan Grulich from comment #4) > (In reply to Jakub Jelinek from comment #3) > > The "error: Break outside of loop" message doesn't come from gcc, but some > > Qt tool, which one? > > It comes from qtquickcompiler, which is in qtdeclarative/src/qml/compiler. In qt5-qtdeclarative package.
So, can you please try first to disable lto on qt5-qtdeclarative (%global %_lto_cflags %{nil}) and see if it helps? Or try to build that tool with -O0 if that doesn't help?
(In reply to Jakub Jelinek from comment #6) > So, can you please try first to disable lto on qt5-qtdeclarative (%global > %_lto_cflags %{nil}) and see if it helps? > Or try to build that tool with -O0 if that doesn't help? That seems to work. Both packages now build in Rawhide.
Well, that is just a workaround, not a fix. It could be either a gcc or qt5-qtdeclarative bug.
Jan, do you know how exactly is qtquickcompiler invoked on DefaultMessageDialog.qml? It should be possible then to bisect which of the .o files making up qtquickcompiler causes the error: have two directories, lto/, no-lto/, mix the .o files, relink, invoke qtquickcompiler again.
Can this be reproduced with the packages in the latest rawhide compose? Seems the latest qt5-qtdeclarative relies on qt5-qtbase that is still not in rawhide, so reproducing this in mock is difficult.
(In reply to Jakub Jelinek from comment #10) > Can this be reproduced with the packages in the latest rawhide compose? > Seems the latest qt5-qtdeclarative relies on qt5-qtbase that is still not in > rawhide, so reproducing this in mock is difficult. All Qt modules should be already in Rawhide. I haven't tried to reproduce it since then, because I would have to enable LTO in qt5-qtdeclarative and then try to build qt5-qtvirtualkeyboard or qt5-qtquickcontrols. It's also only reproducible on ppc64le.
I certainly don't see any qtquickcompiler binary in qt5-qtdeclarative{,-devel} packages: rpm -q qt5-qtdeclarative{,-devel} qt5-qtdeclarative-5.15.3-2.fc37.ppc64le qt5-qtdeclarative-devel-5.15.3-2.fc37.ppc64le strings `rpm -ql qt5-qtdeclarative{,-devel}` 2>/dev/null | grep 'Break outside' yields nothing. In the qt5-qtdeclarative source I do see: find -type f | xargs grep 'Break outside of loop' 2>/dev/null ./src/qml/compiler/qv4codegen.cpp: throwSyntaxError(ast->lastSourceLocation(), QStringLiteral("Break outside of loop")); ./src/qml/compiler/qv4codegen.cpp: throwSyntaxError(ast->lastSourceLocation(), QStringLiteral("Break outside of loop")); but it doesn't seem to be compiled into anything: find -type f | xargs strings 2>/dev/null | grep 'Break outside of loop' throwSyntaxError(ast->lastSourceLocation(), QStringLiteral("Break outside of loop")); throwSyntaxError(ast->lastSourceLocation(), QStringLiteral("Break outside of loop")); not even ./src/qml/.obj/qv4codegen.o nor ./src/qmldevtools/.obj/qv4codegen.o So, which binary reports that error?
Actually reproduced it though: /home/jakub/rpmbuild/BUILD/qtdeclarative-everywhere-src-5.15.3/bin/qmlcachegen -o ../../qml/QtQuick/Dialogs/DefaultMessageDialog.qmlc DefaultMessageDialog.qml Error compiling qml file: DefaultMessageDialog.qml:69: error: Break outside of loop
So, some bisection shows that it is enough to have qmlcachegen.o, qv4codegen.o and qqmljsparser.o built with -flto -ffat-lto-objects, all others can be built without -flto and it still reproduces. Below is the command line, *.on are objects I've rebuilt by hand with the same commands as *.o were built except for removal of -flto -ffat-lto-objects: cd /home/jakub/rpmbuild/BUILD/qtdeclarative-everywhere-src-5.15.3/tools/qmlcachegen; g++ -Wl,-z,relro -Wl,--as-needed -Wl,-z,now -specs=/usr/lib/rpm/redhat/redhat-hardened-ld -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -Wl,--build-id=sha1 -Wl,-dT,../../.package_note-qt5-qtdeclarative-5.15.3-2.fc37.ppc64le.ld -Wl,--enable-new-dtags -o ../../bin/qmlcachegen .obj/qmlcachegen.o .obj/resourcefilter.on .obj/generateloader.on .obj/resourcefilemapper.on .obj/qmlstreamwriter.on ../../src/qml/.obj/qqmljsast.on ../../src/qml/.obj/qqmljsastvisitor.on ../../src/qml/.obj/qqmljsengine_p.on ../../src/qml/.obj/qqmljslexer.on ../../src/qml/.obj/qv4compiler.on ../../src/qml/.obj/qv4compilercontext.on ../../src/qml/.obj/qv4compilerscanfunctions.on ../../src/qml/.obj/qv4codegen.o ../../src/qml/.obj/qqmlirbuilder.on ../../src/qml/.obj/qv4instr_moth.on ../../src/qml/.obj/qqmljsgrammar.on ../../src/qml/.obj/qqmljsparser.o ../../src/qml/.obj/qv4bytecodehandler.on ../../src/qml/.obj/qv4bytecodegenerator.on /usr/lib64/libQt5Core.so -lpthread; pushd /home/jakub/rpmbuild/BUILD/qtquickcontrols-everywhere-src-5.15.3/src/dialogs; /home/jakub/rpmbuild/BUILD/qtdeclarative-everywhere-src-5.15.3/bin/qmlcachegen -o ../../qml/QtQuick/Dialogs/DefaultMessageDialog.qmlc DefaultMessageDialog.qml; popd /home/jakub/rpmbuild/BUILD/qtquickcontrols-everywhere-src-5.15.3/src/dialogs /home/jakub/rpmbuild/BUILD/qtdeclarative-everywhere-src-5.15.3/tools/qmlcachegen Error compiling qml file: DefaultMessageDialog.qml:69: error: Break outside of loop /home/jakub/rpmbuild/BUILD/qtdeclarative-everywhere-src-5.15.3/tools/qmlcachegen Those 3 LTO objects were built with: g++ -c -pipe -O2 -fexceptions -flto -ffat-lto-objects -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mcpu=power8 -mtune=power8 -fasynchronous-unwind-tables -fstack-clash-protection -std=c++1z -fno-exceptions -Wall -Wextra -Wvla -Wdate-time -Wshift-overflow=2 -Wduplicated-cond -Wno-stringop-overflow -Wno-format-overflow -D_REENTRANT -fPIC -DQT_NO_LINKED_LIST -DQT_NO_LINKED_LIST -DQT_NO_JAVA_STYLE_ITERATORS -DQT_NO_CAST_TO_ASCII -DQT_NO_CAST_FROM_ASCII -DQT_NO_NARROWING_CONVERSIONS_IN_CONNECT -DQT_USE_QSTRINGBUILDER -DQT_NO_EXCEPTIONS -D_LARGEFILE64_SOURCE -D_LARGEFILE_SOURCE -DQT_NO_DEBUG -DQT_QMLDEVTOOLS_LIB -DQT_CORE_LIB -I. -I../shared -I../../include -I../../include/QtQml -I../../include/QtQml/5.15.3 -I../../include/QtQml/5.15.3/QtQml -I/usr/include/qt5/QtCore/5.15.3 -I/usr/include/qt5/QtCore/5.15.3/QtCore -I/usr/include/qt5 -I/usr/include/qt5/QtCore -I.moc -I/usr/lib64/qt5/mkspecs/linux-g++ -o .obj/qmlcachegen.o qmlcachegen.cpp cd ../../src/qml; g++ -c -pipe -Wno-expansion-to-defined -flto -ffat-lto-objects -O2 -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mcpu=power8 -mtune=power8 -fasynchronous-unwind-tables -fstack-clash-protection -std=c++1z -fvisibility=hidden -fvisibility-inlines-hidden -fno-exceptions -Wall -Wextra -Wno-expansion-to-defined -Wvla -Wdate-time -Wshift-overflow=2 -Wduplicated-cond -Wno-stringop-overflow -Wno-format-overflow -D_REENTRANT -fPIC -DQT_NO_LINKED_LIST -DQT_NO_LINKED_LIST -DQT_NO_JAVA_STYLE_ITERATORS -DQT_NO_URL_CAST_FROM_STRING -DQT_NO_INTEGER_EVENT_COORDINATES -DQT_NO_FOREACH -DWTF_EXPORT_PRIVATE= -DJS_EXPORT_PRIVATE= -DENABLE_ASSEMBLER_WX_EXCLUSIVE=1 -DWTFReportAssertionFailure=qmlWTFReportAssertionFailure -DWTFReportAssertionFailureWithMessage=qmlWTFReportAssertionFailureWithMessage -DWTFReportBacktrace=qmlWTFReportBacktrace -DWTFInvokeCrashHook=qmlWTFInvokeCrashHook -DENABLE_LLINT=0 -DENABLE_DFG_JIT=0 -DENABLE_DFG_JIT_UTILITY_METHODS=1 -DENABLE_JIT_CONSTANT_BLINDING=0 -DBUILDING_QT__ -DWTF_USE_UDIS86=0 -DNDEBUG -DQT_NO_NARROWING_CONVERSIONS_IN_CONNECT -DQT_BUILD_QML_LIB -DQT_BUILDING_QT -DQT_NO_CAST_TO_ASCII -DQT_ASCII_CAST_WARNINGS -DQT_MOC_COMPAT -DQT_USE_QSTRINGBUILDER -DQT_DEPRECATED_WARNINGS -DQT_DISABLE_DEPRECATED_BEFORE=0x050000 -DQT_DEPRECATED_WARNINGS_SINCE=0x060000 -DQT_NO_EXCEPTIONS -D_LARGEFILE64_SOURCE -D_LARGEFILE_SOURCE -DQT_NO_DEBUG -DQT_NETWORK_LIB -DQT_CORE_LIB -I. -Imemory -I. -Icompiler -I. -Ijsruntime -I. -Idebugger -Iqmldirparser -I. -Ianimations -I../3rdparty/masm/jit -I../3rdparty/masm/assembler -I../3rdparty/masm/runtime -I../3rdparty/masm/wtf -I../3rdparty/masm/stubs -I../3rdparty/masm/stubs/runtime -I../3rdparty/masm/stubs/wtf -I../3rdparty/masm -I../3rdparty/masm/disassembler -I../3rdparty/masm/disassembler/udis86 -I../../include -I../../include/QtQml -I../../include/QtQml/5.15.3 -I../../include/QtQml/5.15.3/QtQml -I.generated -I. -I.tracegen -I/usr/include/qt5/QtCore/5.15.3 -I/usr/include/qt5/QtCore/5.15.3/QtCore -I/usr/include/qt5 -I/usr/include/qt5/QtNetwork -I/usr/include/qt5/QtCore -I.moc -I/usr/lib64/qt5/mkspecs/linux-g++ -o .obj/qv4codegen.o compiler/qv4codegen.cpp; cd - cd ../../src/qml; g++ -c -pipe -Wno-expansion-to-defined -flto -ffat-lto-objects -O2 -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mcpu=power8 -mtune=power8 -fasynchronous-unwind-tables -fstack-clash-protection -std=c++1z -fvisibility=hidden -fvisibility-inlines-hidden -fno-exceptions -Wall -Wextra -Wno-expansion-to-defined -Wvla -Wdate-time -Wshift-overflow=2 -Wduplicated-cond -Wno-stringop-overflow -Wno-format-overflow -D_REENTRANT -fPIC -DQT_NO_LINKED_LIST -DQT_NO_LINKED_LIST -DQT_NO_JAVA_STYLE_ITERATORS -DQT_NO_URL_CAST_FROM_STRING -DQT_NO_INTEGER_EVENT_COORDINATES -DQT_NO_FOREACH -DWTF_EXPORT_PRIVATE= -DJS_EXPORT_PRIVATE= -DENABLE_ASSEMBLER_WX_EXCLUSIVE=1 -DWTFReportAssertionFailure=qmlWTFReportAssertionFailure -DWTFReportAssertionFailureWithMessage=qmlWTFReportAssertionFailureWithMessage -DWTFReportBacktrace=qmlWTFReportBacktrace -DWTFInvokeCrashHook=qmlWTFInvokeCrashHook -DENABLE_LLINT=0 -DENABLE_DFG_JIT=0 -DENABLE_DFG_JIT_UTILITY_METHODS=1 -DENABLE_JIT_CONSTANT_BLINDING=0 -DBUILDING_QT__ -DWTF_USE_UDIS86=0 -DNDEBUG -DQT_NO_NARROWING_CONVERSIONS_IN_CONNECT -DQT_BUILD_QML_LIB -DQT_BUILDING_QT -DQT_NO_CAST_TO_ASCII -DQT_ASCII_CAST_WARNINGS -DQT_MOC_COMPAT -DQT_USE_QSTRINGBUILDER -DQT_DEPRECATED_WARNINGS -DQT_DISABLE_DEPRECATED_BEFORE=0x050000 -DQT_DEPRECATED_WARNINGS_SINCE=0x060000 -DQT_NO_EXCEPTIONS -D_LARGEFILE64_SOURCE -D_LARGEFILE_SOURCE -DQT_NO_DEBUG -DQT_NETWORK_LIB -DQT_CORE_LIB -I. -Imemory -I. -Icompiler -I. -Ijsruntime -I. -Idebugger -Iqmldirparser -I. -Ianimations -I../3rdparty/masm/jit -I../3rdparty/masm/assembler -I../3rdparty/masm/runtime -I../3rdparty/masm/wtf -I../3rdparty/masm/stubs -I../3rdparty/masm/stubs/runtime -I../3rdparty/masm/stubs/wtf -I../3rdparty/masm -I../3rdparty/masm/disassembler -I../3rdparty/masm/disassembler/udis86 -I../../include -I../../include/QtQml -I../../include/QtQml/5.15.3 -I../../include/QtQml/5.15.3/QtQml -I.generated -I. -I.tracegen -I/usr/include/qt5/QtCore/5.15.3 -I/usr/include/qt5/QtCore/5.15.3/QtCore -I/usr/include/qt5 -I/usr/include/qt5/QtNetwork -I/usr/include/qt5/QtCore -I.moc -I/usr/lib64/qt5/mkspecs/linux-g++ -o .obj/qqmljsparser.o qqmljsparser.cpp; cd -
And -fno-ipa-modref added to those 3 LTO object command lines doesn't help.
In the LTO build, => 0x000000010004fbec <_ZN3QV48Compiler7Codegen5visitEPN6QQmlJS3AST14BreakStatementE+236>: ld r3,56(r1) 0x000000010004fbf0 <_ZN3QV48Compiler7Codegen5visitEPN6QQmlJS3AST14BreakStatementE+240>: li r9,0 0x000000010004fbf4 <_ZN3QV48Compiler7Codegen5visitEPN6QQmlJS3AST14BreakStatementE+244>: mr r31,r4 0x000000010004fbf8 <_ZN3QV48Compiler7Codegen5visitEPN6QQmlJS3AST14BreakStatementE+248>: cmpdi cr4,r9,0 seems to be the problem, this essentially hardcodes the 3196 if (!target.linkLabel.isValid()) { test to be true (aka target.linkLabel.generator == NULL). In *.optimized dump it is still correct. Note, there is first the flow->getUnwindTarget(type, label) call which returns that { generator, index } pair (generator is non-NULL), there is 107 BytecodeGenerator::Label l = flow->getUnwindTarget(type, label); 108 if (l.isValid()) 109 return UnwindTarget{l, level}; a generator != NULL check, then some atomics in ~QString (but -1 is loaded, so it doesn't do really anything, but performs also some comparisons), and finally that target.linkLabel.isValid() comparison where target.linkLabel.generator is that l.generator from that indirect method call.
I think it is a fwprop1 bug. In cse1 dump, we have: (call_insn 162 161 972 10 (parallel [ (set (reg:TI 3 3) (call (mem:SI (reg:DI 97 ctr) [0 *OBJ_TYPE_REF(_40;flow_128->3B) S4 A8]) (const_int 0 [0]))) (use (const_int 0 [0])) (set (reg:DI 2 2) (unspec:DI [ (const_int 24 [0x18]) ] UNSPEC_TOCSLOT)) (clobber (reg:DI 96 lr)) ]) "../../src/qml/../../include/QtQml/5.15.3/QtQml/private/../../../../../src/qml/compiler/qv4compilercontrolflow_p.h":107:63 834 {*call_value_indirect_elfv2di} (expr_list:REG_DEAD (reg:DI 97 ctr) (expr_list:REG_DEAD (reg:DI 12 12) (expr_list:REG_DEAD (reg:DI 5 5) (expr_list:REG_CALL_DECL (nil) (nil))))) (expr_list (use (reg:DI 12 12)) (expr_list:DI (use (reg:DI 3 3)) (expr_list:SI (use (reg:DI 4 4)) (expr_list:DI (use (reg:DI 5 5)) (nil)))))) (insn 972 162 973 10 (set (reg:DI 329 [ l ]) (reg:DI 3 3)) "../../src/qml/../../include/QtQml/5.15.3/QtQml/private/../../../../../src/qml/compiler/qv4compilercontrolflow_p.h":107:63 683 {*movdi_internal64} (expr_list:REG_DEAD (reg:DI 3 3) (nil))) (insn 973 972 164 10 (set (reg:DI 330 [ l+8 ]) (reg:DI 4 4 [+8 ])) "../../src/qml/../../include/QtQml/5.15.3/QtQml/private/../../../../../src/qml/compiler/qv4compilercontrolflow_p.h":107:63 683 {*movdi_internal64} (expr_list:REG_DEAD (reg:DI 4 4 [+8 ]) (nil))) (insn 164 973 165 10 (set (reg/f:DI 189 [ l$generator ]) (reg:DI 329 [ l ])) "../../src/qml/../../include/QtQml/5.15.3/QtQml/private/../../../../../src/qml/compiler/qv4compilercontrolflow_p.h":107:63 683 {*movdi_internal64} (expr_list:REG_DEAD (reg:DI 329 [ l ]) (nil))) ... (insn 171 170 172 10 (set (reg:CC 226) (compare:CC (reg:DI 329 [ l ]) (const_int 0 [0]))) "../../src/qml/../../include/QtQml/5.15.3/QtQml/private/../../../../../src/qml/compiler/qv4compilercontrolflow_p.h":108:13 863 {*cmpdi_signed} (nil)) (jump_insn 172 171 173 10 (set (pc) (if_then_else (eq (reg:CC 226) (const_int 0 [0])) (label_ref 183) (pc))) "../../src/qml/../../include/QtQml/5.15.3/QtQml/private/../../../../../src/qml/compiler/qv4compilercontrolflow_p.h":108:13 952 {*cbranch} (expr_list:REG_DEAD (reg:CC 226) (int_list:REG_BR_PROB 1014686028 (nil))) -> 183) (note 173 172 174 11 [bb 11] NOTE_INSN_BASIC_BLOCK) ... (insn 176 175 177 11 (set (reg:SI 138 [ target$index ]) (subreg:SI (reg:DI 330 [ l+8 ]) 0)) "../../src/qml/../../include/QtQml/5.15.3/QtQml/private/../../../../../src/qml/compiler/qv4compilercontrolflow_p.h":109:45 557 {*movsi_internal1} (expr_list:REG_DEAD (reg:DI 330 [ l+8 ]) (nil))) ... (insn 179 178 974 11 (clobber (reg:DI 329 [ l ])) "../../src/qml/../../include/QtQml/5.15.3/QtQml/private/../../../../../src/qml/compiler/qv4compilercontrolflow_p.h":109:45 -1 (expr_list:REG_UNUSED (reg:DI 329 [ l ]) (nil))) (insn 974 179 180 11 (clobber (reg:DI 330 [ l+8 ])) "../../src/qml/../../include/QtQml/5.15.3/QtQml/private/../../../../../src/qml/compiler/qv4compilercontrolflow_p.h":109:45 -1 (expr_list:REG_UNUSED (reg:DI 330 [ l+8 ]) (nil))) ... (insn 7 180 183 11 (set (reg/v/f:DI 139 [ target$linkLabel$generator ]) (reg/f:DI 189 [ l$generator ])) "../../src/qml/../../include/QtQml/5.15.3/QtQml/private/../../../../../src/qml/compiler/qv4compilercontrolflow_p.h":107:63 683 {*movdi_internal64} (expr_list:REG_DEAD (reg/f:DI 189 [ l$generator ]) (nil))) but fwprop1 happily removes insn 164 and changes insn 7 to: (insn 7 180 183 11 (set (reg/v/f:DI 139 [ target$linkLabel$generator ]) (reg:DI 329 [ l ])) "../../src/qml/../../include/QtQml/5.15.3/QtQml/private/../../../../../src/qml/compiler/qv4compilercontrolflow_p.h":107:63 683 {*movdi_internal64} (nil)) If there weren't the clobbers (insn 179 and 974), that wouldn't be a problem. Then during cprop3 those clobbers are removed but probably something remains in DF info. And finally init_regs pass adds: (insn 1028 1014 1029 11 (clobber (reg:DI 340 [ l ])) -1 (nil)) (insn 1029 1028 996 11 (set (reg:DI 340 [ l ]) (const_int 0 [0])) -1 (nil)) before insn 996 which is the r340 != 0 comparison formerly after the clobbers.
This bug appears to have been reported against 'rawhide' during the Fedora Linux 37 development cycle. Changing version to 37.
This message is a reminder that Fedora Linux 37 is nearing its end of life. Fedora will stop maintaining and issuing updates for Fedora Linux 37 on 2023-12-05. It is Fedora's policy to close all bug reports from releases that are no longer maintained. At that time this bug will be closed as EOL if it remains open with a 'version' of '37'. Package Maintainer: If you wish for this bug to remain open because you plan to fix it in a currently maintained version, change the 'version' to a later Fedora Linux version. Note that the version field may be hidden. Click the "Show advanced fields" button if you do not see it. Thank you for reporting this issue and we are sorry that we were not able to fix it before Fedora Linux 37 is end of life. If you would still like to see this bug fixed and are able to reproduce it against a later version of Fedora Linux, you are encouraged to change the 'version' to a later version prior to this bug being closed.
Fedora Linux 37 entered end-of-life (EOL) status on None. Fedora Linux 37 is no longer maintained, which means that it will not receive any further security or bug fix updates. As a result we are closing this bug. If you can reproduce this bug against a currently maintained version of Fedora Linux please feel free to reopen this bug against that version. Note that the version field may be hidden. Click the "Show advanced fields" button if you do not see the version field. If you are unable to reopen this bug, please file a new report against an active release. Thank you for reporting this bug and we are sorry it could not be fixed.