llvm-project/lldb/source/Expression
Sean Callanan 7736a208b8 [fix] Fixed a bug where const this would cause parser errors about $__lldb_expr.
In templated const functions, trying to run an expression would produce the
error

error: out-of-line definition of '$__lldb_expr' does not match any declaration
in 'foo' member declaration does not match because it is const qualified
error: 1 error parsing expression

which is no good.  It turned out we don't actually need to worry about "const,"
we just need to be consistent about the declaration of the expression and the
FunctionDecl we inject into the class for "this."

Also added a test case.

<rdar://problem/24985958>

llvm-svn: 268083
2016-04-29 18:09:03 +00:00
..
CMakeLists.txt Add a DiagnosticManager replace error streams in the expression parser. 2016-03-19 00:03:59 +00:00
DWARFExpression.cpp DWARFExpression: Don't resolve load address in DW_OP_plus 2016-03-01 15:01:05 +00:00
DiagnosticManager.cpp Used llvm_unreached to quite a VC++ compiler warning. 2016-04-28 20:14:44 +00:00
Expression.cpp This patch makes Clang-independent base classes for all the expression types that lldb currently vends. 2015-09-15 21:13:50 +00:00
ExpressionSourceCode.cpp [fix] Fixed a bug where const this would cause parser errors about $__lldb_expr. 2016-04-29 18:09:03 +00:00
ExpressionVariable.cpp Collect IRExecutionUnits as part of persistent expression state. 2016-03-21 22:23:38 +00:00
FunctionCaller.cpp Compilation can end up calling functions (e.g. to resolve indirect functions) so I added 2016-03-21 19:21:13 +00:00
IRDynamicChecks.cpp Add a DiagnosticManager replace error streams in the expression parser. 2016-03-19 00:03:59 +00:00
IRExecutionUnit.cpp Don't register the addresses of private symbols from expressions. 2016-03-30 03:44:51 +00:00
IRInterpreter.cpp Fix usage of APInt.getRawData for big-endian systems 2016-04-15 09:55:52 +00:00
IRMemoryMap.cpp 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
LLVMUserExpression.cpp [fix] Fixed a bug where const this would cause parser errors about $__lldb_expr. 2016-04-29 18:09:03 +00:00
Materializer.cpp Support floating point values in 128-bit SSE vector registers 2016-03-08 18:35:09 +00:00
REPL.cpp Figure out what the fixed expression is, and print it. Added another target setting to 2016-03-29 22:00:08 +00:00
UserExpression.cpp Breakpoint conditions were making result variables, which they should not do. 2016-04-12 17:17:35 +00:00
UtilityFunction.cpp UtilityFunction::MakeFunctionCaller uses the Error to report failure, 2016-04-26 19:46:39 +00:00