Summary: | kde-plasma/plasma-workspace-6.0.3 w/ -fno-delete-null-pointer-checks: /usr/include/qt6/QtWaylandClient/qwaylandclientextension.h:57:32: error: ‘(QtWayland::kde_output_order_v1::destroy != 0)’ is not a constant expression | ||
---|---|---|---|
Product: | Gentoo Linux | Reporter: | jms <jms.gentoo> |
Component: | Current packages | Assignee: | Gentoo Toolchain Maintainers <toolchain> |
Status: | UNCONFIRMED --- | ||
Severity: | normal | CC: | arsen, jms.gentoo |
Priority: | Normal | ||
Version: | unspecified | ||
Hardware: | All | ||
OS: | Linux | ||
See Also: | https://gcc.gnu.org/bugzilla/show_bug.cgi?id=100313 | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- | |
Attachments: |
build log
emerge --info from portagebuild/portage/kde-plasma/plasma-workspace-6.0.3/work/plasma-workspace-6.0.3/libkworkspace from portagebuild/portage/kde-plasma/plasma-workspace-6.0.3/work/plasma-workspace-6.0.3/libkworkspace outputorderwatcher.cpp.ii |
Created attachment 889476 [details]
emerge --info
I had done an emerge -pvuND @ world prior attempting to test plasma6. I had plasma 5 emerge @world fail when trying to emerge plasma-workspace. emerge -pvq =kde-plasma/plasma-workspace-6.0.3::gentoo [ebuild NS ] kde-plasma/plasma-workspace-6.0.3 [5.27.11] USE="calendar fontconfig (policykit) semantic-desktop wallpaper-metadata -appstream -debug -geolocation -gps -handbook -screencast* -systemd% -telemetry -test" [blocks B ] kde-plasma/plasma-workspace:5 ("kde-plasma/plasma-workspace:5" is soft blocking kde-plasma/plasma-workspace-6.0.3) [blocks B ] kde-plasma/libkworkspace:5 ("kde-plasma/libkworkspace:5" is soft blocking kde-plasma/plasma-workspace-6.0.3) * Error: The above package list contains packages which cannot be * installed at the same time on the same system. (kde-plasma/plasma-workspace-5.27.11:5/5::gentoo, installed) pulled in by >=kde-plasma/plasma-workspace-5.27.11:5 required by (kde-plasma/plasma-meta-5.27.11:5/5::gentoo, installed) USE="bluetooth browser-integration crash-handler crypt cups desktop-portal display-manager elogind grub gtk kwallet legacy-systray networkmanager pulseaudio sddm smart wallpapers -accessibility -colord -discover (-firewall) -flatpak -handbook -plymouth -sdk -systemd -thunderbolt" ABI_X86="(64)" >=kde-plasma/plasma-workspace-5.27.11:5 required by (kde-plasma/plasma-browser-integration-5.27.11:5/5::gentoo, installed) USE="-debug" ABI_X86="(64)" >=kde-plasma/plasma-workspace-5.27.11:5[screencast?] (>=kde-plasma/plasma-workspace-5.27.11:5[screencast]) required by (kde-plasma/plasma-desktop-5.27.11:5/5::gentoo, installed) USE="kaccounts screencast semantic-desktop -debug -handbook -ibus -scim -test" ABI_X86="(64)" (kde-plasma/plasma-workspace-6.0.3:6/6::gentoo, ebuild scheduled for merge) pulled in by kde-plasma/plasma-workspace required by (virtual/notification-daemon-0:0/0::gentoo, installed) USE="kde -gnome" ABI_X86="(64)" =kde-plasma/plasma-workspace-6.0.3::gentoo (kde-plasma/libkworkspace-5.27.11:5/5::gentoo, installed) pulled in by >=kde-plasma/libkworkspace-5.27.11:5 required by (kde-plasma/khotkeys-5.27.11:5/5::gentoo, installed) USE="-debug -handbook" ABI_X86="(64)" >=kde-plasma/libkworkspace-5.27.11:5 required by (kde-plasma/plasma-desktop-5.27.11:5/5::gentoo, installed) USE="kaccounts screencast semantic-desktop -debug -handbook -ibus -scim -test" ABI_X86="(64)" >=kde-plasma/libkworkspace-5.27.11:5 required by (kde-plasma/powerdevil-5.27.11:5/5::gentoo, installed) USE="brightness-control wireless -caps -debug -handbook" ABI_X86="(64)" >=kde-plasma/libkworkspace-5.27.11:5 required by (kde-plasma/plasma-workspace-5.27.11:5/5::gentoo, installed) USE="calendar fontconfig (policykit) screencast semantic-desktop wallpaper-metadata -appstream -debug -geolocation -gps -handbook -telemetry -test" ABI_X86="(64)" I wonder how I can have this; In file included from [01m[K/usr/include/qt6/QtWaylandClient/QWaylandClientExtension:1[m[K, from [01m[K/home/data/portagebuild/portage/kde-plasma/plasma-workspace-6.0.3/work/plasma-workspace-6.0.3/libkworkspace/outputorderwatcher.cpp K/usr ? K/home/ ? Hint:
> 57 | if constexpr (destruct != nullptr) {
> | ~~~~~~~~~^~~~~~~~~~
Please don't use options like -fno-delete-null-pointer-checks unless you're comfortable at least starting to debug failures that result (and able to identify they're related). Now, as for the actual issue: this is curious because I wouldn't expect -fno-delete-null-pointer-checks to work like this, but I'm not an expert on how constexpr is evaluated. Arsen? Many thanks to Andreas Sturmlechner and Sam James I removed the -fno-delete-null-pointer-checks and -mabm so compile fine now. I can not find a valid reason why I did put that here (quite anold set-up). As it's not something I should do. (In reply to Sam James from comment #5) > Please don't use options like -fno-delete-null-pointer-checks unless you're > comfortable at least starting to debug failures that result (and able to > identify they're related). > > Now, as for the actual issue: this is curious because I wouldn't expect > -fno-delete-null-pointer-checks to work like this, but I'm not an expert on > how constexpr is evaluated. Arsen? hmm, this is odd, that value should be constexpr I think (given that its a template parameter and that it seems to be a function pointer). a preprocessed unit would be nice because I couldn't hand-craft a reproducer jms, could you run the failing gcc command manually in the build Dir but append -save-temps? Then upload outputorderwatcher.ii Created attachment 890489 [details]
from portagebuild/portage/kde-plasma/plasma-workspace-6.0.3/work/plasma-workspace-6.0.3/libkworkspace
Created attachment 890490 [details]
from portagebuild/portage/kde-plasma/plasma-workspace-6.0.3/work/plasma-workspace-6.0.3/libkworkspace
Hi, I changed in make.conf CFLAGS to: CFLAGS="-march=skylake -O2 -pipe -fno-delete-null-pointer-checks -mabm -save-temps" then did emerge -v1 =kde-plasma/plasma-workspace-6.0.3 and uploaded here files outputorderwatcher.cpp outputorderwatcher.h found in portagebuild/portage/kde-plasma/plasma-workspace-6.0.3/work/plasma-workspace-6.0.3/libkworkspace/ Will that do? Otherwise I am afraid you will have to be a bit more specific in your instructions. the only experience I had of gcc was to try compiling a hello world ages ago... I think the .i may be in portagebuild/portage/kde-plasma/plasma-workspace-6.0.3_build? Created attachment 890492 [details]
outputorderwatcher.cpp.ii
found in portagebuild/portage/kde-plasma/plasma-workspace-6.0.3/work/plasma-workspace-6.0.3_build/libkworkspace/CMakeFiles/kworkspace.dir/
thanks. minimal reproducer: template<auto foo = nullptr> void f() { if constexpr (foo != nullptr); } struct some_class { void member(); }; void g() { f<&some_class::member>(); } seems to be https://gcc.gnu.org/bugzilla/show_bug.cgi?id=100313 (thanks, andrew :-) ) |
Created attachment 889475 [details] build log hi, testing plasma 6 on a laptop, using gentoo repository unmasked using kde overlay keywords from /var/db/repos/kde/Documentation/package.accept_keywords/kde-frameworks-6.0.keywords /var/db/repos/kde/Documentation/package.accept_keywords/kde-plasma-6.0.keywords /var/db/repos/kde/Documentation/package.accept_keywords/kde-gear-24.02.keywords added -kf6compat /etc/portage/profile/use.mask kf6compat to global use I can't get past kde-plasma/plasma-workspace-6.0.3