Author: Pavel Labath Date: 2022-08-26T14:04:04+02:00 New Revision: afdfb3ae6b07b546b56b7ef1fbee26b7ad2bcfe7
URL: https://github.com/llvm/llvm-project/commit/afdfb3ae6b07b546b56b7ef1fbee26b7ad2bcfe7 DIFF: https://github.com/llvm/llvm-project/commit/afdfb3ae6b07b546b56b7ef1fbee26b7ad2bcfe7.diff LOG: [lldb] Skip TestCoroutineHandle.py on libstdc++<11 Added: Modified: lldb/test/API/functionalities/data-formatter/data-formatter-stl/generic/coroutine_handle/TestCoroutineHandle.py lldb/test/API/functionalities/data-formatter/data-formatter-stl/generic/coroutine_handle/main.cpp Removed: ################################################################################ diff --git a/lldb/test/API/functionalities/data-formatter/data-formatter-stl/generic/coroutine_handle/TestCoroutineHandle.py b/lldb/test/API/functionalities/data-formatter/data-formatter-stl/generic/coroutine_handle/TestCoroutineHandle.py index 50cac6ebff7fd..8288fcff6aae4 100644 --- a/lldb/test/API/functionalities/data-formatter/data-formatter-stl/generic/coroutine_handle/TestCoroutineHandle.py +++ b/lldb/test/API/functionalities/data-formatter/data-formatter-stl/generic/coroutine_handle/TestCoroutineHandle.py @@ -23,6 +23,10 @@ def do_test(self, stdlib_type): # Run until the initial suspension point lldbutil.run_to_source_breakpoint(self, '// Break at initial_suspend', lldb.SBFileSpec("main.cpp", False)) + + if self.frame().FindVariable("is_supported").GetValueAsUnsigned(1) == 0: + self.skipTest("c++ library not supported") + # Check that we show the correct function pointers and the `promise`. self.expect_expr("gen.hdl", result_summary=re.compile("^coro frame = 0x[0-9a-f]*$"), diff --git a/lldb/test/API/functionalities/data-formatter/data-formatter-stl/generic/coroutine_handle/main.cpp b/lldb/test/API/functionalities/data-formatter/data-formatter-stl/generic/coroutine_handle/main.cpp index 6a54912459c80..439a25866d1c0 100644 --- a/lldb/test/API/functionalities/data-formatter/data-formatter-stl/generic/coroutine_handle/main.cpp +++ b/lldb/test/API/functionalities/data-formatter/data-formatter-stl/generic/coroutine_handle/main.cpp @@ -1,5 +1,13 @@ #include <coroutine> +bool is_implementation_supported() { +#ifdef _GLIBCXX_RELEASE + return _GLIBCXX_RELEASE >= 11; +#else + return true; +#endif +} + // `int_generator` is a stripped down, minimal coroutine generator // type. struct int_generator { @@ -32,6 +40,7 @@ int_generator my_generator_func() { co_yield 42; } void empty_function_so_we_can_set_a_breakpoint() {} int main() { + bool is_supported = is_implementation_supported(); int_generator gen = my_generator_func(); std::coroutine_handle<> type_erased_hdl = gen.hdl; gen.hdl.resume(); // Break at initial_suspend _______________________________________________ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits