Author: Dave Lee Date: 2022-01-15T10:20:52-08:00 New Revision: a7e7f541c0813e9d3f6c641ad8ff89619ec749d8
URL: https://github.com/llvm/llvm-project/commit/a7e7f541c0813e9d3f6c641ad8ff89619ec749d8 DIFF: https://github.com/llvm/llvm-project/commit/a7e7f541c0813e9d3f6c641ad8ff89619ec749d8.diff LOG: [lldb] Remove anon struct from frame-var-anon-unions test This test for anonymous unions seems off. It tests the following: ``` union { // fields }; struct { // fields } var{...}; ``` Both are anonymous types, but the first does not declare a variable and the second one does. The test then checks that `frame var` can directly access the fields of the anonymous union, but can't directly access the fields of the anonymous struct variable. The second test, to directly access the members of the struct variable, seems pointless as similar code would not compile. A demonstration: ``` struct { int a; int z; } a_z{23, 45}; printf("%d\n", a_z.a); // fine printf("%d\n", a); // this does not compile ``` Since we can't directly access the fields in code, I'm not sure there's a reason to test that lldb also can't directly access them (other than perhaps as a regression test). Differential Revision: https://reviews.llvm.org/D116863 Added: Modified: lldb/test/API/lang/cpp/frame-var-anon-unions/TestFrameVariableAnonymousUnions.py lldb/test/API/lang/cpp/frame-var-anon-unions/main.cpp Removed: ################################################################################ diff --git a/lldb/test/API/lang/cpp/frame-var-anon-unions/TestFrameVariableAnonymousUnions.py b/lldb/test/API/lang/cpp/frame-var-anon-unions/TestFrameVariableAnonymousUnions.py index 6352b68e7d753..6462896042f35 100644 --- a/lldb/test/API/lang/cpp/frame-var-anon-unions/TestFrameVariableAnonymousUnions.py +++ b/lldb/test/API/lang/cpp/frame-var-anon-unions/TestFrameVariableAnonymousUnions.py @@ -29,7 +29,3 @@ def test_with_run_command(self): self.expect('frame variable -f x i', substrs=['41ffff00']) self.expect('frame variable c', substrs=["'A"]) - - self.expect('frame variable x', matching=False, substrs=['3']) - self.expect('frame variable y', matching=False, substrs=["'B'"]) - self.expect('frame variable z', matching=False, substrs=['14']) diff --git a/lldb/test/API/lang/cpp/frame-var-anon-unions/main.cpp b/lldb/test/API/lang/cpp/frame-var-anon-unions/main.cpp index 7c0eac23600a1..976d3f554b0d1 100644 --- a/lldb/test/API/lang/cpp/frame-var-anon-unions/main.cpp +++ b/lldb/test/API/lang/cpp/frame-var-anon-unions/main.cpp @@ -3,11 +3,6 @@ int main() { int i; char c; }; - struct { - int x; - char y; - short z; - } s{3,'B',14}; i = 0xFFFFFF00; c = 'A'; return c; // break here _______________________________________________ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits