llvm-project/lldb/source
Sean Callanan 863fab69a2 Expose top-level Clang expressions via the command line and the API.
Top-level Clang expressions are expressions that act as new translation units,
and define their own symbols.  They do not have function wrappers like regular
expressions do, and declarations are persistent regardless of use of the dollar
sign in identifiers.  Names defined by these are given priority over all other
symbol lookups.

This patch adds a new expression option, '-p' or '--top-level,' which controls
whether the expression is treated this way.  It also adds a flag controlling 
this to SBExpressionOptions so that this API is usable externally.  It also adds
a test that validates that this works.  (The test requires a fix to the Clang
AST importer which I will be committing shortly.)

<rdar://problem/22864976>

llvm-svn: 264662
2016-03-28 21:20:05 +00:00
..
API Expose top-level Clang expressions via the command line and the API. 2016-03-28 21:20:05 +00:00
Breakpoint Add a DiagnosticManager replace error streams in the expression parser. 2016-03-19 00:03:59 +00:00
Commands Expose top-level Clang expressions via the command line and the API. 2016-03-28 21:20:05 +00:00
Core Get rid of a global constructor that was causing a warning on MacOSX and make the Timer safe to use after the main threads global destructor chain is called. 2016-03-24 21:46:47 +00:00
DataFormatters This change introduces a "ExpressionExecutionThread" to the ThreadList. 2016-03-12 02:45:34 +00:00
Expression Don't try to actually run code when the expression is top-level. 2016-03-28 21:10:36 +00:00
Host Unicode support on Win32. 2016-03-22 17:58:09 +00:00
Initialization Move OperatingSystem plugins to SystemInitializerFull 2016-03-16 08:48:56 +00:00
Interpreter Fix an issue with nested aliases where the help system wouldn't correctly track the fact that an alias is an alias to a dash-dash alias 2016-03-25 21:59:06 +00:00
Plugins Removed an override of LookupSymbol that mistakenly disabled it for Clang. 2016-03-28 21:07:53 +00:00
Symbol When we import the definition for a Tagdecl, propagate its completeness too. 2016-03-26 00:37:55 +00:00
Target Use Clang's FixItHints to correct expressions with "trivial" mistakes (e.g. "." for "->".) 2016-03-25 01:57:14 +00:00
Utility Fix all of the unannotated switch cases to annotate the fall through or do the right thing and break. 2016-02-26 01:20:20 +00:00
CMakeLists.txt Add initial CMake glue for the NetBSD platform 2015-10-24 00:27:04 +00:00
lldb.cpp Add more NetBSD platform glue for lldb 2015-11-07 15:31:54 +00:00