OS/2, eCS & ArcaOS - Technical > Programming

GCC - updates

<< < (24/26) > >>

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