[Lldb-commits] [PATCH] D134033: [lldb/Plugins] Improve error reporting when reading memory in Scripted Process
Michał Górny via Phabricator via lldb-commits
lldb-commits at lists.llvm.org
Sat Nov 19 07:00:29 PST 2022
mgorny added a comment.
LLDB no longer builds for me after this change (could be related to swig 4.1.0):
[1/5] Building CXX object tools/lldb/source/Plugins/ScriptInterpre...ldbPluginScriptInterpreterPython.dir/ScriptedPythonInterface.cpp.o
FAILED: tools/lldb/source/Plugins/ScriptInterpreter/Python/CMakeFiles/lldbPluginScriptInterpreterPython.dir/ScriptedPythonInterface.cpp.o
CCACHE_CPP2=yes CCACHE_HASHDIR=yes /usr/bin/ccache /usr/bin/c++ -DGTEST_HAS_RTTI=0 -DHAVE_ROUND -DLLDB_PYTHON_EXE_RELATIVE_PATH=\"bin/python3.10\" -DLLDB_PYTHON_RELATIVE_LIBDIR=\"lib/python3.10/site-packages\" -D_DEBUG -D_GNU_SOURCE -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -I/home/mgorny/git/llvm-project/build/tools/lldb/source/Plugins/ScriptInterpreter/Python -I/home/mgorny/git/llvm-project/lldb/source/Plugins/ScriptInterpreter/Python -I/home/mgorny/git/llvm-project/lldb/include -I/home/mgorny/git/llvm-project/build/tools/lldb/include -I/home/mgorny/git/llvm-project/build/include -I/home/mgorny/git/llvm-project/llvm/include -I/usr/include/python3.10 -I/home/mgorny/git/llvm-project/llvm/../clang/include -I/home/mgorny/git/llvm-project/build/tools/lldb/../clang/include -I/home/mgorny/git/llvm-project/lldb/source -I/home/mgorny/git/llvm-project/build/tools/lldb/source -isystem /usr/include/libxml2 -fPIC -fno-semantic-interposition -fvisibility-inlines-hidden -Werror=date-time -Wall -Wextra -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wno-missing-field-initializers -pedantic -Wno-long-long -Wimplicit-fallthrough -Wno-maybe-uninitialized -Wno-class-memaccess -Wno-redundant-move -Wno-pessimizing-move -Wno-noexcept-type -Wdelete-non-virtual-dtor -Wsuggest-override -Wno-comment -Wno-misleading-indentation -Wctad-maybe-unsupported -fdiagnostics-color -ffunction-sections -fdata-sections -Wno-deprecated-declarations -Wno-unknown-pragmas -Wno-strict-aliasing -Wno-stringop-truncation -Os -DNDEBUG -fno-exceptions -fno-rtti -UNDEBUG -std=c++17 -MD -MT tools/lldb/source/Plugins/ScriptInterpreter/Python/CMakeFiles/lldbPluginScriptInterpreterPython.dir/ScriptedPythonInterface.cpp.o -MF tools/lldb/source/Plugins/ScriptInterpreter/Python/CMakeFiles/lldbPluginScriptInterpreterPython.dir/ScriptedPythonInterface.cpp.o.d -o tools/lldb/source/Plugins/ScriptInterpreter/Python/CMakeFiles/lldbPluginScriptInterpreterPython.dir/ScriptedPythonInterface.cpp.o -c /home/mgorny/git/llvm-project/lldb/source/Plugins/ScriptInterpreter/Python/ScriptedPythonInterface.cpp
In file included from /home/mgorny/git/llvm-project/lldb/source/Plugins/ScriptInterpreter/Python/ScriptedPythonInterface.cpp:20:
/home/mgorny/git/llvm-project/lldb/source/Plugins/ScriptInterpreter/Python/ScriptedPythonInterface.h:113:13: error: explicit specialization in non-namespace scope ‘class lldb_private::ScriptedPythonInterface’
113 | template <> struct transformation<Status> {
| ^
/home/mgorny/git/llvm-project/lldb/source/Plugins/ScriptInterpreter/Python/ScriptedPythonInterface.h:113:22: error: too few template-parameter-lists
113 | template <> struct transformation<Status> {
| ^~~~~~~~~~~~~~~~~~~~~~
/home/mgorny/git/llvm-project/lldb/source/Plugins/ScriptInterpreter/Python/ScriptedPythonInterface.h:129:13: error: explicit specialization in non-namespace scope ‘class lldb_private::ScriptedPythonInterface’
129 | template <> typename transformation<Status>::type Transform(Status arg) {
| ^
/home/mgorny/git/llvm-project/lldb/source/Plugins/ScriptInterpreter/Python/ScriptedPythonInterface.h: In member function ‘lldb_private::ScriptedPythonInterface::transformation<lldb_private::Status>::type lldb_private::ScriptedPythonInterface::Transform(lldb_private::Status)’:
/home/mgorny/git/llvm-project/lldb/source/Plugins/ScriptInterpreter/Python/ScriptedPythonInterface.h:131:33: error: could not convert ‘lldb_private::python::ToSWIGWrapper(const lldb_private::Status&)()’ from ‘lldb_private::python::PythonObject’ to ‘lldb_private::ScriptedPythonInterface::transformation<lldb_private::Status>::type’ {aka ‘lldb_private::Status’}
131 | return python::ToSWIGWrapper(arg);
| ~~~~~~~~~~~~~~~~~~~~~^~~~~
| |
| lldb_private::python::PythonObject
In file included from /home/mgorny/git/llvm-project/lldb/source/Plugins/ScriptInterpreter/Python/ScriptedPythonInterface.cpp:16:
/home/mgorny/git/llvm-project/lldb/source/Plugins/ScriptInterpreter/Python/lldb-python.h: At global scope:
/home/mgorny/git/llvm-project/lldb/source/Plugins/ScriptInterpreter/Python/lldb-python.h:16:30: warning: ‘g_fcxx_modules_workaround’ defined but not used [-Wunused-variable]
16 | static llvm::Expected<bool> *g_fcxx_modules_workaround;
| ^~~~~~~~~~~~~~~~~~~~~~~~~
[2/5] Building CXX object tools/lldb/source/Plugins/ScriptInterpre...ginScriptInterpreterPython.dir/ScriptedThreadPythonInterface.cpp.o
FAILED: tools/lldb/source/Plugins/ScriptInterpreter/Python/CMakeFiles/lldbPluginScriptInterpreterPython.dir/ScriptedThreadPythonInterface.cpp.o
CCACHE_CPP2=yes CCACHE_HASHDIR=yes /usr/bin/ccache /usr/bin/c++ -DGTEST_HAS_RTTI=0 -DHAVE_ROUND -DLLDB_PYTHON_EXE_RELATIVE_PATH=\"bin/python3.10\" -DLLDB_PYTHON_RELATIVE_LIBDIR=\"lib/python3.10/site-packages\" -D_DEBUG -D_GNU_SOURCE -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -I/home/mgorny/git/llvm-project/build/tools/lldb/source/Plugins/ScriptInterpreter/Python -I/home/mgorny/git/llvm-project/lldb/source/Plugins/ScriptInterpreter/Python -I/home/mgorny/git/llvm-project/lldb/include -I/home/mgorny/git/llvm-project/build/tools/lldb/include -I/home/mgorny/git/llvm-project/build/include -I/home/mgorny/git/llvm-project/llvm/include -I/usr/include/python3.10 -I/home/mgorny/git/llvm-project/llvm/../clang/include -I/home/mgorny/git/llvm-project/build/tools/lldb/../clang/include -I/home/mgorny/git/llvm-project/lldb/source -I/home/mgorny/git/llvm-project/build/tools/lldb/source -isystem /usr/include/libxml2 -fPIC -fno-semantic-interposition -fvisibility-inlines-hidden -Werror=date-time -Wall -Wextra -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wno-missing-field-initializers -pedantic -Wno-long-long -Wimplicit-fallthrough -Wno-maybe-uninitialized -Wno-class-memaccess -Wno-redundant-move -Wno-pessimizing-move -Wno-noexcept-type -Wdelete-non-virtual-dtor -Wsuggest-override -Wno-comment -Wno-misleading-indentation -Wctad-maybe-unsupported -fdiagnostics-color -ffunction-sections -fdata-sections -Wno-deprecated-declarations -Wno-unknown-pragmas -Wno-strict-aliasing -Wno-stringop-truncation -Os -DNDEBUG -fno-exceptions -fno-rtti -UNDEBUG -std=c++17 -MD -MT tools/lldb/source/Plugins/ScriptInterpreter/Python/CMakeFiles/lldbPluginScriptInterpreterPython.dir/ScriptedThreadPythonInterface.cpp.o -MF tools/lldb/source/Plugins/ScriptInterpreter/Python/CMakeFiles/lldbPluginScriptInterpreterPython.dir/ScriptedThreadPythonInterface.cpp.o.d -o tools/lldb/source/Plugins/ScriptInterpreter/Python/CMakeFiles/lldbPluginScriptInterpreterPython.dir/ScriptedThreadPythonInterface.cpp.o -c /home/mgorny/git/llvm-project/lldb/source/Plugins/ScriptInterpreter/Python/ScriptedThreadPythonInterface.cpp
In file included from /home/mgorny/git/llvm-project/lldb/source/Plugins/ScriptInterpreter/Python/ScriptedThreadPythonInterface.h:16,
from /home/mgorny/git/llvm-project/lldb/source/Plugins/ScriptInterpreter/Python/ScriptedThreadPythonInterface.cpp:20:
/home/mgorny/git/llvm-project/lldb/source/Plugins/ScriptInterpreter/Python/ScriptedPythonInterface.h:113:13: error: explicit specialization in non-namespace scope ‘class lldb_private::ScriptedPythonInterface’
113 | template <> struct transformation<Status> {
| ^
/home/mgorny/git/llvm-project/lldb/source/Plugins/ScriptInterpreter/Python/ScriptedPythonInterface.h:113:22: error: too few template-parameter-lists
113 | template <> struct transformation<Status> {
| ^~~~~~~~~~~~~~~~~~~~~~
/home/mgorny/git/llvm-project/lldb/source/Plugins/ScriptInterpreter/Python/ScriptedPythonInterface.h:129:13: error: explicit specialization in non-namespace scope ‘class lldb_private::ScriptedPythonInterface’
129 | template <> typename transformation<Status>::type Transform(Status arg) {
| ^
/home/mgorny/git/llvm-project/lldb/source/Plugins/ScriptInterpreter/Python/ScriptedPythonInterface.h: In member function ‘lldb_private::ScriptedPythonInterface::transformation<lldb_private::Status>::type lldb_private::ScriptedPythonInterface::Transform(lldb_private::Status)’:
/home/mgorny/git/llvm-project/lldb/source/Plugins/ScriptInterpreter/Python/ScriptedPythonInterface.h:131:33: error: could not convert ‘lldb_private::python::ToSWIGWrapper(const lldb_private::Status&)()’ from ‘lldb_private::python::PythonObject’ to ‘lldb_private::ScriptedPythonInterface::transformation<lldb_private::Status>::type’ {aka ‘lldb_private::Status’}
131 | return python::ToSWIGWrapper(arg);
| ~~~~~~~~~~~~~~~~~~~~~^~~~~
| |
| lldb_private::python::PythonObject
In file included from /home/mgorny/git/llvm-project/lldb/source/Plugins/ScriptInterpreter/Python/ScriptedThreadPythonInterface.cpp:16:
/home/mgorny/git/llvm-project/lldb/source/Plugins/ScriptInterpreter/Python/lldb-python.h: At global scope:
/home/mgorny/git/llvm-project/lldb/source/Plugins/ScriptInterpreter/Python/lldb-python.h:16:30: warning: ‘g_fcxx_modules_workaround’ defined but not used [-Wunused-variable]
16 | static llvm::Expected<bool> *g_fcxx_modules_workaround;
| ^~~~~~~~~~~~~~~~~~~~~~~~~
[3/5] Building CXX object tools/lldb/source/Plugins/ScriptInterpre...inScriptInterpreterPython.dir/ScriptedProcessPythonInterface.cpp.o
FAILED: tools/lldb/source/Plugins/ScriptInterpreter/Python/CMakeFiles/lldbPluginScriptInterpreterPython.dir/ScriptedProcessPythonInterface.cpp.o
CCACHE_CPP2=yes CCACHE_HASHDIR=yes /usr/bin/ccache /usr/bin/c++ -DGTEST_HAS_RTTI=0 -DHAVE_ROUND -DLLDB_PYTHON_EXE_RELATIVE_PATH=\"bin/python3.10\" -DLLDB_PYTHON_RELATIVE_LIBDIR=\"lib/python3.10/site-packages\" -D_DEBUG -D_GNU_SOURCE -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -I/home/mgorny/git/llvm-project/build/tools/lldb/source/Plugins/ScriptInterpreter/Python -I/home/mgorny/git/llvm-project/lldb/source/Plugins/ScriptInterpreter/Python -I/home/mgorny/git/llvm-project/lldb/include -I/home/mgorny/git/llvm-project/build/tools/lldb/include -I/home/mgorny/git/llvm-project/build/include -I/home/mgorny/git/llvm-project/llvm/include -I/usr/include/python3.10 -I/home/mgorny/git/llvm-project/llvm/../clang/include -I/home/mgorny/git/llvm-project/build/tools/lldb/../clang/include -I/home/mgorny/git/llvm-project/lldb/source -I/home/mgorny/git/llvm-project/build/tools/lldb/source -isystem /usr/include/libxml2 -fPIC -fno-semantic-interposition -fvisibility-inlines-hidden -Werror=date-time -Wall -Wextra -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wno-missing-field-initializers -pedantic -Wno-long-long -Wimplicit-fallthrough -Wno-maybe-uninitialized -Wno-class-memaccess -Wno-redundant-move -Wno-pessimizing-move -Wno-noexcept-type -Wdelete-non-virtual-dtor -Wsuggest-override -Wno-comment -Wno-misleading-indentation -Wctad-maybe-unsupported -fdiagnostics-color -ffunction-sections -fdata-sections -Wno-deprecated-declarations -Wno-unknown-pragmas -Wno-strict-aliasing -Wno-stringop-truncation -Os -DNDEBUG -fno-exceptions -fno-rtti -UNDEBUG -std=c++17 -MD -MT tools/lldb/source/Plugins/ScriptInterpreter/Python/CMakeFiles/lldbPluginScriptInterpreterPython.dir/ScriptedProcessPythonInterface.cpp.o -MF tools/lldb/source/Plugins/ScriptInterpreter/Python/CMakeFiles/lldbPluginScriptInterpreterPython.dir/ScriptedProcessPythonInterface.cpp.o.d -o tools/lldb/source/Plugins/ScriptInterpreter/Python/CMakeFiles/lldbPluginScriptInterpreterPython.dir/ScriptedProcessPythonInterface.cpp.o -c /home/mgorny/git/llvm-project/lldb/source/Plugins/ScriptInterpreter/Python/ScriptedProcessPythonInterface.cpp
In file included from /home/mgorny/git/llvm-project/lldb/source/Plugins/ScriptInterpreter/Python/ScriptedProcessPythonInterface.h:16,
from /home/mgorny/git/llvm-project/lldb/source/Plugins/ScriptInterpreter/Python/ScriptedProcessPythonInterface.cpp:21:
/home/mgorny/git/llvm-project/lldb/source/Plugins/ScriptInterpreter/Python/ScriptedPythonInterface.h:113:13: error: explicit specialization in non-namespace scope ‘class lldb_private::ScriptedPythonInterface’
113 | template <> struct transformation<Status> {
| ^
/home/mgorny/git/llvm-project/lldb/source/Plugins/ScriptInterpreter/Python/ScriptedPythonInterface.h:113:22: error: too few template-parameter-lists
113 | template <> struct transformation<Status> {
| ^~~~~~~~~~~~~~~~~~~~~~
/home/mgorny/git/llvm-project/lldb/source/Plugins/ScriptInterpreter/Python/ScriptedPythonInterface.h:129:13: error: explicit specialization in non-namespace scope ‘class lldb_private::ScriptedPythonInterface’
129 | template <> typename transformation<Status>::type Transform(Status arg) {
| ^
/home/mgorny/git/llvm-project/lldb/source/Plugins/ScriptInterpreter/Python/ScriptedPythonInterface.h: In member function ‘lldb_private::ScriptedPythonInterface::transformation<lldb_private::Status>::type lldb_private::ScriptedPythonInterface::Transform(lldb_private::Status)’:
/home/mgorny/git/llvm-project/lldb/source/Plugins/ScriptInterpreter/Python/ScriptedPythonInterface.h:131:33: error: could not convert ‘lldb_private::python::ToSWIGWrapper(const lldb_private::Status&)()’ from ‘lldb_private::python::PythonObject’ to ‘lldb_private::ScriptedPythonInterface::transformation<lldb_private::Status>::type’ {aka ‘lldb_private::Status’}
131 | return python::ToSWIGWrapper(arg);
| ~~~~~~~~~~~~~~~~~~~~~^~~~~
| |
| lldb_private::python::PythonObject
In file included from /home/mgorny/git/llvm-project/lldb/source/Plugins/ScriptInterpreter/Python/SWIGPythonBridge.h:21,
from /home/mgorny/git/llvm-project/lldb/source/Plugins/ScriptInterpreter/Python/ScriptedProcessPythonInterface.cpp:19:
/home/mgorny/git/llvm-project/lldb/source/Plugins/ScriptInterpreter/Python/PythonDataObjects.h: In instantiation of ‘llvm::Expected<lldb_private::python::PythonObject> lldb_private::python::PythonObject::CallMethod(const char*, const T& ...) const [with T = {long unsigned int, long unsigned int, lldb_private::Status}]’:
/home/mgorny/git/llvm-project/lldb/source/Plugins/ScriptInterpreter/Python/ScriptedPythonInterface.h:72:34: required from ‘lldb_private::ScriptedPythonInterface::Dispatch<std::shared_ptr<lldb_private::DataExtractor>, long unsigned int&, long unsigned int&, lldb_private::Status&>(llvm::StringRef, lldb_private::Status&, long unsigned int&, long unsigned int&, lldb_private::Status&)::<lambda(auto:32&& ...)> [with auto:32 = {long unsigned int&, long unsigned int&, lldb_private::Status&}]’
/usr/lib/gcc/x86_64-pc-linux-gnu/12/include/g++-v12/type_traits:2565:26: required by substitution of ‘template<class _Fn, class ... _Args> static std::__result_of_success<decltype (declval<_Fn>()((declval<_Args>)()...)), std::__invoke_other> std::__result_of_other_impl::_S_test(int) [with _Fn = lldb_private::ScriptedPythonInterface::Dispatch<std::shared_ptr<lldb_private::DataExtractor>, long unsigned int&, long unsigned int&, lldb_private::Status&>(llvm::StringRef, lldb_private::Status&, long unsigned int&, long unsigned int&, lldb_private::Status&)::<lambda(auto:32&& ...)>; _Args = {long unsigned int&, long unsigned int&, lldb_private::Status&}]’
/usr/lib/gcc/x86_64-pc-linux-gnu/12/include/g++-v12/type_traits:2576:55: required from ‘struct std::__result_of_impl<false, false, lldb_private::ScriptedPythonInterface::Dispatch<std::shared_ptr<lldb_private::DataExtractor>, long unsigned int&, long unsigned int&, lldb_private::Status&>(llvm::StringRef, lldb_private::Status&, long unsigned int&, long unsigned int&, lldb_private::Status&)::<lambda(auto:32&& ...)>, long unsigned int&, long unsigned int&, lldb_private::Status&>’
/usr/lib/gcc/x86_64-pc-linux-gnu/12/include/g++-v12/type_traits:167:12: recursively required by substitution of ‘template<class _Result, class _Ret> struct std::__is_invocable_impl<_Result, _Ret, true, std::__void_t<typename _CTp::type> > [with _Result = std::__invoke_result<lldb_private::ScriptedPythonInterface::Dispatch<std::shared_ptr<lldb_private::DataExtractor>, long unsigned int&, long unsigned int&, lldb_private::Status&>(llvm::StringRef, lldb_private::Status&, long unsigned int&, long unsigned int&, lldb_private::Status&)::<lambda(auto:32&& ...)>, long unsigned int&, long unsigned int&, lldb_private::Status&>; _Ret = void]’
/usr/lib/gcc/x86_64-pc-linux-gnu/12/include/g++-v12/type_traits:167:12: required from ‘struct std::__and_<std::__is_invocable_impl<std::__invoke_result<lldb_private::ScriptedPythonInterface::Dispatch<std::shared_ptr<lldb_private::DataExtractor>, long unsigned int&, long unsigned int&, lldb_private::Status&>(llvm::StringRef, lldb_private::Status&, long unsigned int&, long unsigned int&, lldb_private::Status&)::<lambda(auto:32&& ...)>, long unsigned int&, long unsigned int&, lldb_private::Status&>, void, true, void>, std::__call_is_nothrow<std::__invoke_result<lldb_private::ScriptedPythonInterface::Dispatch<std::shared_ptr<lldb_private::DataExtractor>, long unsigned int&, long unsigned int&, lldb_private::Status&>(llvm::StringRef, lldb_private::Status&, long unsigned int&, long unsigned int&, lldb_private::Status&)::<lambda(auto:32&& ...)>, long unsigned int&, long unsigned int&, lldb_private::Status&>, lldb_private::ScriptedPythonInterface::Dispatch<std::shared_ptr<lldb_private::DataExtractor>, long unsigned int&, long unsigned int&, lldb_private::Status&>(llvm::StringRef, lldb_private::Status&, long unsigned int&, long unsigned int&, lldb_private::Status&)::<lambda(auto:32&& ...)>, long unsigned int&, long unsigned int&, lldb_private::Status&> >’
/usr/lib/gcc/x86_64-pc-linux-gnu/12/include/g++-v12/type_traits:3064:12: required from ‘struct std::is_nothrow_invocable<lldb_private::ScriptedPythonInterface::Dispatch<std::shared_ptr<lldb_private::DataExtractor>, long unsigned int&, long unsigned int&, lldb_private::Status&>(llvm::StringRef, lldb_private::Status&, long unsigned int&, long unsigned int&, lldb_private::Status&)::<lambda(auto:32&& ...)>, long unsigned int&, long unsigned int&, lldb_private::Status&>’
/usr/lib/gcc/x86_64-pc-linux-gnu/12/include/g++-v12/tuple:1836:31: required from ‘constexpr const bool std::__unpack_std_tuple<template<class _Fn, class ... _ArgTypes> struct std::is_nothrow_invocable, lldb_private::ScriptedPythonInterface::Dispatch<std::shared_ptr<lldb_private::DataExtractor>, long unsigned int&, long unsigned int&, lldb_private::Status&>(llvm::StringRef, lldb_private::Status&, long unsigned int&, long unsigned int&, lldb_private::Status&)::<lambda(auto:32&& ...)>, std::tuple<long unsigned int, long unsigned int, lldb_private::Status>&>’
/usr/lib/gcc/x86_64-pc-linux-gnu/12/include/g++-v12/tuple:1859:14: required from ‘constexpr decltype(auto) std::apply(_Fn&&, _Tuple&&) [with _Fn = lldb_private::ScriptedPythonInterface::Dispatch<std::shared_ptr<lldb_private::DataExtractor>, long unsigned int&, long unsigned int&, lldb_private::Status&>(llvm::StringRef, lldb_private::Status&, long unsigned int&, long unsigned int&, lldb_private::Status&)::<lambda(auto:32&& ...)>; _Tuple = tuple<long unsigned int, long unsigned int, lldb_private::Status>&]’
/home/mgorny/git/llvm-project/lldb/source/Plugins/ScriptInterpreter/Python/ScriptedPythonInterface.h:69:15: required from ‘T lldb_private::ScriptedPythonInterface::Dispatch(llvm::StringRef, lldb_private::Status&, Args&& ...) [with T = std::shared_ptr<lldb_private::DataExtractor>; Args = {long unsigned int&, long unsigned int&, lldb_private::Status&}]’
/home/mgorny/git/llvm-project/lldb/source/Plugins/ScriptInterpreter/Python/ScriptedProcessPythonInterface.cpp:125:66: required from here
/home/mgorny/git/llvm-project/lldb/source/Plugins/ScriptInterpreter/Python/PythonDataObjects.h:317:50: error: incomplete type ‘lldb_private::python::PythonFormat<lldb_private::Status, void>’ used in nested name specifier
317 | const char format[] = {'(', PythonFormat<T>::format..., ')', 0};
| ^~~~~~
/home/mgorny/git/llvm-project/lldb/source/Plugins/ScriptInterpreter/Python/PythonDataObjects.h:320:73: error: incomplete type ‘lldb_private::python::PythonFormat<lldb_private::Status, void>’ used in nested name specifier
320 | py2_const_cast(format), PythonFormat<T>::get(t)...);
| ~~~~~~~~~~~~~~~~~~~~^~~
In file included from /home/mgorny/git/llvm-project/lldb/source/Plugins/ScriptInterpreter/Python/ScriptedProcessPythonInterface.cpp:17:
/home/mgorny/git/llvm-project/lldb/source/Plugins/ScriptInterpreter/Python/lldb-python.h: At global scope:
/home/mgorny/git/llvm-project/lldb/source/Plugins/ScriptInterpreter/Python/lldb-python.h:16:30: warning: ‘g_fcxx_modules_workaround’ defined but not used [-Wunused-variable]
16 | static llvm::Expected<bool> *g_fcxx_modules_workaround;
| ^~~~~~~~~~~~~~~~~~~~~~~~~
[4/5] Building CXX object tools/lldb/source/Plugins/ScriptInterpre...ldbPluginScriptInterpreterPython.dir/ScriptInterpreterPython.cpp.o
FAILED: tools/lldb/source/Plugins/ScriptInterpreter/Python/CMakeFiles/lldbPluginScriptInterpreterPython.dir/ScriptInterpreterPython.cpp.o
CCACHE_CPP2=yes CCACHE_HASHDIR=yes /usr/bin/ccache /usr/bin/c++ -DGTEST_HAS_RTTI=0 -DHAVE_ROUND -DLLDB_PYTHON_EXE_RELATIVE_PATH=\"bin/python3.10\" -DLLDB_PYTHON_RELATIVE_LIBDIR=\"lib/python3.10/site-packages\" -D_DEBUG -D_GNU_SOURCE -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -I/home/mgorny/git/llvm-project/build/tools/lldb/source/Plugins/ScriptInterpreter/Python -I/home/mgorny/git/llvm-project/lldb/source/Plugins/ScriptInterpreter/Python -I/home/mgorny/git/llvm-project/lldb/include -I/home/mgorny/git/llvm-project/build/tools/lldb/include -I/home/mgorny/git/llvm-project/build/include -I/home/mgorny/git/llvm-project/llvm/include -I/usr/include/python3.10 -I/home/mgorny/git/llvm-project/llvm/../clang/include -I/home/mgorny/git/llvm-project/build/tools/lldb/../clang/include -I/home/mgorny/git/llvm-project/lldb/source -I/home/mgorny/git/llvm-project/build/tools/lldb/source -isystem /usr/include/libxml2 -fPIC -fno-semantic-interposition -fvisibility-inlines-hidden -Werror=date-time -Wall -Wextra -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wno-missing-field-initializers -pedantic -Wno-long-long -Wimplicit-fallthrough -Wno-maybe-uninitialized -Wno-class-memaccess -Wno-redundant-move -Wno-pessimizing-move -Wno-noexcept-type -Wdelete-non-virtual-dtor -Wsuggest-override -Wno-comment -Wno-misleading-indentation -Wctad-maybe-unsupported -fdiagnostics-color -ffunction-sections -fdata-sections -Wno-deprecated-declarations -Wno-unknown-pragmas -Wno-strict-aliasing -Wno-stringop-truncation -Os -DNDEBUG -fno-exceptions -fno-rtti -UNDEBUG -std=c++17 -MD -MT tools/lldb/source/Plugins/ScriptInterpreter/Python/CMakeFiles/lldbPluginScriptInterpreterPython.dir/ScriptInterpreterPython.cpp.o -MF tools/lldb/source/Plugins/ScriptInterpreter/Python/CMakeFiles/lldbPluginScriptInterpreterPython.dir/ScriptInterpreterPython.cpp.o.d -o tools/lldb/source/Plugins/ScriptInterpreter/Python/CMakeFiles/lldbPluginScriptInterpreterPython.dir/ScriptInterpreterPython.cpp.o -c /home/mgorny/git/llvm-project/lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp
In file included from /home/mgorny/git/llvm-project/lldb/source/Plugins/ScriptInterpreter/Python/ScriptedProcessPythonInterface.h:16,
from /home/mgorny/git/llvm-project/lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp:21:
/home/mgorny/git/llvm-project/lldb/source/Plugins/ScriptInterpreter/Python/ScriptedPythonInterface.h:113:13: error: explicit specialization in non-namespace scope ‘class lldb_private::ScriptedPythonInterface’
113 | template <> struct transformation<Status> {
| ^
/home/mgorny/git/llvm-project/lldb/source/Plugins/ScriptInterpreter/Python/ScriptedPythonInterface.h:113:22: error: too few template-parameter-lists
113 | template <> struct transformation<Status> {
| ^~~~~~~~~~~~~~~~~~~~~~
/home/mgorny/git/llvm-project/lldb/source/Plugins/ScriptInterpreter/Python/ScriptedPythonInterface.h:129:13: error: explicit specialization in non-namespace scope ‘class lldb_private::ScriptedPythonInterface’
129 | template <> typename transformation<Status>::type Transform(Status arg) {
| ^
/home/mgorny/git/llvm-project/lldb/source/Plugins/ScriptInterpreter/Python/ScriptedPythonInterface.h: In member function ‘lldb_private::ScriptedPythonInterface::transformation<lldb_private::Status>::type lldb_private::ScriptedPythonInterface::Transform(lldb_private::Status)’:
/home/mgorny/git/llvm-project/lldb/source/Plugins/ScriptInterpreter/Python/ScriptedPythonInterface.h:131:33: error: could not convert ‘lldb_private::python::ToSWIGWrapper(const lldb_private::Status&)()’ from ‘lldb_private::python::PythonObject’ to ‘lldb_private::ScriptedPythonInterface::transformation<lldb_private::Status>::type’ {aka ‘lldb_private::Status’}
131 | return python::ToSWIGWrapper(arg);
| ~~~~~~~~~~~~~~~~~~~~~^~~~~
| |
| lldb_private::python::PythonObject
In file included from /home/mgorny/git/llvm-project/lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp:15:
/home/mgorny/git/llvm-project/lldb/source/Plugins/ScriptInterpreter/Python/lldb-python.h: At global scope:
/home/mgorny/git/llvm-project/lldb/source/Plugins/ScriptInterpreter/Python/lldb-python.h:16:30: warning: ‘g_fcxx_modules_workaround’ defined but not used [-Wunused-variable]
16 | static llvm::Expected<bool> *g_fcxx_modules_workaround;
| ^~~~~~~~~~~~~~~~~~~~~~~~~
ninja: build stopped: cannot make progress due to previous errors.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D134033/new/
https://reviews.llvm.org/D134033
More information about the lldb-commits
mailing list