OS/2, eCS & ArcaOS - Technical > Programming
GCC - updates
Paul Smedley:
OK I think I've found the root cause of this...
Dave Yeo:
Are you also updating Qt for C++20?
--- Code: ---:/work/dooble-dry/Source/dooble.cc
In file included from L:/QT6-6.2.X/include/QtCore/qfuture.h:45,
from L:/QT6-6.2.X/include/QtCore/QtCore:92,
from L:/QT6-6.2.X/include/QtConcurrent/QtConcurrentDepends:3,
from L:/QT6-6.2.X/include/QtConcurrent/QtConcurrent:3,
from K:/work/dooble-dry/Source/dooble.cc:41:
L:/QT6-6.2.X/include/QtCore/qfutureinterface.h:451:37: error: template-id not al
lowed for constructor in C++20 [-Werror=template-id-cdtor]
451 | explicit QFutureInterface<void>(State initialState = NoState)
| ^~~~~
L:/QT6-6.2.X/include/QtCore/qfutureinterface.h:451:37: note: remove the '< >'
cc1plus.exe: all warnings being treated as errors
make: *** [Makefile:12688: temp/obj/dooble.obj] Error 1
--- End code ---
Paul Smedley:
--- Quote from: Paul Smedley on May 04, 2025, 02:11:17 am ---OK I think I've found the root cause of this...
--- End quote ---
OK https://smedley.id.au/tmp/gcc-15.1.0-os2-20250504.zip should fix the problems with filesystem support in libstdc++
The fix turned out to be pretty simple. I had recently set GCCOPT to -static-libgcc to avoid a dependency on gcc1.dll. However - libstdc++ is built with -shared-libgcc - and the flags conflict - so a bunch of configure tests were failing - which resulted in some broken functionality.
Paul Smedley:
--- Quote from: Dave Yeo on May 04, 2025, 03:28:58 am ---Are you also updating Qt for C++20?
--- Code: ---:/work/dooble-dry/Source/dooble.cc
In file included from L:/QT6-6.2.X/include/QtCore/qfuture.h:45,
from L:/QT6-6.2.X/include/QtCore/QtCore:92,
from L:/QT6-6.2.X/include/QtConcurrent/QtConcurrentDepends:3,
from L:/QT6-6.2.X/include/QtConcurrent/QtConcurrent:3,
from K:/work/dooble-dry/Source/dooble.cc:41:
L:/QT6-6.2.X/include/QtCore/qfutureinterface.h:451:37: error: template-id not al
lowed for constructor in C++20 [-Werror=template-id-cdtor]
451 | explicit QFutureInterface<void>(State initialState = NoState)
| ^~~~~
L:/QT6-6.2.X/include/QtCore/qfutureinterface.h:451:37: note: remove the '< >'
cc1plus.exe: all warnings being treated as errors
make: *** [Makefile:12688: temp/obj/dooble.obj] Error 1
--- End code ---
--- End quote ---
I wsan't planning on it - just remove -Werror from the makefiles..
Dave Yeo:
--- Quote from: Paul Smedley on May 04, 2025, 07:38:00 am ---
--- Quote from: Dave Yeo on May 04, 2025, 03:28:58 am ---Are you also updating Qt for C++20?
--- Code: ---:/work/dooble-dry/Source/dooble.cc
In file included from L:/QT6-6.2.X/include/QtCore/qfuture.h:45,
from L:/QT6-6.2.X/include/QtCore/QtCore:92,
from L:/QT6-6.2.X/include/QtConcurrent/QtConcurrentDepends:3,
from L:/QT6-6.2.X/include/QtConcurrent/QtConcurrent:3,
from K:/work/dooble-dry/Source/dooble.cc:41:
L:/QT6-6.2.X/include/QtCore/qfutureinterface.h:451:37: error: template-id not al
lowed for constructor in C++20 [-Werror=template-id-cdtor]
451 | explicit QFutureInterface<void>(State initialState = NoState)
| ^~~~~
L:/QT6-6.2.X/include/QtCore/qfutureinterface.h:451:37: note: remove the '< >'
cc1plus.exe: all warnings being treated as errors
make: *** [Makefile:12688: temp/obj/dooble.obj] Error 1
--- End code ---
--- End quote ---
I wsan't planning on it - just remove -Werror from the makefiles..
--- End quote ---
A simple good idea. Even better, any idea where the -Werror comes from?
Navigation
[0] Message Index
[#] Next page
[*] Previous page
Go to full version