puerts icon indicating copy to clipboard operation
puerts copied to clipboard

[UE] Bug: error: no template named 'result_of'

Open ankye opened this issue 5 months ago • 1 comments

前置阅读 | Pre-reading

Puer的版本 | Puer Version

Unreal_v1.0.6p1

UE的版本 | UE Version

5.3.2

发生在哪个平台 | Platform

Editor(mac)

错误信息 | Error Message

CompilerResultsLog: ^ CompilerResultsLog: /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/stdio.h:180:1: note: 'sprintf' has been explicitly marked deprecated here CompilerResultsLog: __deprecated_msg("This function is provided for compatibility reasons only. Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead.") CompilerResultsLog: ^ CompilerResultsLog: /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h:215:48: note: expanded from macro '__deprecated_msg' CompilerResultsLog: #define __deprecated_msg(_msg) attribute((deprecated(_msg))) CompilerResultsLog: ^ CompilerResultsLog: In file included from /Users/ankye/ue5/puertstest/Plugins/Puerts/Intermediate/Build/Mac/x64/UnrealEditor/Development/JsEnv/Module.JsEnv.3.cpp:22: CompilerResultsLog: In file included from /Users/ankye/ue5/puertstest/Plugins/Puerts/Source/JsEnv/Private/V8InspectorImpl.cpp:39: CompilerResultsLog: In file included from /Users/ankye/ue5/puertstest/Plugins/Puerts/ThirdParty/Include/websocketpp/websocketpp/config/asio_no_tls.hpp:32: CompilerResultsLog: In file included from /Users/ankye/ue5/puertstest/Plugins/Puerts/ThirdParty/Include/websocketpp/websocketpp/transport/asio/endpoint.hpp:32: CompilerResultsLog: In file included from /Users/ankye/ue5/puertstest/Plugins/Puerts/ThirdParty/Include/websocketpp/websocketpp/transport/asio/connection.hpp:31: CompilerResultsLog: In file included from /Users/ankye/ue5/puertstest/Plugins/Puerts/ThirdParty/Include/websocketpp/websocketpp/transport/asio/base.hpp:31: CompilerResultsLog: In file included from /Users/ankye/ue5/puertstest/Plugins/Puerts/ThirdParty/Include/websocketpp/websocketpp/common/asio.hpp:52: CompilerResultsLog: In file included from /Users/ankye/ue5/puertstest/Plugins/Puerts/ThirdParty/Include/asio/asio.hpp:38: CompilerResultsLog: /Users/ankye/ue5/puertstest/Plugins/Puerts/ThirdParty/Include/asio/asio/bind_cancellation_slot.hpp:158:31: error: no template named 'result_of' CompilerResultsLog: typename void_type<typename result_of<T()>::type>::type> CompilerResultsLog: ^ CompilerResultsLog: /Users/ankye/ue5/puertstest/Plugins/Puerts/ThirdParty/Include/asio/asio/bind_cancellation_slot.hpp:373:12: error: no template named 'result_of' CompilerResultsLog: typename result_of<T(Args...)>::type operator()( CompilerResultsLog: ^ CompilerResultsLog: /Users/ankye/ue5/puertstest/Plugins/Puerts/ThirdParty/Include/asio/asio/bind_cancellation_slot.hpp:381:12: error: no template named 'result_of' CompilerResultsLog: typename result_of<T(Args...)>::type operator()( CompilerResultsLog: ^ CompilerResultsLog: In file included from /Users/ankye/ue5/puertstest/Plugins/Puerts/Intermediate/Build/Mac/x64/UnrealEditor/Development/JsEnv/Module.JsEnv.3.cpp:22: CompilerResultsLog: In file included from /Users/ankye/ue5/puertstest/Plugins/Puerts/Source/JsEnv/Private/V8InspectorImpl.cpp:39: CompilerResultsLog: In file included from /Users/ankye/ue5/puertstest/Plugins/Puerts/ThirdParty/Include/websocketpp/websocketpp/config/asio_no_tls.hpp:32: CompilerResultsLog: In file included from /Users/ankye/ue5/puertstest/Plugins/Puerts/ThirdParty/Include/websocketpp/websocketpp/transport/asio/endpoint.hpp:32: CompilerResultsLog: In file included from /Users/ankye/ue5/puertstest/Plugins/Puerts/ThirdParty/Include/websocketpp/websocketpp/transport/asio/connection.hpp:31: CompilerResultsLog: In file included from /Users/ankye/ue5/puertstest/Plugins/Puerts/ThirdParty/Include/websocketpp/websocketpp/transport/asio/base.hpp:31: CompilerResultsLog: In file included from /Users/ankye/ue5/puertstest/Plugins/Puerts/ThirdParty/Include/websocketpp/websocketpp/common/asio.hpp:52: CompilerResultsLog: In file included from /Users/ankye/ue5/puertstest/Plugins/Puerts/ThirdParty/Include/asio/asio.hpp:39: CompilerResultsLog: /Users/ankye/ue5/puertstest/Plugins/Puerts/ThirdParty/Include/asio/asio/bind_executor.hpp:198:31: error: no template named 'result_of' CompilerResultsLog: typename void_type<typename result_of<T()>::type>::type> CompilerResultsLog: ^ CompilerResultsLog: /Users/ankye/ue5/puertstest/Plugins/Puerts/ThirdParty/Include/asio/asio/bind_executor.hpp:403:12: error: no template named 'result_of' CompilerResultsLog: typename result_of<T(Args...)>::type operator()( CompilerResultsLog: ^ CompilerResultsLog: /Users/ankye/ue5/puertstest/Plugins/Puerts/ThirdParty/Include/asio/asio/bind_executor.hpp:411:12: error: no template named 'result_of' CompilerResultsLog: typename result_of<T(Args...)>::type operator()( CompilerResultsLog: ^ CompilerResultsLog: In file included from /Users/ankye/ue5/puertstest/Plugins/Puerts/Intermediate/Build/Mac/x64/UnrealEditor/Development/JsEnv/Module.JsEnv.3.cpp:22: CompilerResultsLog: In file included from /Users/ankye/ue5/puertstest/Plugins/Puerts/Source/JsEnv/Private/V8InspectorImpl.cpp:39: CompilerResultsLog: In file included from /Users/ankye/ue5/puertstest/Plugins/Puerts/ThirdParty/Include/websocketpp/websocketpp/config/asio_no_tls.hpp:32: CompilerResultsLog: In file included from /Users/ankye/ue5/puertstest/Plugins/Puerts/ThirdParty/Include/websocketpp/websocketpp/transport/asio/endpoint.hpp:32: CompilerResultsLog: In file included from /Users/ankye/ue5/puertstest/Plugins/Puerts/ThirdParty/Include/websocketpp/websocketpp/transport/asio/connection.hpp:31: CompilerResultsLog: In file included from /Users/ankye/ue5/puertstest/Plugins/Puerts/ThirdParty/Include/websocketpp/websocketpp/transport/asio/base.hpp:31: CompilerResultsLog: In file included from /Users/ankye/ue5/puertstest/Plugins/Puerts/ThirdParty/Include/websocketpp/websocketpp/common/asio.hpp:52: CompilerResultsLog: In file included from /Users/ankye/ue5/puertstest/Plugins/Puerts/ThirdParty/Include/asio/asio.hpp:51: CompilerResultsLog: /Users/ankye/ue5/puertstest/Plugins/Puerts/ThirdParty/Include/asio/asio/co_spawn.hpp:391:16: error: no template named 'result_of' CompilerResultsLog: typename result_of<F()>::type>::type) CompletionToken CompilerResultsLog: ^ CompilerResultsLog: /Users/ankye/ue5/puertstest/Plugins/Puerts/ThirdParty/Include/asio/asio/co_spawn.hpp:478:16: error: no template named 'result_of' CompilerResultsLog: typename result_of<F()>::type>::type) CompletionToken CompilerResultsLog: ^ CompilerResultsLog: fatal error: too many errors emitted, stopping now [-ferror-limit=] CompilerResultsLog: 1 warning and 20 errors generated.

问题重现 | Bug reproduce

$ clang --version
Apple clang version 15.0.0 (clang-1500.1.0.2.5) Target: x86_64-apple-darwin22.6.0 Thread model: posix InstalledDir: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin

$ clang++ --version
Apple clang version 15.0.0 (clang-1500.1.0.2.5) Target: x86_64-apple-darwin22.6.0 Thread model: posix InstalledDir: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin

$ xcodebuild -version
Xcode 15.2 Build version 15C500b

导入插件生成xcode mac工程,构建编译失败 image

ankye avatar Jan 31 '24 10:01 ankye