[Lldb-commits] [lldb] [lldb] Gate debugserver tests on advertised qSupported features (PR #214768)

Yao Qi via lldb-commits lldb-commits at lists.llvm.org
Fri Aug 14 03:40:36 PDT 2026


================
@@ -44,7 +44,11 @@ def test_shared_cache_vm_range(self):
         response = re.search("response: (.+)", res.GetOutput()).group(1)
         json_response = json.loads(response)
         self.assertTrue("shared_cache_base_address" in json_response)
-        self.assertTrue("shared_cache_size" in json_response)
+        # Older debugservers don't report the size, so the range is unknown.
----------------
qiyao wrote:

Good point, reverted in a follow-up commit so the change is easy to see in review. `TestSharedCacheVMRange.py` keeps `@skipIfOutOfTreeDebugserver` and the hard `assertTrue`("shared_cache_size" in json_response).
 
 The difference is what the check is asking.  For `MultiMemRead+`/`jMultiBreakpoint+`/`ExpediteStack+`, the stub
 tells us up front whether it has the feature, so a missing capability is a legitimate "can't run here".   `shared_cache_size` isn't advertised anywhere, the only way to notice it's gone is to send `jGetSharedCacheInfo` and look, and at that point a missing key is indistinguishable from the regression you're worried about.  So it stays an assertion failure. In a year  the decorator comes off and the assert catches the removal.

https://github.com/llvm/llvm-project/pull/214768


More information about the lldb-commits mailing list