shafik created this revision. shafik added reviewers: teemperor, aprantl, jingham, martong. Herald added subscribers: jdoerfert, rnkovacs. Herald added a reviewer: serge-sans-paille.
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. https://reviews.llvm.org/D58790 Files: packages/Python/lldbsuite/test/expression_command/import_builtin_fileid/Makefile packages/Python/lldbsuite/test/expression_command/import_builtin_fileid/TestImportBuiltinFileID.py packages/Python/lldbsuite/test/expression_command/import_builtin_fileid/main.m Index: packages/Python/lldbsuite/test/expression_command/import_builtin_fileid/main.m =================================================================== --- /dev/null +++ packages/Python/lldbsuite/test/expression_command/import_builtin_fileid/main.m @@ -0,0 +1,6 @@ +#import <Cocoa/Cocoa.h> + +int main(int argc, const char * argv[]) { + + return 0; // break here +} Index: packages/Python/lldbsuite/test/expression_command/import_builtin_fileid/TestImportBuiltinFileID.py =================================================================== --- /dev/null +++ packages/Python/lldbsuite/test/expression_command/import_builtin_fileid/TestImportBuiltinFileID.py @@ -0,0 +1,26 @@ +""" +They may be cases where an expression will import SourceLocation and if the +SoureLocation 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 + @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']) Index: packages/Python/lldbsuite/test/expression_command/import_builtin_fileid/Makefile =================================================================== --- /dev/null +++ packages/Python/lldbsuite/test/expression_command/import_builtin_fileid/Makefile @@ -0,0 +1,6 @@ +LEVEL = ../../make + +OBJC_SOURCES := main.m + +include $(LEVEL)/Makefile.rules +LDFLAGS += -framework Cocoa
Index: packages/Python/lldbsuite/test/expression_command/import_builtin_fileid/main.m =================================================================== --- /dev/null +++ packages/Python/lldbsuite/test/expression_command/import_builtin_fileid/main.m @@ -0,0 +1,6 @@ +#import <Cocoa/Cocoa.h> + +int main(int argc, const char * argv[]) { + + return 0; // break here +} Index: packages/Python/lldbsuite/test/expression_command/import_builtin_fileid/TestImportBuiltinFileID.py =================================================================== --- /dev/null +++ packages/Python/lldbsuite/test/expression_command/import_builtin_fileid/TestImportBuiltinFileID.py @@ -0,0 +1,26 @@ +""" +They may be cases where an expression will import SourceLocation and if the +SoureLocation 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 + @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']) Index: packages/Python/lldbsuite/test/expression_command/import_builtin_fileid/Makefile =================================================================== --- /dev/null +++ packages/Python/lldbsuite/test/expression_command/import_builtin_fileid/Makefile @@ -0,0 +1,6 @@ +LEVEL = ../../make + +OBJC_SOURCES := main.m + +include $(LEVEL)/Makefile.rules +LDFLAGS += -framework Cocoa
_______________________________________________ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits