Bug 393395 - " 'qOverload': undeclared identifier" error during build on Windows 10 using MSVC 2017 and Qt 5.10.1
Summary: " 'qOverload': undeclared identifier" error during build on Windows 10 using ...
Status: RESOLVED FIXED
Alias: None
Product: Falkon
Classification: Applications
Component: general (other bugs)
Version First Reported In: unspecified
Platform: Microsoft Windows Microsoft Windows
: NOR normal
Target Milestone: ---
Assignee: David Rosca
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2018-04-22 14:23 UTC by yaralikurt15
Modified: 2018-04-22 20:05 UTC (History)
0 users

See Also:
Latest Commit:
Version Fixed/Implemented In:
Sentry Crash Report:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description yaralikurt15 2018-04-22 14:23:18 UTC
Build fails on src/lib/webengine/webpage.cpp like this:

[152/383] Building CXX object src\lib\CMakeFiles\FalkonPrivate.dir\qrc_breeze-fallback.cpp.obj
[153/383] Building CXX object src\lib\CMakeFiles\FalkonPrivate.dir\qrc_html.cpp.obj
[154/383] Building CXX object src\lib\CMakeFiles\FalkonPrivate.dir\webengine\webhittestresult.cpp.obj
[155/383] Building CXX object src\lib\CMakeFiles\FalkonPrivate.dir\webengine\webpage.cpp.obj
FAILED: src/lib/CMakeFiles/FalkonPrivate.dir/webengine/webpage.cpp.obj
D:\PROGRA~1\MICROS~1\2017\COMMUN~1\VC\Tools\MSVC\1413~1.261\bin\Hostx64\x64\cl.exe  /nologo /TP -DFALKON_SHAREDLIBRARY -DFalkonPrivate_EXPORTS -DQT_CORE_LIB -DQT_DBUS_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_NO_CAST_TO_ASCII -DQT_NO_DEBUG -DQT_NO_URL_CAST_FROM_STRING -DQT_POSITIONING_LIB -DQT_PRINTSUPPORT_LIB -DQT_QML_LIB -DQT_QUICKWIDGETS_LIB -DQT_QUICK_LIB -DQT_SQL_LIB -DQT_USE_QSTRINGBUILDER -DQT_WEBCHANNEL_LIB -DQT_WEBENGINECORE_LIB -DQT_WEBENGINEWIDGETS_LIB -DQT_WIDGETS_LIB -DQT_WINEXTRAS_LIB -DUNICODE -DW7API -DWIN32_LEAN_AND_MEAN -DWINVER=0x0600 -D_CRT_NONSTDC_NO_DEPRECATE -D_CRT_SECURE_NO_DEPRECATE -D_CRT_SECURE_NO_WARNINGS -D_SCL_SECURE_NO_WARNINGS -D_UNICODE -D_USE_MATH_DEFINES -D_WIN32_IE=0x0600 -D_WIN32_WINNT=0x0600 -D_WIN32_WINNT=0x0A00 -Isrc\lib -IE:\kde2\download\git\extragear\falkon\src\lib -Isrc\lib\FalkonPrivate_autogen\include -IE:\kde2\download\git\extragear\falkon\src\lib\3rdparty -IE:\kde2\download\git\extragear\falkon\src\lib\adblock -IE:\kde2\download\git\extragear\falkon\src\lib\app -IE:\kde2\download\git\extragear\falkon\src\lib\autofill -IE:\kde2\download\git\extragear\falkon\src\lib\bookmarks -IE:\kde2\download\git\extragear\falkon\src\lib\cookies -IE:\kde2\download\git\extragear\falkon\src\lib\downloads -IE:\kde2\download\git\extragear\falkon\src\lib\history -IE:\kde2\download\git\extragear\falkon\src\lib\navigation -IE:\kde2\download\git\extragear\falkon\src\lib\network -IE:\kde2\download\git\extragear\falkon\src\lib\notifications -IE:\kde2\download\git\extragear\falkon\src\lib\opensearch -IE:\kde2\download\git\extragear\falkon\src\lib\other -IE:\kde2\download\git\extragear\falkon\src\lib\plugins -IE:\kde2\download\git\extragear\falkon\src\lib\popupwindow -IE:\kde2\download\git\extragear\falkon\src\lib\preferences -IE:\kde2\download\git\extragear\falkon\src\lib\session -IE:\kde2\download\git\extragear\falkon\src\lib\sidebar -IE:\kde2\download\git\extragear\falkon\src\lib\tabwidget -IE:\kde2\download\git\extragear\falkon\src\lib\tools -IE:\kde2\download\git\extragear\falkon\src\lib\webengine -IE:\kde2\download\git\extragear\falkon\src\lib\webtab -IE:\kde2\include -IE:\kde2\include\qt5 -IE:\kde2\include\qt5\QtWidgets -IE:\kde2\include\qt5\QtGui -IE:\kde2\include\qt5\QtANGLE -IE:\kde2\include\qt5\QtCore -IE:\kde2\.\mkspecs\win32-msvc -IE:\kde2\include\qt5\QtWebEngineWidgets -IE:\kde2\include\qt5\QtWebEngineCore -IE:\kde2\include\qt5\QtQuick -IE:\kde2\include\qt5\QtQml -IE:\kde2\include\qt5\QtNetwork -IE:\kde2\include\qt5\QtWebChannel -IE:\kde2\include\qt5\QtPositioning -IE:\kde2\include\qt5\QtPrintSupport -IE:\kde2\include\qt5\QtSql -IE:\kde2\include\qt5\QtQuickWidgets -IE:\kde2\include\qt5\QtWinExtras -IE:\kde2\include\qt5\QtDBus /DWIN32 /D_WINDOWS /W3 /GR /EHsc /IE:\kde2\include /wd4250 /wd4251 /wd4396 /wd4661 /MD /O2 /Ob2 /DNDEBUG /IE:\kde2\include   -std:c++14 /showIncludes /Fosrc\lib\CMakeFiles\FalkonPrivate.dir\webengine\webpage.cpp.obj /Fdsrc\lib\CMakeFiles\FalkonPrivate.dir\ /FS -c E:\kde2\download\git\extragear\falkon\src\lib\webengine\webpage.cpp
E:\kde2\download\git\extragear\falkon\src\lib\webengine\webpage.cpp(536): error C2065: 'qOverload': undeclared identifier
E:\kde2\download\git\extragear\falkon\src\lib\webengine\webpage.cpp(536): error C2059: syntax error: 'const'
E:\kde2\download\git\extragear\falkon\src\lib\webengine\webpage.cpp(583): error C2065: 'qOverload': undeclared identifier
E:\kde2\download\git\extragear\falkon\src\lib\webengine\webpage.cpp(583): error C2059: syntax error: 'const'
E:\kde2\download\git\extragear\falkon\src\lib\webengine\webpage.cpp(638): error C2065: 'qOverload': undeclared identifier
E:\kde2\download\git\extragear\falkon\src\lib\webengine\webpage.cpp(638): error C2059: syntax error: 'const'
[156/383] Building CXX object src\lib\CMakeFiles\FalkonPrivate.dir\webengine\webview.cpp.obj
[157/383] Building CXX object src\lib\CMakeFiles\FalkonPrivate.dir\qrc_icons.cpp.obj
[158/383] Building CXX object src\lib\CMakeFiles\FalkonPrivate.dir\webengine\webscrollbar.cpp.obj
[159/383] Building CXX object src\lib\CMakeFiles\FalkonPrivate.dir\webtab\tabbedwebview.cpp.obj
[160/383] Building CXX object src\lib\CMakeFiles\FalkonPrivate.dir\other\registerqappassociation.cpp.obj
[161/383] Building CXX object src\lib\CMakeFiles\FalkonPrivate.dir\webengine\webscrollbarmanager.cpp.obj
[162/383] Building CXX object src\lib\CMakeFiles\FalkonPrivate.dir\webtab\webtab.cpp.obj
[163/383] Building CXX object src\lib\CMakeFiles\FalkonPrivate.dir\tools\progressbar.cpp.obj
[164/383] Building CXX object src\lib\CMakeFiles\FalkonPrivate.dir\FalkonPrivate_autogen\mocs_compilation.cpp.obj
ninja: build stopped: subcommand failed.

This is not a Falkon bug actually, but A Qt bug maybe. Because there is a filed bug on Qt about this here:

https://bugreports.qt.io/browse/QTBUG-61667

Apparently, MSVC doesn't support a C++14 feature and cannot identify qoverload().
Comment 1 David Rosca 2018-04-22 14:51:48 UTC
Git commit 1290354f1476da71a866b1c1de828e08641d2e3d by David Rosca.
Committed on 22/04/2018 at 14:51.
Pushed by drosca into branch 'master'.

Use QOverload::of instead of qOverload

Fixes build with MSVC

M  +3    -3    src/lib/webengine/webpage.cpp

https://commits.kde.org/falkon/1290354f1476da71a866b1c1de828e08641d2e3d
Comment 2 yaralikurt15 2018-04-22 20:05:49 UTC
Fixed. Thanks.