[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#1008391: qtbase5-dev: Build failures with GCC 11 when including qtconcurrentthreadengine.h



Package: qtbase5-dev
Version: 5.15.2+dfsg-15
Severity: normal
Tags: patch

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256

Hi, when compiling a program that makes use of the qtconcurrentthreadengine.h
header with GCC 11 compilation failures occur. This issue has been already
reported and fixed upstream, but it will take a lot of time before the fix
lands in a point release of the open source Qt version. You can find the bug
report here: https://codereview.qt-project.org/c/qt/qtbase/+/339417

It's a two line patch, and should be trivial to apply.

I've encountered this issue when building yuzu, a package I'm working on.

Thanks :)


- -- System Information:
Debian Release: bookworm/sid
  APT prefers testing
  APT policy: (990, 'testing'), (500, 'unstable'), (1, 'experimental')
Architecture: amd64 (x86_64)

Kernel: Linux 5.16.0-5-amd64 (SMP w/4 CPU threads; PREEMPT)
Kernel taint flags: TAINT_PROPRIETARY_MODULE, TAINT_OOT_MODULE, TAINT_UNSIGNED_MODULE
Locale: LANG=it_IT.UTF-8, LC_CTYPE=it_IT.UTF-8 (charmap=UTF-8), LANGUAGE not set
Shell: /bin/sh linked to /usr/bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled

Versions of packages qtbase5-dev depends on:
pn  libegl-dev                     <none>
pn  libgl-dev                      <none>
pn  libglu1-mesa-dev | libglu-dev  <none>
pn  libqt5concurrent5              <none>
ii  libqt5core5a                   5.15.2+dfsg-15
ii  libqt5dbus5                    5.15.2+dfsg-15
ii  libqt5gui5                     5.15.2+dfsg-15
ii  libqt5network5                 5.15.2+dfsg-15
ii  libqt5printsupport5            5.15.2+dfsg-15
ii  libqt5sql5                     5.15.2+dfsg-15
pn  libqt5test5                    <none>
ii  libqt5widgets5                 5.15.2+dfsg-15
ii  libqt5xml5                     5.15.2+dfsg-15
pn  libvulkan-dev                  <none>
pn  libxext-dev                    <none>
pn  qt5-qmake                      <none>
pn  qtbase5-dev-tools              <none>
pn  qtchooser                      <none>

Versions of packages qtbase5-dev recommends:
pn  libqt5opengl5-dev  <none>

Versions of packages qtbase5-dev suggests:
pn  default-libmysqlclient-dev  <none>
pn  firebird-dev                <none>
pn  libpq-dev                   <none>
pn  libsqlite3-dev              <none>
pn  unixodbc-dev                <none>

-----BEGIN PGP SIGNATURE-----

iIoEARYIADIWIQRm3vFSgpkMIZnvqAGooSioqxzuSQUCYj+DSRQcYW5kcmVhQHBh
cHBhY29kYS5pdAAKCRCooSioqxzuSdX7AQDzE0JywexOYKsCY2ihVOhMnh5FKWbT
GoJYTIQ6HvRRHgEA79+v3Lq7RlgonreT/ECVEkBOLcV07Gxge3J/mTsQdQo=
=2ZRd
-----END PGP SIGNATURE-----
From 659f7a06e91c04b239e3f4c0bcfccbe3581af1c3 Mon Sep 17 00:00:00 2001
From: Sona Kurazyan <sona.kurazyan@qt.io>
Date: Wed, 17 Mar 2021 16:04:00 +0100
Subject: [PATCH] Remove the unnecessary template parameter from the class specialization

This seems to cause errors when compiling with gcc-11. Although this is
most likely a compiler bug, specifiying the template parameter type in
this case isn't necessary.

Fixes: QTBUG-91909
Fixes: QTBUG-90568
Pick-to: 6.0 6.1 5.15
Change-Id: Ib231257ccb2e16cc533f23ca5840d31e26a66d53
Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
---

diff --git a/src/concurrent/qtconcurrentthreadengine.h b/src/concurrent/qtconcurrentthreadengine.h
index cbd8ad04..4cd5b85 100644
--- a/src/concurrent/qtconcurrentthreadengine.h
+++ b/src/concurrent/qtconcurrentthreadengine.h
@@ -256,8 +256,8 @@
 class ThreadEngineStarter<void> : public ThreadEngineStarterBase<void>
 {
 public:
-    ThreadEngineStarter<void>(ThreadEngine<void> *_threadEngine)
-    :ThreadEngineStarterBase<void>(_threadEngine) {}
+    ThreadEngineStarter(ThreadEngine<void> *_threadEngine)
+        : ThreadEngineStarterBase<void>(_threadEngine) {}
 
     void startBlocking()
     {

Reply to: