[Lldb-commits] [lldb] r355525 - Adding test to cover the correct import of SourceLocation pertaining to a built-in during expression parsing

Shafik Yaghmour via lldb-commits lldb-commits at lists.llvm.org
Wed Mar 6 10:03:54 PST 2019


Author: shafik
Date: Wed Mar  6 10:03:54 2019
New Revision: 355525

URL: http://llvm.org/viewvc/llvm-project?rev=355525&view=rev
Log:
Adding test to cover the correct import of SourceLocation pertaining to a built-in during expression parsing

Summary: This tests a fix in the ASTImpoter.cpp to ensure that we import built-in correctly,
see differential: https://reviews.llvm.org/D58743
Once this change is merged this test should pass and should catch regressions in this feature.

Differential Revision: https://reviews.llvm.org/D58790

Added:
    lldb/trunk/packages/Python/lldbsuite/test/expression_command/import_builtin_fileid/
    lldb/trunk/packages/Python/lldbsuite/test/expression_command/import_builtin_fileid/Makefile
    lldb/trunk/packages/Python/lldbsuite/test/expression_command/import_builtin_fileid/TestImportBuiltinFileID.py
    lldb/trunk/packages/Python/lldbsuite/test/expression_command/import_builtin_fileid/main.m

Added: lldb/trunk/packages/Python/lldbsuite/test/expression_command/import_builtin_fileid/Makefile
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/packages/Python/lldbsuite/test/expression_command/import_builtin_fileid/Makefile?rev=355525&view=auto
==============================================================================
--- lldb/trunk/packages/Python/lldbsuite/test/expression_command/import_builtin_fileid/Makefile (added)
+++ lldb/trunk/packages/Python/lldbsuite/test/expression_command/import_builtin_fileid/Makefile Wed Mar  6 10:03:54 2019
@@ -0,0 +1,6 @@
+LEVEL = ../../make
+
+OBJC_SOURCES := main.m
+
+include $(LEVEL)/Makefile.rules
+LDFLAGS += -framework Cocoa

Added: lldb/trunk/packages/Python/lldbsuite/test/expression_command/import_builtin_fileid/TestImportBuiltinFileID.py
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/packages/Python/lldbsuite/test/expression_command/import_builtin_fileid/TestImportBuiltinFileID.py?rev=355525&view=auto
==============================================================================
--- lldb/trunk/packages/Python/lldbsuite/test/expression_command/import_builtin_fileid/TestImportBuiltinFileID.py (added)
+++ lldb/trunk/packages/Python/lldbsuite/test/expression_command/import_builtin_fileid/TestImportBuiltinFileID.py Wed Mar  6 10:03:54 2019
@@ -0,0 +1,27 @@
+"""
+They may be cases where an expression will import SourceLocation and if the
+SourceLocation ends up with a FileID that is a built-in we need to copy that
+buffer over correctly.
+"""
+
+
+import lldb
+from lldbsuite.test.decorators import *
+from lldbsuite.test.lldbtest import *
+from lldbsuite.test import lldbutil
+
+class TestImportBuiltinFileID(TestBase):
+
+    mydir = TestBase.compute_mydir(__file__)
+
+    @skipUnlessDarwin
+    @skipIfDarwinEmbedded
+    @add_test_categories(["gmodules"])
+    def test_import_builtin_fileid(self):
+        self.build()
+
+        lldbutil.run_to_source_breakpoint(self, '// break here',
+                lldb.SBFileSpec("main.m", False))
+
+        self.expect("expr int (*DBG_CGImageGetRenderingIntent)(void *) = ((int (*)(void *))CGImageGetRenderingIntent); DBG_CGImageGetRenderingIntent((void *)0x00000000000000);", 
+                substrs=['$0 = 0'])

Added: lldb/trunk/packages/Python/lldbsuite/test/expression_command/import_builtin_fileid/main.m
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/packages/Python/lldbsuite/test/expression_command/import_builtin_fileid/main.m?rev=355525&view=auto
==============================================================================
--- lldb/trunk/packages/Python/lldbsuite/test/expression_command/import_builtin_fileid/main.m (added)
+++ lldb/trunk/packages/Python/lldbsuite/test/expression_command/import_builtin_fileid/main.m Wed Mar  6 10:03:54 2019
@@ -0,0 +1,6 @@
+#import <Cocoa/Cocoa.h>
+
+int main(int argc, const char * argv[]) {
+
+    return 0; // break here
+}




More information about the lldb-commits mailing list