llvm-project/lldb/test/lang/objc
Sean Callanan f0c5aeb690 This patch implements several improvements to the
module-loading support for the expression parser.

- It adds support for auto-loading modules referred
  to by a compile unit.  These references are
  currently in the form of empty translation units.
  This functionality is gated by the setting

  target.auto-import-clang-modules (boolean) = false

- It improves and corrects support for loading
  macros from modules, currently by textually
  pasting all #defines into the user's expression.
  The improvements center around including only those
  modules that are relevant to the current context -
  hand-loaded modules and the modules that are imported
  from the current compile unit.

- It adds an "opt-in" mechanism for all of this
  functionality.  Modules have to be explicitly
  imported (via @import) or auto-loaded (by enabling
  the above setting) to enable any of this
  functionality.

It also adds support to the compile unit and symbol
file code to deal with empty translation units that
indicate module imports, and plumbs this through to
the CompileUnit interface.

Finally, it makes the following changes to the test
suite:

- It adds a testcase that verifies that modules are
  automatically loaded when the appropriate setting
  is enabled (lang/objc/modules-auto-import); and

- It modifies lanb/objc/modules-incomplete to test
  the case where a module #undefs something that is
  #defined in another module.

<rdar://problem/20299554>

llvm-svn: 235313
2015-04-20 16:31:29 +00:00
..
blocks Replace sys.platform skips in tests with @skip decorators which check against remote platform. 2015-03-30 14:12:17 +00:00
forward-decl Replace sys.platform skips in tests with @skip decorators which check against remote platform. 2015-03-30 14:12:17 +00:00
foundation Replace sys.platform skips in tests with @skip decorators which check against remote platform. 2015-03-30 14:12:17 +00:00
hidden-ivars Replace sys.platform skips in tests with @skip decorators which check against remote platform. 2015-03-30 14:12:17 +00:00
modules Fixed a problem where the second @import statement 2015-04-07 17:02:02 +00:00
modules-auto-import This patch implements several improvements to the 2015-04-20 16:31:29 +00:00
modules-incomplete This patch implements several improvements to the 2015-04-20 16:31:29 +00:00
objc++ Replace sys.platform skips in tests with @skip decorators which check against remote platform. 2015-03-30 14:12:17 +00:00
objc-baseclass-sbtype Replace sys.platform skips in tests with @skip decorators which check against remote platform. 2015-03-30 14:12:17 +00:00
objc-builtin-types Replace sys.platform skips in tests with @skip decorators which check against remote platform. 2015-03-30 14:12:17 +00:00
objc-checker Replace sys.platform skips in tests with @skip decorators which check against remote platform. 2015-03-30 14:12:17 +00:00
objc-class-method Replace sys.platform skips in tests with @skip decorators which check against remote platform. 2015-03-30 14:12:17 +00:00
objc-dyn-sbtype Replace sys.platform skips in tests with @skip decorators which check against remote platform. 2015-03-30 14:12:17 +00:00
objc-dynamic-value Replace sys.platform skips in tests with @skip decorators which check against remote platform. 2015-03-30 14:12:17 +00:00
objc-ivar-offsets Replace sys.platform skips in tests with @skip decorators which check against remote platform. 2015-03-30 14:12:17 +00:00
objc-ivar-protocols Handle types from the runtime that conform to 2014-11-06 19:26:10 +00:00
objc-ivar-stripped Replace sys.platform skips in tests with @skip decorators which check against remote platform. 2015-03-30 14:12:17 +00:00
objc-new-syntax Replace sys.platform skips in tests with @skip decorators which check against remote platform. 2015-03-30 14:12:17 +00:00
objc-optimized Replace sys.platform skips in tests with @skip decorators which check against remote platform. 2015-03-30 14:12:17 +00:00
objc-property Replace sys.platform skips in tests with @skip decorators which check against remote platform. 2015-03-30 14:12:17 +00:00
objc-runtime-ivars Fix so this test runs successfully on armv7 devices. 2014-11-12 23:17:47 +00:00
objc-static-method Replace sys.platform skips in tests with @skip decorators which check against remote platform. 2015-03-30 14:12:17 +00:00
objc-static-method-stripped Replace sys.platform skips in tests with @skip decorators which check against remote platform. 2015-03-30 14:12:17 +00:00
objc-stepping Replace sys.platform skips in tests with @skip decorators which check against remote platform. 2015-03-30 14:12:17 +00:00
objc-struct-argument Added a testcase that checks that struct arguments 2015-04-07 20:33:10 +00:00
objc-struct-return Replace sys.platform skips in tests with @skip decorators which check against remote platform. 2015-03-30 14:12:17 +00:00
objc-super Replace sys.platform skips in tests with @skip decorators which check against remote platform. 2015-03-30 14:12:17 +00:00
print-obj Replace sys.platform skips in tests with @skip decorators which check against remote platform. 2015-03-30 14:12:17 +00:00
radar-9691614 Replace sys.platform skips in tests with @skip decorators which check against remote platform. 2015-03-30 14:12:17 +00:00
rdar-10967107 Replace sys.platform skips in tests with @skip decorators which check against remote platform. 2015-03-30 14:12:17 +00:00
rdar-11355592 Replace sys.platform skips in tests with @skip decorators which check against remote platform. 2015-03-30 14:12:17 +00:00
rdar-12408181 Replace sys.platform skips in tests with @skip decorators which check against remote platform. 2015-03-30 14:12:17 +00:00
real-definition Replace sys.platform skips in tests with @skip decorators which check against remote platform. 2015-03-30 14:12:17 +00:00
sample
self Replace sys.platform skips in tests with @skip decorators which check against remote platform. 2015-03-30 14:12:17 +00:00
.categories Initial commit of a new testsuite feature: test categories. 2012-09-21 19:10:53 +00:00