aboutsummaryrefslogtreecommitdiff
path: root/lldb/source/Plugins/ScriptInterpreter/Python/SWIGPythonBridge.cpp
diff options
context:
space:
mode:
authorNathan Sidwell <nathan@acm.org>2022-01-25 12:31:01 -0800
committerNathan Sidwell <nathan@acm.org>2022-02-16 04:30:47 -0800
commit6244730e29f66ae3d0ba80c2341f9f17c7eb78d3 (patch)
tree357f343bd4e5bb103b7eff2fee6e7486034424e0 /lldb/source/Plugins/ScriptInterpreter/Python/SWIGPythonBridge.cpp
parent082f328899be9ed8a38b04a4e52be936f4875495 (diff)
downloadllvm-6244730e29f66ae3d0ba80c2341f9f17c7eb78d3.zip
llvm-6244730e29f66ae3d0ba80c2341f9f17c7eb78d3.tar.gz
llvm-6244730e29f66ae3d0ba80c2341f9f17c7eb78d3.tar.bz2
[demangler] Reorder parseNestedName loop
parseNestedName's main loop allowed parsing a grammar that was more flexible than the actual grammar. This refactors that to rule out some more incorrect manglings. 1) The 'L' extension only applies to unqualified-name components, so check it just there. 2) The 'M' suffix is, AFAICT, removed from the grammar. Rather than eliminate it, let's parse it after we've parsed a component. Added some additional bad mangling tests, which are now rejected. I don't break the 'T' and 'D[tT]' cases out of the loop, even though they can only appear at first position, as it seems simpler to just check there is nothing SoFar. Reviewed By: ChuanqiXu Differential Revision: https://reviews.llvm.org/D119542
Diffstat (limited to 'lldb/source/Plugins/ScriptInterpreter/Python/SWIGPythonBridge.cpp')
0 files changed, 0 insertions, 0 deletions