Author: Michael Buch
Date: 2024-03-12T22:19:27Z
New Revision: 88bf64097e453deca73c91ec7de1af7eebe296a9

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

LOG: [lldb][test] TestExprCompletion.py: add tests for completion of reserved 
identifiers (#84890)

Added: 
    lldb/test/API/commands/expression/completion/sys/reserved.h

Modified: 
    lldb/test/API/commands/expression/completion/Makefile
    lldb/test/API/commands/expression/completion/TestExprCompletion.py
    lldb/test/API/commands/expression/completion/main.cpp

Removed: 
    


################################################################################
diff  --git a/lldb/test/API/commands/expression/completion/Makefile 
b/lldb/test/API/commands/expression/completion/Makefile
index 020dce7c31d11d..9882622b2189ea 100644
--- a/lldb/test/API/commands/expression/completion/Makefile
+++ b/lldb/test/API/commands/expression/completion/Makefile
@@ -1,3 +1,4 @@
 CXX_SOURCES := main.cpp other.cpp
+CXXFLAGS += -isystem $(SRCDIR)/sys
 
 include Makefile.rules

diff  --git 
a/lldb/test/API/commands/expression/completion/TestExprCompletion.py 
b/lldb/test/API/commands/expression/completion/TestExprCompletion.py
index c6a1e3c0f42275..022b9436ee8ea6 100644
--- a/lldb/test/API/commands/expression/completion/TestExprCompletion.py
+++ b/lldb/test/API/commands/expression/completion/TestExprCompletion.py
@@ -246,6 +246,11 @@ def test_expr_completion(self):
             "expr some_expr.Self(). FooNoArgs", "expr some_expr.Self(). 
FooNoArgsBar()"
         )
 
+        self.complete_from_to("expr myVec.__f", "expr myVec.__func()")
+        self.complete_from_to("expr myVec._F", "expr myVec._Func()")
+        self.complete_from_to("expr myVec.__m", "expr myVec.__mem")
+        self.complete_from_to("expr myVec._M", "expr myVec._Mem")
+
     def test_expr_completion_with_descriptions(self):
         self.build()
         self.main_source = "main.cpp"

diff  --git a/lldb/test/API/commands/expression/completion/main.cpp 
b/lldb/test/API/commands/expression/completion/main.cpp
index 908bebbebff568..5e03805a7a4d5c 100644
--- a/lldb/test/API/commands/expression/completion/main.cpp
+++ b/lldb/test/API/commands/expression/completion/main.cpp
@@ -1,3 +1,5 @@
+#include <reserved.h>
+
 namespace LongNamespaceName { class NestedClass { long m; }; }
 
 // Defined in other.cpp, we only have a forward declaration here.
@@ -31,5 +33,8 @@ int main()
     some_expr.FooNumbersBar1();
     Expr::StaticMemberMethodBar();
     ForwardDecl *fwd_decl_ptr = &fwd_decl;
+    MyVec myVec;
+    myVec.__func();
+    myVec._Func();
     return 0; // Break here
 }

diff  --git a/lldb/test/API/commands/expression/completion/sys/reserved.h 
b/lldb/test/API/commands/expression/completion/sys/reserved.h
new file mode 100644
index 00000000000000..0ce10ebec62bfd
--- /dev/null
+++ b/lldb/test/API/commands/expression/completion/sys/reserved.h
@@ -0,0 +1,8 @@
+class MyVec {
+  int __mem;
+  int _Mem;
+
+public:
+  void __func() {}
+  void _Func() {}
+};


        
_______________________________________________
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

Reply via email to