FS#71493 - [qt5-base] std::exchange() is undefined in qsharedpointer

Attached to Project: Arch Linux
Opened by bartus (bartus) - Tuesday, 13 July 2021, 07:07 GMT
Last edited by Antonio Rojas (arojas) - Tuesday, 13 July 2021, 08:52 GMT
Task Type Bug Report
Category Packages: Extra
Status Closed
Assigned To Antonio Rojas (arojas)
Architecture All
Severity High
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 1
Private No

Details

Description: Unable to build qt app (e.g: `AUR/qownnotes`) against `qt5-base:5.15.2+kde+r209-1`

`gcc:11` complains about undefined function `exchange` of namespace `std`

Perhaps missing `<utility>` header?

```
In file included from /usr/include/qt/QtCore/qsharedpointer.h:48,
from /usr/include/qt/QtGui/qpagelayout.h:44,
from /usr/include/qt/QtGui/qpagedpaintdevice.h:45,
from /usr/include/qt/QtPrintSupport/qprinter.h:46,
from /usr/include/qt/QtPrintSupport/QPrinter:1,
from ./utils/misc.h:18,
from main.cpp:4:
/usr/include/qt/QtCore/qsharedpointer_impl.h: In function ‘std::shared_ptr<_Tp> qobject_pointer_cast(std::shared_ptr<_Tp>&&)’:
/usr/include/qt/QtCore/qsharedpointer_impl.h:1019:40: error: ‘exchange’ is not a member of ‘std’
1019 | return std::shared_ptr<X>(std::exchange(src, nullptr), castResult);
| ^~~~~~~~
make: *** [Makefile:2409: main.o] Error 1
```

Additional info:
* package version: qt5-base:5.15.2+kde+r209-1
* last working version: qt5-base:5.15.2+kde+r207-2

This task depends upon

Closed by  Antonio Rojas (arojas)
Tuesday, 13 July 2021, 08:52 GMT
Reason for closing:  Fixed
Additional comments about closing:  qt5-base 5.15.2+kde+r210

Loading...