summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target/ARM/Disassembler/ARMDisassembler.cpp
diff options
context:
space:
mode:
authorSean Callanan <scallanan@apple.com>2012-04-12 23:10:00 +0000
committerSean Callanan <scallanan@apple.com>2012-04-12 23:10:00 +0000
commit02eee4d4f722c2d40c468cb07523243961d671dd (patch)
treec644af4b51727ea565f9e90441bb951ae5a7c02b /llvm/lib/Target/ARM/Disassembler/ARMDisassembler.cpp
parent9455da0ea912b8b05879a2e25894c120923d54b9 (diff)
downloadbcm5719-llvm-02eee4d4f722c2d40c468cb07523243961d671dd.tar.gz
bcm5719-llvm-02eee4d4f722c2d40c468cb07523243961d671dd.zip
Fixed a problem where LLDB inserted regular C
FunctionDecls into classes if it looked up a method in a different DWARF context than the one where it found the parent class's definition. The symptom of this was, for a method A::B(), 1) LLDB finds A in context 1, creating a CXXRecordDecl for A and marking it as needing completion 2) LLDB looks up B in context 2, finds that its parent A already has a CXXRecordDecl, but can't find a CXXMethodDecl for B 3) Not finding a CXXMethodDecl for B, LLDB doesn't set the flag indicating that B was resolved 4) Because the flag wasn't set, LLDB's fallthrough code creates a FunctionDecl for B and sticks it in the DeclContext -- in this case, A. 5) Clang crashes on finding a FunctionDecl inside a CXXRecordDecl. llvm-svn: 154627
Diffstat (limited to 'llvm/lib/Target/ARM/Disassembler/ARMDisassembler.cpp')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud