Author: Charles Zablit
Date: 2026-08-11T12:40:09+02:00
New Revision: f9f1a123ba2caa8c1bdfae2db80a27c370fe968c

URL: 
https://github.com/llvm/llvm-project/commit/f9f1a123ba2caa8c1bdfae2db80a27c370fe968c
DIFF: 
https://github.com/llvm/llvm-project/commit/f9f1a123ba2caa8c1bdfae2db80a27c370fe968c.diff

LOG: [lldb] Convert lang tests to use require decorator (#213466)

This is a follow up to https://github.com/llvm/llvm-project/pull/212753
to convert the `lang` tests to use the `@require` decorator.

Added: 
    

Modified: 
    lldb/test/API/lang/c/anonymous/TestAnonymous.py
    lldb/test/API/lang/c/blocks/TestBlocks.py
    lldb/test/API/lang/c/calling-conventions/TestCCallingConventions.py
    lldb/test/API/lang/c/enum_types/TestEnumTypes.py
    lldb/test/API/lang/c/fpeval/TestFPEval.py
    lldb/test/API/lang/c/full_lto_stepping/TestFullLtoStepping.py
    lldb/test/API/lang/c/function_types/TestFunctionTypes.py
    lldb/test/API/lang/c/libc_calls/TestLibcCalls.py
    lldb/test/API/lang/c/modules/TestCModules.py
    lldb/test/API/lang/c/sizeof/TestCSizeof.py
    lldb/test/API/lang/c/strings/TestCStrings.py
    lldb/test/API/lang/c/struct_types/TestStructTypes.py
    lldb/test/API/lang/cpp/abi_tag_structors/TestAbiTagStructors.py
    lldb/test/API/lang/cpp/accelerator-table/TestCPPAccelerator.py
    lldb/test/API/lang/cpp/auto/TestCPPAuto.py
    lldb/test/API/lang/cpp/call-function/TestCallCPPFunction.py
    lldb/test/API/lang/cpp/chained-calls/TestCppChainedCalls.py
    
lldb/test/API/lang/cpp/class-template-parameter-pack/TestClassTemplateParameterPack.py
    
lldb/test/API/lang/cpp/const_static_integral_member/TestConstStaticIntegralMember.py
    
lldb/test/API/lang/cpp/const_static_integral_member_int128/TestConstStaticIntegralMemberInt128.py
    lldb/test/API/lang/cpp/constructors/TestCppConstructors.py
    lldb/test/API/lang/cpp/covariant-return-types/TestCovariantReturnTypes.py
    lldb/test/API/lang/cpp/decl-from-submodule/TestDeclFromSubmodule.py
    lldb/test/API/lang/cpp/default-template-args/TestDefaultTemplateArgs.py
    lldb/test/API/lang/cpp/enum-limits/TestCPPEnumLimits.py
    lldb/test/API/lang/cpp/exceptions/TestCPPExceptionBreakpoints.py
    
lldb/test/API/lang/cpp/expression-context-qualifiers/const_method/TestExprInConstMethod.py
    
lldb/test/API/lang/cpp/expression-context-qualifiers/const_volatile_method/TestExprInConstVolatileMethod.py
    
lldb/test/API/lang/cpp/expression-context-qualifiers/cv_qualified_objects/TestExprOnCVQualifiedObjects.py
    
lldb/test/API/lang/cpp/expression-context-qualifiers/non_const_method/TestExprInNonConstMethod.py
    
lldb/test/API/lang/cpp/expression-context-qualifiers/template_const_method/TestExprInTemplateConstMethod.py
    
lldb/test/API/lang/cpp/expression-context-qualifiers/template_non_const_method/TestExprInTemplateNonConstMethod.py
    
lldb/test/API/lang/cpp/floating-types-specialization/TestCppFloatingTypesSpecialization.py
    
lldb/test/API/lang/cpp/function-call-from-object-file/TestFunctionCallFromObjectFile.py
    lldb/test/API/lang/cpp/function-qualifiers/TestCppFunctionQualifiers.py
    
lldb/test/API/lang/cpp/function-ref-qualifiers/TestCppFunctionRefQualifiers.py
    lldb/test/API/lang/cpp/global_operators/TestCppGlobalOperators.py
    lldb/test/API/lang/cpp/llvm-style/TestLLVMStyle.py
    lldb/test/API/lang/cpp/modules-import/TestCXXModulesImport.py
    lldb/test/API/lang/cpp/multiple-inheritance/TestCppMultipleInheritance.py
    lldb/test/API/lang/cpp/namespace/TestNamespace.py
    lldb/test/API/lang/cpp/namespace/TestNamespaceLookup.py
    lldb/test/API/lang/cpp/namespace_conflicts/TestNamespaceConflicts.py
    lldb/test/API/lang/cpp/operators/TestCppOperators.py
    lldb/test/API/lang/cpp/overloaded-functions/TestOverloadedFunctions.py
    
lldb/test/API/lang/cpp/pointer_to_member_type_depending_on_parent_size/TestPointerToMemberTypeDependingOnParentSize.py
    lldb/test/API/lang/cpp/printf/TestPrintf.py
    lldb/test/API/lang/cpp/rvalue-references/TestRvalueReferences.py
    lldb/test/API/lang/cpp/scope/TestCppScope.py
    lldb/test/API/lang/cpp/static_members/TestCPPStaticMembers.py
    lldb/test/API/lang/cpp/static_methods/TestCPPStaticMethods.py
    lldb/test/API/lang/cpp/symbols/TestSymbols.py
    
lldb/test/API/lang/cpp/template-diagnostic-hint/TestTemplateDiagnosticHint.py
    lldb/test/API/lang/cpp/template-function/TestTemplateFunctions.py
    lldb/test/API/lang/cpp/this/TestCPPThis.py
    lldb/test/API/lang/cpp/this_class_type_mixing/TestThisClassTypeMixing.py
    lldb/test/API/lang/cpp/thread_local/TestThreadLocal.py
    lldb/test/API/lang/cpp/trivial_abi/TestTrivialABI.py
    lldb/test/API/lang/cpp/typedef/TestCppTypedef.py
    lldb/test/API/lang/cpp/unicode-literals/TestUnicodeLiterals.py
    
lldb/test/API/lang/cpp/union-static-data-members/TestCppUnionStaticMembers.py
    lldb/test/API/lang/cpp/unique-types4/TestUniqueTypes4.py
    lldb/test/API/lang/cpp/virtual-functions/TestCppVirtualFunctions.py
    lldb/test/API/lang/objc/complete-type-check/TestObjCIsTypeComplete.py
    
lldb/test/API/lang/objc/conflicting-class-list-function-from-user/TestObjCClassListFunctionFromUser.py
    
lldb/test/API/lang/objc/cpp_keyword_identifiers/TestCppKeywordsAsObjCIdentifiers.py
    lldb/test/API/lang/objc/languageinfo/TestObjCLanguageSpecificData.py
    lldb/test/API/lang/objc/module-import-log/TestClangModuleImportLog.py
    lldb/test/API/lang/objc/objc-class-method/TestObjCClassMethod.py
    lldb/test/API/lang/objc/objc-optimized/TestObjcOptimized.py
    lldb/test/API/lang/objc/orderedset/TestOrderedSet.py
    
lldb/test/API/lang/objc/single-entry-dictionary/TestObjCSingleEntryDictionary.py
    lldb/test/API/lang/objc/tagged-pointer-children/TestTaggedPointerChildren.py
    
lldb/test/API/lang/objc/warnings-in-expr-parser/TestObjCWarningsInExprParser.py
    lldb/test/API/lang/objcxx/cpp_keywords_enabled/TestObjCppKeywordsEnabled.py

Removed: 
    


################################################################################
diff  --git a/lldb/test/API/lang/c/anonymous/TestAnonymous.py 
b/lldb/test/API/lang/c/anonymous/TestAnonymous.py
index 8e74a72326bdb..5f3089983bb1b 100644
--- a/lldb/test/API/lang/c/anonymous/TestAnonymous.py
+++ b/lldb/test/API/lang/c/anonymous/TestAnonymous.py
@@ -74,7 +74,7 @@ def test_expr_parent(self):
             substrs=["(type_y) $", "dummy = 2"],
         )
 
-    @skipIfWasm  # no expression evaluation
+    @requireExpressionEvaluation
     def test_expr_null(self):
         self.build()
         self.common_setup(self.line2)

diff  --git a/lldb/test/API/lang/c/blocks/TestBlocks.py 
b/lldb/test/API/lang/c/blocks/TestBlocks.py
index f16e35a09adcf..ba443e6661261 100644
--- a/lldb/test/API/lang/c/blocks/TestBlocks.py
+++ b/lldb/test/API/lang/c/blocks/TestBlocks.py
@@ -6,9 +6,9 @@
 import lldbsuite.test.lldbutil as lldbutil
 
 
-@skipIfWasm  # no expression evaluation
+@requireExpressionEvaluation
 class BlocksTestCase(TestBase):
-    @skipUnlessDarwin
+    @requireDarwin
     def test(self):
         self.build()
         src = lldb.SBFileSpec("main.c")
@@ -52,7 +52,7 @@ def test(self):
         self.expect_expr("*captured_ptr", result_type="int", result_value="42")
         self.expect_expr("captured_struct.x", result_type="int", 
result_value="10")
 
-    @skipUnlessDarwin
+    @requireDarwin
     def test_define(self):
         """Test defining and calling a block from the expression evaluator."""
         self.build()

diff  --git 
a/lldb/test/API/lang/c/calling-conventions/TestCCallingConventions.py 
b/lldb/test/API/lang/c/calling-conventions/TestCCallingConventions.py
index 00917c5230e20..5885ed0e832f0 100644
--- a/lldb/test/API/lang/c/calling-conventions/TestCCallingConventions.py
+++ b/lldb/test/API/lang/c/calling-conventions/TestCCallingConventions.py
@@ -87,7 +87,7 @@ def test_pascal(self):
             return
         self.expect_expr("func(1, 2, 3, 4)", result_type="int", 
result_value="10")
 
-    @skipIfWasm  # no expression evaluation
+    @requireExpressionEvaluation
     def test_sysv_abi(self):
         if not self.build_and_run("sysv_abi.c"):
             return

diff  --git a/lldb/test/API/lang/c/enum_types/TestEnumTypes.py 
b/lldb/test/API/lang/c/enum_types/TestEnumTypes.py
index e8d29d23cdaa2..225f3b876e3e5 100644
--- a/lldb/test/API/lang/c/enum_types/TestEnumTypes.py
+++ b/lldb/test/API/lang/c/enum_types/TestEnumTypes.py
@@ -14,7 +14,7 @@ def setUp(self):
         # Find the line number to break inside main().
         self.line = line_number("main.c", "// Set break point at this line.")
 
-    @skipIfWasm  # no expression evaluation
+    @requireExpressionEvaluation
     def test_command_line(self):
         """Test 'image lookup -t enum_test_days' and check for correct display 
and enum value printing."""
         self.build()

diff  --git a/lldb/test/API/lang/c/fpeval/TestFPEval.py 
b/lldb/test/API/lang/c/fpeval/TestFPEval.py
index 1b5f4e7199a07..0a953d2d66bf2 100644
--- a/lldb/test/API/lang/c/fpeval/TestFPEval.py
+++ b/lldb/test/API/lang/c/fpeval/TestFPEval.py
@@ -6,7 +6,7 @@
 from lldbsuite.test import lldbutil
 
 
-@skipIfWasm  # no expression evaluation
+@requireExpressionEvaluation
 class FPEvalTestCase(TestBase):
     def setUp(self):
         # Call super's setUp().

diff  --git a/lldb/test/API/lang/c/full_lto_stepping/TestFullLtoStepping.py 
b/lldb/test/API/lang/c/full_lto_stepping/TestFullLtoStepping.py
index 95c174c5efb33..24d0105895021 100644
--- a/lldb/test/API/lang/c/full_lto_stepping/TestFullLtoStepping.py
+++ b/lldb/test/API/lang/c/full_lto_stepping/TestFullLtoStepping.py
@@ -11,7 +11,7 @@ class TestFullLtoStepping(TestBase):
     @skipIfAsan
     @skipIf(compiler=no_match("clang"))
     @skipIf(compiler="clang", compiler_version=["<", "13.0"])
-    @skipUnlessDarwin
+    @requireDarwin
     def test(self):
         self.build()
         _, _, thread, _ = lldbutil.run_to_name_breakpoint(self, "main")

diff  --git a/lldb/test/API/lang/c/function_types/TestFunctionTypes.py 
b/lldb/test/API/lang/c/function_types/TestFunctionTypes.py
index ad47504e00b88..c3b91beed55f4 100644
--- a/lldb/test/API/lang/c/function_types/TestFunctionTypes.py
+++ b/lldb/test/API/lang/c/function_types/TestFunctionTypes.py
@@ -7,7 +7,7 @@
 from lldbsuite.test import lldbutil
 
 
-@skipIfWasm  # no expression evaluation
+@requireExpressionEvaluation
 class FunctionTypesTestCase(TestBase):
     def setUp(self):
         # Call super's setUp().

diff  --git a/lldb/test/API/lang/c/libc_calls/TestLibcCalls.py 
b/lldb/test/API/lang/c/libc_calls/TestLibcCalls.py
index 8ed468f570155..feece227b9592 100644
--- a/lldb/test/API/lang/c/libc_calls/TestLibcCalls.py
+++ b/lldb/test/API/lang/c/libc_calls/TestLibcCalls.py
@@ -15,7 +15,7 @@
 class LibcCallsTestCase(TestBase):
     NO_DEBUG_INFO_TESTCASE = True
 
-    @skipUnlessDarwin
+    @requireDarwin
     @skipIfRemote
     def test_libc_funcs_do_not_resolve_to_dyld(self):
         """The JIT-resolved address of each libc function must not lie in
@@ -54,7 +54,7 @@ def test_libc_funcs_do_not_resolve_to_dyld(self):
                     resolved_module_name, "dyld", f"Called dyld version of 
{symbol}"
                 )
 
-    @skipIfWasm  # no expression evaluation
+    @requireExpressionEvaluation
     def test_libc_calls_succeed(self):
         """Calling memset/memcpy/memmove/memcmp from expressions must
         execute without trapping."""

diff  --git a/lldb/test/API/lang/c/modules/TestCModules.py 
b/lldb/test/API/lang/c/modules/TestCModules.py
index 152ace6abb12f..c223a5fc927df 100644
--- a/lldb/test/API/lang/c/modules/TestCModules.py
+++ b/lldb/test/API/lang/c/modules/TestCModules.py
@@ -9,7 +9,7 @@
 from lldbsuite.test import lldbutil
 
 
-@skipIfWasm  # no expression evaluation
+@requireExpressionEvaluation
 class CModulesTestCase(TestBase):
     @expectedFailureAll(
         oslist=["freebsd", "linux"],

diff  --git a/lldb/test/API/lang/c/sizeof/TestCSizeof.py 
b/lldb/test/API/lang/c/sizeof/TestCSizeof.py
index acb1872cf32b0..9b15c19f8dcf3 100644
--- a/lldb/test/API/lang/c/sizeof/TestCSizeof.py
+++ b/lldb/test/API/lang/c/sizeof/TestCSizeof.py
@@ -4,7 +4,7 @@
 from lldbsuite.test import lldbutil
 
 
-@skipIfWasm  # no expression evaluation
+@requireExpressionEvaluation
 class TestCase(TestBase):
     def test(self):
         self.build()

diff  --git a/lldb/test/API/lang/c/strings/TestCStrings.py 
b/lldb/test/API/lang/c/strings/TestCStrings.py
index 86668a6e3c238..1198689c6b981 100644
--- a/lldb/test/API/lang/c/strings/TestCStrings.py
+++ b/lldb/test/API/lang/c/strings/TestCStrings.py
@@ -7,7 +7,7 @@
 from lldbsuite.test import lldbutil
 
 
-@skipIfWasm  # no expression evaluation
+@requireExpressionEvaluation
 class CStringsTestCase(TestBase):
     def test_with_run_command(self):
         """Tests that C strings work as expected in expressions"""

diff  --git a/lldb/test/API/lang/c/struct_types/TestStructTypes.py 
b/lldb/test/API/lang/c/struct_types/TestStructTypes.py
index 0dcbd0979d5a3..f0b5ba278f79f 100644
--- a/lldb/test/API/lang/c/struct_types/TestStructTypes.py
+++ b/lldb/test/API/lang/c/struct_types/TestStructTypes.py
@@ -1,4 +1,4 @@
 from lldbsuite.test import lldbinline
 from lldbsuite.test import decorators
 
-lldbinline.MakeInlineTest(__file__, globals(), [decorators.skipIfWasm])
+lldbinline.MakeInlineTest(__file__, globals(), 
[decorators.requireExpressionEvaluation])

diff  --git a/lldb/test/API/lang/cpp/abi_tag_structors/TestAbiTagStructors.py 
b/lldb/test/API/lang/cpp/abi_tag_structors/TestAbiTagStructors.py
index a27c3e5a3ddb3..2f4ede75a96e6 100644
--- a/lldb/test/API/lang/cpp/abi_tag_structors/TestAbiTagStructors.py
+++ b/lldb/test/API/lang/cpp/abi_tag_structors/TestAbiTagStructors.py
@@ -19,7 +19,7 @@ class AbiTagStructorsTestCase(TestBase):
     )
     @skipIf(compiler=no_match("clang"))
     @expectedFailureAll(oslist=["windows"])
-    @skipIfWasm  # no expression evaluation
+    @requireExpressionEvaluation
     def test_with_structor_linkage_names(self):
         self.build(dictionary={"CXXFLAGS_EXTRAS": 
"-gstructor-decl-linkage-names"})
 
@@ -127,14 +127,14 @@ def do_nested_structor_test(self):
     @skipIf(compiler="clang", compiler_version=["<", "22"])
     @skipIf(compiler=no_match("clang"))
     @expectedFailureAll(oslist=["windows"])
-    @skipIfWasm  # no expression evaluation
+    @requireExpressionEvaluation
     def test_nested_with_structor_linkage_names(self):
         self.build(dictionary={"CXXFLAGS_EXTRAS": 
"-gstructor-decl-linkage-names"})
         self.do_nested_structor_test()
 
     @skipIf(compiler=no_match("clang"))
     @expectedFailureAll(oslist=["windows"])
-    @skipIfWasm  # no expression evaluation
+    @requireExpressionEvaluation
     def test_nested_no_structor_linkage_names(self):
         # In older versions of Clang the -gno-structor-decl-linkage-names
         # behaviour was the default.

diff  --git a/lldb/test/API/lang/cpp/accelerator-table/TestCPPAccelerator.py 
b/lldb/test/API/lang/cpp/accelerator-table/TestCPPAccelerator.py
index 0f21806da6bd3..dc015f1946ed2 100644
--- a/lldb/test/API/lang/cpp/accelerator-table/TestCPPAccelerator.py
+++ b/lldb/test/API/lang/cpp/accelerator-table/TestCPPAccelerator.py
@@ -5,7 +5,7 @@
 
 
 class CPPAcceleratorTableTestCase(TestBase):
-    @skipUnlessDarwin
+    @requireDarwin
     @skipIf(debug_info=no_match(["dwarf"]))
     @skipIf(dwarf_version=[">=", "5"])
     def test(self):

diff  --git a/lldb/test/API/lang/cpp/auto/TestCPPAuto.py 
b/lldb/test/API/lang/cpp/auto/TestCPPAuto.py
index 3b1445897481e..c02341356e462 100644
--- a/lldb/test/API/lang/cpp/auto/TestCPPAuto.py
+++ b/lldb/test/API/lang/cpp/auto/TestCPPAuto.py
@@ -7,7 +7,7 @@
 from lldbsuite.test import lldbutil
 
 
-@skipIfWasm  # no expression evaluation
+@requireExpressionEvaluation
 class CPPAutoTestCase(TestBase):
     def test_with_run_command(self):
         """Test that auto types work in the expression parser"""

diff  --git a/lldb/test/API/lang/cpp/call-function/TestCallCPPFunction.py 
b/lldb/test/API/lang/cpp/call-function/TestCallCPPFunction.py
index f422bc691e225..00a2735a40af2 100644
--- a/lldb/test/API/lang/cpp/call-function/TestCallCPPFunction.py
+++ b/lldb/test/API/lang/cpp/call-function/TestCallCPPFunction.py
@@ -8,7 +8,7 @@
 from lldbsuite.test import lldbutil
 
 
-@skipIfWasm  # no expression evaluation
+@requireExpressionEvaluation
 class CallCPPFunctionTestCase(TestBase):
     def setUp(self):
         TestBase.setUp(self)

diff  --git a/lldb/test/API/lang/cpp/chained-calls/TestCppChainedCalls.py 
b/lldb/test/API/lang/cpp/chained-calls/TestCppChainedCalls.py
index 0765a66bfefc5..7b81525e9b414 100644
--- a/lldb/test/API/lang/cpp/chained-calls/TestCppChainedCalls.py
+++ b/lldb/test/API/lang/cpp/chained-calls/TestCppChainedCalls.py
@@ -4,7 +4,7 @@
 from lldbsuite.test import lldbutil
 
 
-@skipIfWasm  # no expression evaluation
+@requireExpressionEvaluation
 class TestCppChainedCalls(TestBase):
     def test_with_run_command(self):
         self.build()

diff  --git 
a/lldb/test/API/lang/cpp/class-template-parameter-pack/TestClassTemplateParameterPack.py
 
b/lldb/test/API/lang/cpp/class-template-parameter-pack/TestClassTemplateParameterPack.py
index 57cda83f94502..be1c5b54e12c0 100644
--- 
a/lldb/test/API/lang/cpp/class-template-parameter-pack/TestClassTemplateParameterPack.py
+++ 
b/lldb/test/API/lang/cpp/class-template-parameter-pack/TestClassTemplateParameterPack.py
@@ -4,7 +4,7 @@
 from lldbsuite.test import lldbutil
 
 
-@skipIfWasm  # no expression evaluation
+@requireExpressionEvaluation
 class TestCase(TestBase):
     def test(self):
         self.build()

diff  --git 
a/lldb/test/API/lang/cpp/const_static_integral_member/TestConstStaticIntegralMember.py
 
b/lldb/test/API/lang/cpp/const_static_integral_member/TestConstStaticIntegralMember.py
index 6558e8a88c044..5f4abb1172824 100644
--- 
a/lldb/test/API/lang/cpp/const_static_integral_member/TestConstStaticIntegralMember.py
+++ 
b/lldb/test/API/lang/cpp/const_static_integral_member/TestConstStaticIntegralMember.py
@@ -11,7 +11,7 @@
 class TestCase(TestBase):
     SHARED_BUILD_TESTCASE = False
 
-    @skipIfWasm  # no expression evaluation
+    @requireExpressionEvaluation
     def test(self):
         self.build()
         lldbutil.run_to_source_breakpoint(

diff  --git 
a/lldb/test/API/lang/cpp/const_static_integral_member_int128/TestConstStaticIntegralMemberInt128.py
 
b/lldb/test/API/lang/cpp/const_static_integral_member_int128/TestConstStaticIntegralMemberInt128.py
index c36154e5770ed..a9059a9cfd5da 100644
--- 
a/lldb/test/API/lang/cpp/const_static_integral_member_int128/TestConstStaticIntegralMemberInt128.py
+++ 
b/lldb/test/API/lang/cpp/const_static_integral_member_int128/TestConstStaticIntegralMemberInt128.py
@@ -9,7 +9,7 @@
 from lldbsuite.test import lldbutil
 
 
-@skipIfWasm  # no expression evaluation
+@requireExpressionEvaluation
 class TestCase(TestBase):
     # int128 is not available on 32-bit ARM.
     @skipIf(archs=["arm$"])

diff  --git a/lldb/test/API/lang/cpp/constructors/TestCppConstructors.py 
b/lldb/test/API/lang/cpp/constructors/TestCppConstructors.py
index 1f7e25517e765..8e178de97eea7 100644
--- a/lldb/test/API/lang/cpp/constructors/TestCppConstructors.py
+++ b/lldb/test/API/lang/cpp/constructors/TestCppConstructors.py
@@ -4,7 +4,7 @@
 from lldbsuite.test import lldbutil
 
 
-@skipIfWasm  # no expression evaluation
+@requireExpressionEvaluation
 class TestCase(TestBase):
     @expectedFailureAll(bugnumber="llvm.org/pr50814", compiler="gcc")
     def test_constructors(self):

diff  --git 
a/lldb/test/API/lang/cpp/covariant-return-types/TestCovariantReturnTypes.py 
b/lldb/test/API/lang/cpp/covariant-return-types/TestCovariantReturnTypes.py
index 2dcba86f2d352..e1b96f6a10126 100644
--- a/lldb/test/API/lang/cpp/covariant-return-types/TestCovariantReturnTypes.py
+++ b/lldb/test/API/lang/cpp/covariant-return-types/TestCovariantReturnTypes.py
@@ -4,7 +4,7 @@
 import lldbsuite.test.lldbutil as lldbutil
 
 
-@skipIfWasm  # no expression evaluation
+@requireExpressionEvaluation
 class TestCase(TestBase):
     NO_DEBUG_INFO_TESTCASE = True
 

diff  --git 
a/lldb/test/API/lang/cpp/decl-from-submodule/TestDeclFromSubmodule.py 
b/lldb/test/API/lang/cpp/decl-from-submodule/TestDeclFromSubmodule.py
index 590524147bbb5..feaf39495def6 100644
--- a/lldb/test/API/lang/cpp/decl-from-submodule/TestDeclFromSubmodule.py
+++ b/lldb/test/API/lang/cpp/decl-from-submodule/TestDeclFromSubmodule.py
@@ -8,7 +8,7 @@
 from lldbsuite.test import lldbutil
 
 
-@skipIfWasm  # no expression evaluation
+@requireExpressionEvaluation
 class DeclFromSubmoduleTestCase(TestBase):
     # Requires DWARF debug info which is not retained when linking with 
link.exe.
     @skipIfWindows

diff  --git 
a/lldb/test/API/lang/cpp/default-template-args/TestDefaultTemplateArgs.py 
b/lldb/test/API/lang/cpp/default-template-args/TestDefaultTemplateArgs.py
index 7b5417b60040b..8a9dd5288e901 100644
--- a/lldb/test/API/lang/cpp/default-template-args/TestDefaultTemplateArgs.py
+++ b/lldb/test/API/lang/cpp/default-template-args/TestDefaultTemplateArgs.py
@@ -8,7 +8,7 @@
 from lldbsuite.test import lldbutil
 
 
-@skipIfWasm  # no expression evaluation
+@requireExpressionEvaluation
 class TestDefaultTemplateArgs(TestBase):
     @no_debug_info_test
     def test(self):

diff  --git a/lldb/test/API/lang/cpp/enum-limits/TestCPPEnumLimits.py 
b/lldb/test/API/lang/cpp/enum-limits/TestCPPEnumLimits.py
index 4e0c0a088c909..a380d6bdcf53d 100644
--- a/lldb/test/API/lang/cpp/enum-limits/TestCPPEnumLimits.py
+++ b/lldb/test/API/lang/cpp/enum-limits/TestCPPEnumLimits.py
@@ -56,7 +56,7 @@ def test(self):
         self.build()
         self.check_all(self.dbg.CreateTarget(self.getBuildArtifact("a.out")))
 
-    @skipUnlessPlatform(["windows"])
+    @requireWindows
     @skipUnlessMSVC
     @no_debug_info_test  # We only test MSVC
     def test_msvc(self):

diff  --git a/lldb/test/API/lang/cpp/exceptions/TestCPPExceptionBreakpoints.py 
b/lldb/test/API/lang/cpp/exceptions/TestCPPExceptionBreakpoints.py
index 22db417e862ea..27b690605cca8 100644
--- a/lldb/test/API/lang/cpp/exceptions/TestCPPExceptionBreakpoints.py
+++ b/lldb/test/API/lang/cpp/exceptions/TestCPPExceptionBreakpoints.py
@@ -9,7 +9,7 @@
 from lldbsuite.test import lldbutil
 
 
-@skipIfWasm  # wasm inferiors are built with -fno-exceptions
+@requireNotWasm  # wasm inferiors are built with -fno-exceptions
 class CPPBreakpointTestCase(TestBase):
     def setUp(self):
         # Call super's setUp().

diff  --git 
a/lldb/test/API/lang/cpp/expression-context-qualifiers/const_method/TestExprInConstMethod.py
 
b/lldb/test/API/lang/cpp/expression-context-qualifiers/const_method/TestExprInConstMethod.py
index a830bbc7fd6d8..fc662f9cdf1f7 100644
--- 
a/lldb/test/API/lang/cpp/expression-context-qualifiers/const_method/TestExprInConstMethod.py
+++ 
b/lldb/test/API/lang/cpp/expression-context-qualifiers/const_method/TestExprInConstMethod.py
@@ -4,7 +4,7 @@
 from lldbsuite.test import lldbutil
 
 
-@skipIfWasm  # no expression evaluation
+@requireExpressionEvaluation
 class TestCase(TestBase):
     def test(self):
         self.build()

diff  --git 
a/lldb/test/API/lang/cpp/expression-context-qualifiers/const_volatile_method/TestExprInConstVolatileMethod.py
 
b/lldb/test/API/lang/cpp/expression-context-qualifiers/const_volatile_method/TestExprInConstVolatileMethod.py
index aacac82d2d7bc..004955cd3b859 100644
--- 
a/lldb/test/API/lang/cpp/expression-context-qualifiers/const_volatile_method/TestExprInConstVolatileMethod.py
+++ 
b/lldb/test/API/lang/cpp/expression-context-qualifiers/const_volatile_method/TestExprInConstVolatileMethod.py
@@ -4,7 +4,7 @@
 from lldbsuite.test import lldbutil
 
 
-@skipIfWasm  # no expression evaluation
+@requireExpressionEvaluation
 class TestCase(TestBase):
     def test(self):
         self.build()

diff  --git 
a/lldb/test/API/lang/cpp/expression-context-qualifiers/cv_qualified_objects/TestExprOnCVQualifiedObjects.py
 
b/lldb/test/API/lang/cpp/expression-context-qualifiers/cv_qualified_objects/TestExprOnCVQualifiedObjects.py
index ce1a19d896c59..bfd5f7dba8e5f 100644
--- 
a/lldb/test/API/lang/cpp/expression-context-qualifiers/cv_qualified_objects/TestExprOnCVQualifiedObjects.py
+++ 
b/lldb/test/API/lang/cpp/expression-context-qualifiers/cv_qualified_objects/TestExprOnCVQualifiedObjects.py
@@ -4,7 +4,7 @@
 from lldbsuite.test import lldbutil
 
 
-@skipIfWasm  # no expression evaluation
+@requireExpressionEvaluation
 class TestCase(TestBase):
     def test(self):
         self.build()

diff  --git 
a/lldb/test/API/lang/cpp/expression-context-qualifiers/non_const_method/TestExprInNonConstMethod.py
 
b/lldb/test/API/lang/cpp/expression-context-qualifiers/non_const_method/TestExprInNonConstMethod.py
index f75b800e0ef95..a4cdffb19e4cb 100644
--- 
a/lldb/test/API/lang/cpp/expression-context-qualifiers/non_const_method/TestExprInNonConstMethod.py
+++ 
b/lldb/test/API/lang/cpp/expression-context-qualifiers/non_const_method/TestExprInNonConstMethod.py
@@ -4,7 +4,7 @@
 from lldbsuite.test import lldbutil
 
 
-@skipIfWasm  # no expression evaluation
+@requireExpressionEvaluation
 class TestCase(TestBase):
     def test(self):
         self.build()

diff  --git 
a/lldb/test/API/lang/cpp/expression-context-qualifiers/template_const_method/TestExprInTemplateConstMethod.py
 
b/lldb/test/API/lang/cpp/expression-context-qualifiers/template_const_method/TestExprInTemplateConstMethod.py
index cb07bbe23582d..c20fdd1d34ef9 100644
--- 
a/lldb/test/API/lang/cpp/expression-context-qualifiers/template_const_method/TestExprInTemplateConstMethod.py
+++ 
b/lldb/test/API/lang/cpp/expression-context-qualifiers/template_const_method/TestExprInTemplateConstMethod.py
@@ -4,7 +4,7 @@
 from lldbsuite.test import lldbutil
 
 
-@skipIfWasm  # no expression evaluation
+@requireExpressionEvaluation
 class TestCase(TestBase):
     def test(self):
         self.build()

diff  --git 
a/lldb/test/API/lang/cpp/expression-context-qualifiers/template_non_const_method/TestExprInTemplateNonConstMethod.py
 
b/lldb/test/API/lang/cpp/expression-context-qualifiers/template_non_const_method/TestExprInTemplateNonConstMethod.py
index 264451c017b58..5ce0740247286 100644
--- 
a/lldb/test/API/lang/cpp/expression-context-qualifiers/template_non_const_method/TestExprInTemplateNonConstMethod.py
+++ 
b/lldb/test/API/lang/cpp/expression-context-qualifiers/template_non_const_method/TestExprInTemplateNonConstMethod.py
@@ -4,7 +4,7 @@
 from lldbsuite.test import lldbutil
 
 
-@skipIfWasm  # no expression evaluation
+@requireExpressionEvaluation
 class TestCase(TestBase):
     def test(self):
         self.build()

diff  --git 
a/lldb/test/API/lang/cpp/floating-types-specialization/TestCppFloatingTypesSpecialization.py
 
b/lldb/test/API/lang/cpp/floating-types-specialization/TestCppFloatingTypesSpecialization.py
index 9d7c9e072c81c..1a0e7055c85cf 100644
--- 
a/lldb/test/API/lang/cpp/floating-types-specialization/TestCppFloatingTypesSpecialization.py
+++ 
b/lldb/test/API/lang/cpp/floating-types-specialization/TestCppFloatingTypesSpecialization.py
@@ -5,7 +5,7 @@
 from lldbsuite.test import lldbutil
 
 
-@skipIfWasm  # _Float16/__bf16 are unsupported on the wasm target
+@requireNotWasm  # _Float16/__bf16 are unsupported on the wasm target
 class TestCase(TestBase):
     @skipIf(compiler="clang", compiler_version=["<", "17.0"])
     def test(self):

diff  --git 
a/lldb/test/API/lang/cpp/function-call-from-object-file/TestFunctionCallFromObjectFile.py
 
b/lldb/test/API/lang/cpp/function-call-from-object-file/TestFunctionCallFromObjectFile.py
index 3ea5482120c63..92973536889f6 100644
--- 
a/lldb/test/API/lang/cpp/function-call-from-object-file/TestFunctionCallFromObjectFile.py
+++ 
b/lldb/test/API/lang/cpp/function-call-from-object-file/TestFunctionCallFromObjectFile.py
@@ -15,7 +15,7 @@
 from lldbsuite.test import lldbutil
 
 
-@skipIfWasm  # no expression evaluation
+@requireExpressionEvaluation
 class TestFunctionCallFromObjectFile(TestBase):
     def test_lib1(self):
         self.build()

diff  --git 
a/lldb/test/API/lang/cpp/function-qualifiers/TestCppFunctionQualifiers.py 
b/lldb/test/API/lang/cpp/function-qualifiers/TestCppFunctionQualifiers.py
index 1f556c811decc..3e11b8c533923 100644
--- a/lldb/test/API/lang/cpp/function-qualifiers/TestCppFunctionQualifiers.py
+++ b/lldb/test/API/lang/cpp/function-qualifiers/TestCppFunctionQualifiers.py
@@ -4,7 +4,7 @@
 from lldbsuite.test import lldbutil
 
 
-@skipIfWasm  # no expression evaluation
+@requireExpressionEvaluation
 class TestFunctionQualifiers(TestBase):
     def test(self):
         self.build()

diff  --git 
a/lldb/test/API/lang/cpp/function-ref-qualifiers/TestCppFunctionRefQualifiers.py
 
b/lldb/test/API/lang/cpp/function-ref-qualifiers/TestCppFunctionRefQualifiers.py
index 1ad689891c8cd..1ad852adfcad5 100644
--- 
a/lldb/test/API/lang/cpp/function-ref-qualifiers/TestCppFunctionRefQualifiers.py
+++ 
b/lldb/test/API/lang/cpp/function-ref-qualifiers/TestCppFunctionRefQualifiers.py
@@ -10,7 +10,7 @@
 from lldbsuite.test import lldbutil
 
 
-@skipIfWasm  # no expression evaluation
+@requireExpressionEvaluation
 class TestFunctionRefQualifiers(TestBase):
     def test(self):
         self.build()

diff  --git a/lldb/test/API/lang/cpp/global_operators/TestCppGlobalOperators.py 
b/lldb/test/API/lang/cpp/global_operators/TestCppGlobalOperators.py
index b8c23d50b4d3c..94348fc1745f6 100644
--- a/lldb/test/API/lang/cpp/global_operators/TestCppGlobalOperators.py
+++ b/lldb/test/API/lang/cpp/global_operators/TestCppGlobalOperators.py
@@ -7,7 +7,7 @@
 from lldbsuite.test import lldbutil
 
 
-@skipIfWasm  # no expression evaluation
+@requireExpressionEvaluation
 class TestCppGlobalOperators(TestBase):
     def prepare_executable_and_get_frame(self):
         self.build()

diff  --git a/lldb/test/API/lang/cpp/llvm-style/TestLLVMStyle.py 
b/lldb/test/API/lang/cpp/llvm-style/TestLLVMStyle.py
index 0dcbd0979d5a3..ba20388ea8d26 100644
--- a/lldb/test/API/lang/cpp/llvm-style/TestLLVMStyle.py
+++ b/lldb/test/API/lang/cpp/llvm-style/TestLLVMStyle.py
@@ -1,4 +1,4 @@
 from lldbsuite.test import lldbinline
 from lldbsuite.test import decorators
 
-lldbinline.MakeInlineTest(__file__, globals(), [decorators.skipIfWasm])
+lldbinline.MakeInlineTest(__file__, globals(), [decorators.requireNotWasm])

diff  --git a/lldb/test/API/lang/cpp/modules-import/TestCXXModulesImport.py 
b/lldb/test/API/lang/cpp/modules-import/TestCXXModulesImport.py
index 040d44eb8bdcb..3dfd65308aa20 100644
--- a/lldb/test/API/lang/cpp/modules-import/TestCXXModulesImport.py
+++ b/lldb/test/API/lang/cpp/modules-import/TestCXXModulesImport.py
@@ -19,7 +19,7 @@ def build(self):
             )
         super(CXXModulesImportTestCase, self).build()
 
-    @skipUnlessDarwin
+    @requireDarwin
     @skipIf(macos_version=["<", "10.12"])
     @skipIf(compiler="clang", compiler_version=["<", "14.0"])
     def test_expr(self):
@@ -34,7 +34,7 @@ def test_expr(self):
             "expr -l Objective-C++ -- @import THIS_MODULE_DOES_NOT_EXIST", 
error=True
         )
 
-    @skipUnlessDarwin
+    @requireDarwin
     @skipIf(macos_version=["<", "10.12"])
     @skipIf(compiler="clang", compiler_version=["<", "14.0"])
     def test_expr_failing_import(self):

diff  --git 
a/lldb/test/API/lang/cpp/multiple-inheritance/TestCppMultipleInheritance.py 
b/lldb/test/API/lang/cpp/multiple-inheritance/TestCppMultipleInheritance.py
index 9c50881f682a0..1145076080d14 100644
--- a/lldb/test/API/lang/cpp/multiple-inheritance/TestCppMultipleInheritance.py
+++ b/lldb/test/API/lang/cpp/multiple-inheritance/TestCppMultipleInheritance.py
@@ -4,7 +4,7 @@
 from lldbsuite.test import lldbutil
 
 
-@skipIfWasm  # no expression evaluation
+@requireExpressionEvaluation
 class TestCase(TestBase):
     def test(self):
         self.build()

diff  --git a/lldb/test/API/lang/cpp/namespace/TestNamespace.py 
b/lldb/test/API/lang/cpp/namespace/TestNamespace.py
index 0121932dc257b..36ce3eb8803e1 100644
--- a/lldb/test/API/lang/cpp/namespace/TestNamespace.py
+++ b/lldb/test/API/lang/cpp/namespace/TestNamespace.py
@@ -9,7 +9,7 @@
 from lldbsuite.test import lldbutil
 
 
-@skipIfWasm  # no expression evaluation
+@requireExpressionEvaluation
 class NamespaceBreakpointTestCase(TestBase):
     @expectedFailureAll(bugnumber="llvm.org/pr28548", compiler="gcc")
     @expectedFailureAll(oslist=["windows"])
@@ -133,7 +133,7 @@ def runToBkpt(self, command):
 
     # rdar://problem/8668674
     @expectedFailureAll(oslist=["windows"], bugnumber="llvm.org/pr24764")
-    @skipIfWasm  # no expression evaluation
+    @requireExpressionEvaluation
     def test_with_run_command(self):
         """Test that anonymous and named namespace variables display 
correctly."""
         self.build()

diff  --git a/lldb/test/API/lang/cpp/namespace/TestNamespaceLookup.py 
b/lldb/test/API/lang/cpp/namespace/TestNamespaceLookup.py
index eefbb4c6e7819..9dcb8fb91a1ae 100644
--- a/lldb/test/API/lang/cpp/namespace/TestNamespaceLookup.py
+++ b/lldb/test/API/lang/cpp/namespace/TestNamespaceLookup.py
@@ -100,7 +100,7 @@ def test_scope_lookup_with_run_command_globals(self):
         self.expect_expr("::func()", result_type="int", result_value="1")
 
     @skipIfWindows  # This is flakey on Windows: llvm.org/pr38373
-    @skipIfWasm  # no expression evaluation
+    @requireExpressionEvaluation
     def test_scope_lookup_with_run_command(self):
         """Test scope lookup of functions in lldb."""
         self.build()
@@ -259,7 +259,7 @@ def test_function_scope_lookup_with_run_command(self):
     # NOTE: this test may fail on older systems that don't emit import
     # entries in DWARF - may need to add checks for compiler versions here.
     @skipIf(compiler="gcc", oslist=["linux"], debug_info=["dwo"])  # Skip to 
avoid crash
-    @skipIfWasm  # no expression evaluation
+    @requireExpressionEvaluation
     def test_scope_after_using_directive_lookup_with_run_command(self):
         """Test scope lookup after using directive in lldb."""
         self.build()
@@ -323,7 +323,7 @@ def 
test_scope_ambiguity_after_using_lookup_with_run_command(self):
         # the same type.
         self.expect("expr -- func()", startstr="error")
 
-    @skipIfWasm  # no expression evaluation
+    @requireExpressionEvaluation
     def test_scope_lookup_shadowed_by_using_with_run_command(self):
         """Test scope lookup shadowed by using in lldb."""
         self.build()

diff  --git 
a/lldb/test/API/lang/cpp/namespace_conflicts/TestNamespaceConflicts.py 
b/lldb/test/API/lang/cpp/namespace_conflicts/TestNamespaceConflicts.py
index 0dcbd0979d5a3..ba20388ea8d26 100644
--- a/lldb/test/API/lang/cpp/namespace_conflicts/TestNamespaceConflicts.py
+++ b/lldb/test/API/lang/cpp/namespace_conflicts/TestNamespaceConflicts.py
@@ -1,4 +1,4 @@
 from lldbsuite.test import lldbinline
 from lldbsuite.test import decorators
 
-lldbinline.MakeInlineTest(__file__, globals(), [decorators.skipIfWasm])
+lldbinline.MakeInlineTest(__file__, globals(), [decorators.requireNotWasm])

diff  --git a/lldb/test/API/lang/cpp/operators/TestCppOperators.py 
b/lldb/test/API/lang/cpp/operators/TestCppOperators.py
index 1c2876284512d..ee3c1d1199708 100644
--- a/lldb/test/API/lang/cpp/operators/TestCppOperators.py
+++ b/lldb/test/API/lang/cpp/operators/TestCppOperators.py
@@ -5,7 +5,7 @@
     __file__,
     globals(),
     [
-        decorators.skipIfWasm,
+        decorators.requireNotWasm,
         decorators.expectedFailureAll(bugnumber="llvm.org/pr50814", 
compiler="gcc"),
     ],
 )

diff  --git 
a/lldb/test/API/lang/cpp/overloaded-functions/TestOverloadedFunctions.py 
b/lldb/test/API/lang/cpp/overloaded-functions/TestOverloadedFunctions.py
index 035fb1dafac26..bdd0836998379 100644
--- a/lldb/test/API/lang/cpp/overloaded-functions/TestOverloadedFunctions.py
+++ b/lldb/test/API/lang/cpp/overloaded-functions/TestOverloadedFunctions.py
@@ -8,7 +8,7 @@
 from lldbsuite.test import lldbutil
 
 
-@skipIfWasm  # no expression evaluation
+@requireExpressionEvaluation
 class OverloadedFunctionsTestCase(TestBase):
     def test_with_run_command(self):
         """Test that functions with the same name are resolved correctly"""

diff  --git 
a/lldb/test/API/lang/cpp/pointer_to_member_type_depending_on_parent_size/TestPointerToMemberTypeDependingOnParentSize.py
 
b/lldb/test/API/lang/cpp/pointer_to_member_type_depending_on_parent_size/TestPointerToMemberTypeDependingOnParentSize.py
index dcf17fd1d7905..44c509272641d 100644
--- 
a/lldb/test/API/lang/cpp/pointer_to_member_type_depending_on_parent_size/TestPointerToMemberTypeDependingOnParentSize.py
+++ 
b/lldb/test/API/lang/cpp/pointer_to_member_type_depending_on_parent_size/TestPointerToMemberTypeDependingOnParentSize.py
@@ -10,7 +10,7 @@ class TestCase(TestBase):
     @skipIf(compiler="gcc")
     # On Windows both MSVC and Clang are rejecting the test code because
     # `ToLayout` is not complete when pointer_to_member_member is declared.
-    @skipIfWindows
+    @requireNotWindows
     @no_debug_info_test
     def test(self):
         """

diff  --git a/lldb/test/API/lang/cpp/printf/TestPrintf.py 
b/lldb/test/API/lang/cpp/printf/TestPrintf.py
index efa45eecac16b..f7264f99df2a2 100644
--- a/lldb/test/API/lang/cpp/printf/TestPrintf.py
+++ b/lldb/test/API/lang/cpp/printf/TestPrintf.py
@@ -5,7 +5,7 @@
     __file__,
     globals(),
     [
-        decorators.skipIfWasm,
+        decorators.requireNotWasm,
         decorators.expectedFailureAll(bugnumber="llvm.org/PR36715", 
oslist=["windows"]),
     ],
 )

diff  --git a/lldb/test/API/lang/cpp/rvalue-references/TestRvalueReferences.py 
b/lldb/test/API/lang/cpp/rvalue-references/TestRvalueReferences.py
index 67e855b36bdcc..c78765e2e1808 100644
--- a/lldb/test/API/lang/cpp/rvalue-references/TestRvalueReferences.py
+++ b/lldb/test/API/lang/cpp/rvalue-references/TestRvalueReferences.py
@@ -8,7 +8,7 @@
 from lldbsuite.test import lldbutil
 
 
-@skipIfWasm  # no expression evaluation
+@requireExpressionEvaluation
 class RvalueReferencesTestCase(TestBase):
     # rdar://problem/11479676
     @expectedFailureAll(

diff  --git a/lldb/test/API/lang/cpp/scope/TestCppScope.py 
b/lldb/test/API/lang/cpp/scope/TestCppScope.py
index 7d34156d64516..fa179656d27ed 100644
--- a/lldb/test/API/lang/cpp/scope/TestCppScope.py
+++ b/lldb/test/API/lang/cpp/scope/TestCppScope.py
@@ -4,7 +4,7 @@
 from lldbsuite.test import lldbutil
 
 
-@skipIfWasm  # no expression evaluation
+@requireExpressionEvaluation
 class TestCase(TestBase):
     @expectedFailureAll(oslist=["windows"], bugnumber="llvm.org/pr24764")
     def test(self):

diff  --git a/lldb/test/API/lang/cpp/static_members/TestCPPStaticMembers.py 
b/lldb/test/API/lang/cpp/static_members/TestCPPStaticMembers.py
index d44d9be303bbd..5f64a29d2cbf8 100644
--- a/lldb/test/API/lang/cpp/static_members/TestCPPStaticMembers.py
+++ b/lldb/test/API/lang/cpp/static_members/TestCPPStaticMembers.py
@@ -12,7 +12,7 @@
 class TestCase(TestBase):
     # We fail to lookup static members on Windows.
     @expectedFailureAll(oslist=["windows"])
-    @skipIfWasm  # no expression evaluation
+    @requireExpressionEvaluation
     def test_access_from_main(self):
         self.build()
         lldbutil.run_to_source_breakpoint(
@@ -25,7 +25,7 @@ def test_access_from_main(self):
 
     # We fail to lookup static members on Windows.
     @expectedFailureAll(oslist=["windows"])
-    @skipIfWasm  # no expression evaluation
+    @requireExpressionEvaluation
     def test_access_from_member_function(self):
         self.build()
         lldbutil.run_to_source_breakpoint(
@@ -48,7 +48,7 @@ def test_access_without_scope(self):
 
     # We fail to lookup static members on Windows.
     @expectedFailureAll(oslist=["windows"])
-    @skipIfWasm  # no expression evaluation
+    @requireExpressionEvaluation
     def test_no_crash_in_IR_arithmetic(self):
         """
         Test that LLDB doesn't crash on evaluating specific expression 
involving

diff  --git a/lldb/test/API/lang/cpp/static_methods/TestCPPStaticMethods.py 
b/lldb/test/API/lang/cpp/static_methods/TestCPPStaticMethods.py
index 5ec95a513ab71..9a866542088bb 100644
--- a/lldb/test/API/lang/cpp/static_methods/TestCPPStaticMethods.py
+++ b/lldb/test/API/lang/cpp/static_methods/TestCPPStaticMethods.py
@@ -8,7 +8,7 @@
 from lldbsuite.test import lldbutil
 
 
-@skipIfWasm  # no expression evaluation
+@requireExpressionEvaluation
 class CPPStaticMethodsTestCase(TestBase):
     def test_with_run_command(self):
         """Test that static methods are properly distinguished from regular 
methods"""

diff  --git a/lldb/test/API/lang/cpp/symbols/TestSymbols.py 
b/lldb/test/API/lang/cpp/symbols/TestSymbols.py
index e9915f054ce05..65682d57a0fed 100644
--- a/lldb/test/API/lang/cpp/symbols/TestSymbols.py
+++ b/lldb/test/API/lang/cpp/symbols/TestSymbols.py
@@ -5,7 +5,7 @@
     __file__,
     globals(),
     [
-        decorators.skipIfWasm,
+        decorators.requireNotWasm,
         decorators.expectedFailureAll(oslist=["windows"], 
bugnumber="llvm.org/pr24764"),
     ],
 )

diff  --git 
a/lldb/test/API/lang/cpp/template-diagnostic-hint/TestTemplateDiagnosticHint.py 
b/lldb/test/API/lang/cpp/template-diagnostic-hint/TestTemplateDiagnosticHint.py
index b99bade89a608..1ea90acb59f1d 100644
--- 
a/lldb/test/API/lang/cpp/template-diagnostic-hint/TestTemplateDiagnosticHint.py
+++ 
b/lldb/test/API/lang/cpp/template-diagnostic-hint/TestTemplateDiagnosticHint.py
@@ -4,7 +4,7 @@
 from lldbsuite.test import lldbutil
 
 
-@skipIfWasm  # no expression evaluation
+@requireExpressionEvaluation
 class TestCase(TestBase):
     @expectedFailureWindows
     def test(self):

diff  --git a/lldb/test/API/lang/cpp/template-function/TestTemplateFunctions.py 
b/lldb/test/API/lang/cpp/template-function/TestTemplateFunctions.py
index f763bbb1a92f2..b3c9ef27aea92 100644
--- a/lldb/test/API/lang/cpp/template-function/TestTemplateFunctions.py
+++ b/lldb/test/API/lang/cpp/template-function/TestTemplateFunctions.py
@@ -56,7 +56,7 @@ def do_test_template_function(self, add_cast):
             self.expect_expr("d1 == d2", result_type="bool", 
result_value="true")
 
     @skipIfWindows
-    @skipIfWasm  # no expression evaluation
+    @requireExpressionEvaluation
     def test_template_function_with_cast(self):
         self.do_test_template_function(True)
 

diff  --git a/lldb/test/API/lang/cpp/this/TestCPPThis.py 
b/lldb/test/API/lang/cpp/this/TestCPPThis.py
index 137a771e2e3eb..8e79dd2442b56 100644
--- a/lldb/test/API/lang/cpp/this/TestCPPThis.py
+++ b/lldb/test/API/lang/cpp/this/TestCPPThis.py
@@ -8,7 +8,7 @@
 from lldbsuite.test import lldbutil
 
 
-@skipIfWasm  # no expression evaluation
+@requireExpressionEvaluation
 class CPPThisTestCase(TestBase):
     # rdar://problem/9962849
     @expectedFailureAll(

diff  --git 
a/lldb/test/API/lang/cpp/this_class_type_mixing/TestThisClassTypeMixing.py 
b/lldb/test/API/lang/cpp/this_class_type_mixing/TestThisClassTypeMixing.py
index 775fdccd3f6f1..7f63ce40b6817 100644
--- a/lldb/test/API/lang/cpp/this_class_type_mixing/TestThisClassTypeMixing.py
+++ b/lldb/test/API/lang/cpp/this_class_type_mixing/TestThisClassTypeMixing.py
@@ -14,7 +14,7 @@ class by injecting a "$__lldb_expr" member function into the 
class. This
 from lldbsuite.test import lldbutil
 
 
-@skipIfWasm  # no expression evaluation
+@requireExpressionEvaluation
 class TestCase(TestBase):
     @no_debug_info_test
     def test(self):

diff  --git a/lldb/test/API/lang/cpp/thread_local/TestThreadLocal.py 
b/lldb/test/API/lang/cpp/thread_local/TestThreadLocal.py
index 3e7bca426f5c2..4faec9d5613fd 100644
--- a/lldb/test/API/lang/cpp/thread_local/TestThreadLocal.py
+++ b/lldb/test/API/lang/cpp/thread_local/TestThreadLocal.py
@@ -7,7 +7,7 @@
 from lldbsuite.test import lldbtest
 
 
-@skipIfWasm  # checks the platform-specific TLS-uninitialized error, N/A to 
wasm
+@requireNotWasm  # checks the platform-specific TLS-uninitialized error, N/A 
to wasm
 class PlatformProcessCrashInfoTestCase(TestBase):
     @expectedFailureAll(oslist=["windows", "linux", "freebsd", "netbsd"])
     @skipIfDarwin  # rdar://120795095

diff  --git a/lldb/test/API/lang/cpp/trivial_abi/TestTrivialABI.py 
b/lldb/test/API/lang/cpp/trivial_abi/TestTrivialABI.py
index 021d14d613aec..a7a4b1f7fd12b 100644
--- a/lldb/test/API/lang/cpp/trivial_abi/TestTrivialABI.py
+++ b/lldb/test/API/lang/cpp/trivial_abi/TestTrivialABI.py
@@ -9,7 +9,7 @@
 from lldbsuite.test import lldbutil
 
 
-@skipIfWasm  # return value is unrecoverable from the operand stack at a 
step-out
+@requireNotWasm  # return value is unrecoverable from the operand stack at a 
step-out
 class TestTrivialABI(TestBase):
     NO_DEBUG_INFO_TESTCASE = True
 

diff  --git a/lldb/test/API/lang/cpp/typedef/TestCppTypedef.py 
b/lldb/test/API/lang/cpp/typedef/TestCppTypedef.py
index a6dadcbd4d1c1..65b74e4782da1 100644
--- a/lldb/test/API/lang/cpp/typedef/TestCppTypedef.py
+++ b/lldb/test/API/lang/cpp/typedef/TestCppTypedef.py
@@ -8,7 +8,7 @@
 from lldbsuite.test.decorators import *
 
 
-@skipIfWasm  # no expression evaluation
+@requireExpressionEvaluation
 class TestCppTypedef(TestBase):
     def test_typedef(self):
         """

diff  --git a/lldb/test/API/lang/cpp/unicode-literals/TestUnicodeLiterals.py 
b/lldb/test/API/lang/cpp/unicode-literals/TestUnicodeLiterals.py
index 345722d90c19f..96e34d52c834c 100644
--- a/lldb/test/API/lang/cpp/unicode-literals/TestUnicodeLiterals.py
+++ b/lldb/test/API/lang/cpp/unicode-literals/TestUnicodeLiterals.py
@@ -23,7 +23,7 @@
 # }
 
 
-@skipIfWasm  # no expression evaluation
+@requireExpressionEvaluation
 class UnicodeLiteralsTestCase(TestBase):
     def test_expr1(self):
         """Test that the expression parser returns proper Unicode strings."""

diff  --git 
a/lldb/test/API/lang/cpp/union-static-data-members/TestCppUnionStaticMembers.py 
b/lldb/test/API/lang/cpp/union-static-data-members/TestCppUnionStaticMembers.py
index 684661f8ee14c..8317bb299d407 100644
--- 
a/lldb/test/API/lang/cpp/union-static-data-members/TestCppUnionStaticMembers.py
+++ 
b/lldb/test/API/lang/cpp/union-static-data-members/TestCppUnionStaticMembers.py
@@ -8,7 +8,7 @@
 import lldbsuite.test.lldbutil as lldbutil
 
 
-@skipIfWasm  # no expression evaluation
+@requireExpressionEvaluation
 class CppUnionStaticMembersTestCase(TestBase):
     def test_print_union(self):
         """Tests that frame variable and expr work

diff  --git a/lldb/test/API/lang/cpp/unique-types4/TestUniqueTypes4.py 
b/lldb/test/API/lang/cpp/unique-types4/TestUniqueTypes4.py
index 05f1128c0eafd..b924ed7f8d86a 100644
--- a/lldb/test/API/lang/cpp/unique-types4/TestUniqueTypes4.py
+++ b/lldb/test/API/lang/cpp/unique-types4/TestUniqueTypes4.py
@@ -8,7 +8,7 @@
 from lldbsuite.test.lldbtest import *
 
 
-@skipIfWasm  # no expression evaluation
+@requireExpressionEvaluation
 class UniqueTypesTestCase4(TestBase):
     SHARED_BUILD_TESTCASE = False
 

diff  --git 
a/lldb/test/API/lang/cpp/virtual-functions/TestCppVirtualFunctions.py 
b/lldb/test/API/lang/cpp/virtual-functions/TestCppVirtualFunctions.py
index f329e3e17cb7e..dfd6ab5e71d29 100644
--- a/lldb/test/API/lang/cpp/virtual-functions/TestCppVirtualFunctions.py
+++ b/lldb/test/API/lang/cpp/virtual-functions/TestCppVirtualFunctions.py
@@ -4,7 +4,7 @@
 from lldbsuite.test import lldbutil
 
 
-@skipIfWasm  # no expression evaluation
+@requireExpressionEvaluation
 class TestCase(TestBase):
     def common_setup(self):
         self.build()

diff  --git 
a/lldb/test/API/lang/objc/complete-type-check/TestObjCIsTypeComplete.py 
b/lldb/test/API/lang/objc/complete-type-check/TestObjCIsTypeComplete.py
index f944e60b91bf2..651d000d0a884 100644
--- a/lldb/test/API/lang/objc/complete-type-check/TestObjCIsTypeComplete.py
+++ b/lldb/test/API/lang/objc/complete-type-check/TestObjCIsTypeComplete.py
@@ -7,7 +7,7 @@
 
 
 class TestCase(TestBase):
-    @skipUnlessDarwin
+    @requireDarwin
     @no_debug_info_test
     def test(self):
         self.build()

diff  --git 
a/lldb/test/API/lang/objc/conflicting-class-list-function-from-user/TestObjCClassListFunctionFromUser.py
 
b/lldb/test/API/lang/objc/conflicting-class-list-function-from-user/TestObjCClassListFunctionFromUser.py
index a643a1d7b4cea..badfb89fbfcf1 100644
--- 
a/lldb/test/API/lang/objc/conflicting-class-list-function-from-user/TestObjCClassListFunctionFromUser.py
+++ 
b/lldb/test/API/lang/objc/conflicting-class-list-function-from-user/TestObjCClassListFunctionFromUser.py
@@ -5,7 +5,7 @@
 
 
 class TestCase(TestBase):
-    @skipUnlessDarwin
+    @requireDarwin
     # LLDB ends up calling the user-defined function (but at least doesn't
     # crash).
     @skipIf(macos_version=["<", "13.0"])

diff  --git 
a/lldb/test/API/lang/objc/cpp_keyword_identifiers/TestCppKeywordsAsObjCIdentifiers.py
 
b/lldb/test/API/lang/objc/cpp_keyword_identifiers/TestCppKeywordsAsObjCIdentifiers.py
index 3110fd99a18eb..c74bee18f9f76 100644
--- 
a/lldb/test/API/lang/objc/cpp_keyword_identifiers/TestCppKeywordsAsObjCIdentifiers.py
+++ 
b/lldb/test/API/lang/objc/cpp_keyword_identifiers/TestCppKeywordsAsObjCIdentifiers.py
@@ -5,7 +5,7 @@
 
 
 class TestCase(TestBase):
-    @skipUnlessDarwin
+    @requireDarwin
     @no_debug_info_test
     def test(self):
         self.build()

diff  --git 
a/lldb/test/API/lang/objc/languageinfo/TestObjCLanguageSpecificData.py 
b/lldb/test/API/lang/objc/languageinfo/TestObjCLanguageSpecificData.py
index 5558abed929da..11938db2f7a56 100644
--- a/lldb/test/API/lang/objc/languageinfo/TestObjCLanguageSpecificData.py
+++ b/lldb/test/API/lang/objc/languageinfo/TestObjCLanguageSpecificData.py
@@ -5,7 +5,7 @@
 
 
 class ObjCiVarIMPTestCase(TestBase):
-    @skipUnlessDarwin
+    @requireDarwin
     @no_debug_info_test
     def test_imp_ivar_type(self):
         self.build()

diff  --git 
a/lldb/test/API/lang/objc/module-import-log/TestClangModuleImportLog.py 
b/lldb/test/API/lang/objc/module-import-log/TestClangModuleImportLog.py
index d758f67325296..09bc8c91f32bc 100644
--- a/lldb/test/API/lang/objc/module-import-log/TestClangModuleImportLog.py
+++ b/lldb/test/API/lang/objc/module-import-log/TestClangModuleImportLog.py
@@ -5,7 +5,7 @@
 
 
 class TestCase(TestBase):
-    @skipUnlessDarwin
+    @requireDarwin
     def test(self):
         self.build()
 

diff  --git a/lldb/test/API/lang/objc/objc-class-method/TestObjCClassMethod.py 
b/lldb/test/API/lang/objc/objc-class-method/TestObjCClassMethod.py
index ebbf35ab9ba3e..09ee5b58db0ab 100644
--- a/lldb/test/API/lang/objc/objc-class-method/TestObjCClassMethod.py
+++ b/lldb/test/API/lang/objc/objc-class-method/TestObjCClassMethod.py
@@ -15,7 +15,7 @@ def setUp(self):
 
     NO_DEBUG_INFO_TESTCASE = True
 
-    @skipUnlessDarwin
+    @requireDarwin
     @add_test_categories(["pyapi"])
     def test_without_class_stubs(self):
         self.do_test_with_python_api()

diff  --git a/lldb/test/API/lang/objc/objc-optimized/TestObjcOptimized.py 
b/lldb/test/API/lang/objc/objc-optimized/TestObjcOptimized.py
index ebff8896acf20..2c069b5c9dad8 100644
--- a/lldb/test/API/lang/objc/objc-optimized/TestObjcOptimized.py
+++ b/lldb/test/API/lang/objc/objc-optimized/TestObjcOptimized.py
@@ -17,7 +17,7 @@
 # test failure: objc_optimized does not work for "-C clang -A i386"
 
 
-@skipUnlessDarwin
+@requireDarwin
 class ObjcOptimizedTestCase(TestBase):
     myclass = "MyClass"
     mymethod = "description"

diff  --git a/lldb/test/API/lang/objc/orderedset/TestOrderedSet.py 
b/lldb/test/API/lang/objc/orderedset/TestOrderedSet.py
index fb5b02a6f9013..65e86f8c8d96a 100644
--- a/lldb/test/API/lang/objc/orderedset/TestOrderedSet.py
+++ b/lldb/test/API/lang/objc/orderedset/TestOrderedSet.py
@@ -11,7 +11,7 @@ def test_ordered_set(self):
         self.build()
         self.run_tests()
 
-    @skipUnlessDarwin
+    @requireDarwin
     def test_ordered_set_no_const(self):
         disable_constant_classes = {
             "CFLAGS_EXTRAS": "-fno-constant-nsnumber-literals "

diff  --git 
a/lldb/test/API/lang/objc/single-entry-dictionary/TestObjCSingleEntryDictionary.py
 
b/lldb/test/API/lang/objc/single-entry-dictionary/TestObjCSingleEntryDictionary.py
index 748d727ef62dc..8e8166791ab82 100644
--- 
a/lldb/test/API/lang/objc/single-entry-dictionary/TestObjCSingleEntryDictionary.py
+++ 
b/lldb/test/API/lang/objc/single-entry-dictionary/TestObjCSingleEntryDictionary.py
@@ -16,7 +16,7 @@ def setUp(self):
         # Find the line number to break inside main().
         self.line = line_number("main.m", "// break here")
 
-    @skipUnlessDarwin
+    @requireDarwin
     @expectedFailureAll(
         oslist=["watchos"], bugnumber="rdar://problem/34642736"
     )  # bug in NSDictionary formatting on watchos
@@ -24,7 +24,7 @@ def test_single_entry_dict(self):
         self.build()
         self.run_tests()
 
-    @skipUnlessDarwin
+    @requireDarwin
     @expectedFailureAll(
         oslist=["watchos"], bugnumber="rdar://problem/34642736"
     )  # bug in NSDictionary formatting on watchos

diff  --git 
a/lldb/test/API/lang/objc/tagged-pointer-children/TestTaggedPointerChildren.py 
b/lldb/test/API/lang/objc/tagged-pointer-children/TestTaggedPointerChildren.py
index b7b72139cf2ae..ddcdcc6635827 100644
--- 
a/lldb/test/API/lang/objc/tagged-pointer-children/TestTaggedPointerChildren.py
+++ 
b/lldb/test/API/lang/objc/tagged-pointer-children/TestTaggedPointerChildren.py
@@ -26,7 +26,7 @@ def assert_no_unreadable_children(self, valobj):
             )
             self.assert_no_unreadable_children(child)
 
-    @skipUnlessDarwin
+    @requireDarwin
     @skipIf(archs=["i386", "i686"])
     def test(self):
         """
@@ -67,7 +67,7 @@ def test(self):
         self.assertGreater(heap.GetNumChildren(), 0, "real object still has 
children")
         self.assert_no_unreadable_children(heap)
 
-    @skipUnlessDarwin
+    @requireDarwin
     @skipIf(archs=["i386", "i686"])
     def test_registered_synthetic_takes_precedence(self):
         """

diff  --git 
a/lldb/test/API/lang/objc/warnings-in-expr-parser/TestObjCWarningsInExprParser.py
 
b/lldb/test/API/lang/objc/warnings-in-expr-parser/TestObjCWarningsInExprParser.py
index 5a8ed7327dbdd..bcb6951d1d915 100644
--- 
a/lldb/test/API/lang/objc/warnings-in-expr-parser/TestObjCWarningsInExprParser.py
+++ 
b/lldb/test/API/lang/objc/warnings-in-expr-parser/TestObjCWarningsInExprParser.py
@@ -9,7 +9,7 @@
 
 
 class TestCase(TestBase):
-    @skipUnlessDarwin
+    @requireDarwin
     @no_debug_info_test
     def test(self):
         self.build()

diff  --git 
a/lldb/test/API/lang/objcxx/cpp_keywords_enabled/TestObjCppKeywordsEnabled.py 
b/lldb/test/API/lang/objcxx/cpp_keywords_enabled/TestObjCppKeywordsEnabled.py
index 68639789bc358..a3c6bda33f132 100644
--- 
a/lldb/test/API/lang/objcxx/cpp_keywords_enabled/TestObjCppKeywordsEnabled.py
+++ 
b/lldb/test/API/lang/objcxx/cpp_keywords_enabled/TestObjCppKeywordsEnabled.py
@@ -5,7 +5,7 @@
 
 
 class TestCase(TestBase):
-    @skipUnlessDarwin
+    @requireDarwin
     @no_debug_info_test
     def test_keyword(self):
         # Make sure that C++ keywords work in the expression parser when using


        
_______________________________________________
lldb-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

Reply via email to