summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Object/ModuleSymbolTable.cpp
diff options
context:
space:
mode:
authorSean Callanan <scallanan@apple.com>2017-04-24 23:14:04 +0000
committerSean Callanan <scallanan@apple.com>2017-04-24 23:14:04 +0000
commitc02a1c03124014ad6781b1b881dbce4f114f0f1b (patch)
tree162c8e515ea3b6517b188f32484a21970144fe2a /llvm/lib/Object/ModuleSymbolTable.cpp
parent453f74556976d8183b27eb78279cfa107d7aefe6 (diff)
downloadbcm5719-llvm-c02a1c03124014ad6781b1b881dbce4f114f0f1b.tar.gz
bcm5719-llvm-c02a1c03124014ad6781b1b881dbce4f114f0f1b.zip
[Expression parser] Return both types and variables
Many times a user wants to access a type when there's a variable of the same name, or a variable when there's a type of the same name. Depending on the precise context, currently the expression parser can fail to resolve one or the other. This is because ClangExpressionDeclMap has logic to limit the amount of information it searches, and that logic sometimes cuts down the search prematurely. This patch removes some of those early exits. In that sense, this patch trades performance (early exit is faster) for correctness. I've also included two new test cases showing examples of this behavior – as well as modifying an existing test case that gets it wrong. llvm-svn: 301273
Diffstat (limited to 'llvm/lib/Object/ModuleSymbolTable.cpp')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud