llvm-undname: Fix crash on invalid name in a template parameter pointer to member arg
Found by oss-fuzz. llvm-svn: 358234
This commit is contained in:
parent
57c3d4bed3
commit
f2d8f09d5d
@ -2139,6 +2139,8 @@ Demangler::demangleTemplateParameterList(StringView &MangledName) {
|
||||
SymbolNode *S = nullptr;
|
||||
if (MangledName.startsWith('?')) {
|
||||
S = parse(MangledName);
|
||||
if (Error)
|
||||
return nullptr;
|
||||
memorizeIdentifier(S->Name->getUnqualifiedIdentifier());
|
||||
}
|
||||
|
||||
|
||||
@ -94,3 +94,8 @@
|
||||
; CHECK-EMPTY:
|
||||
; CHECK-NEXT: ??8@8
|
||||
; CHECK-NEXT: error: Invalid mangled name
|
||||
|
||||
?B@?$?K$H?
|
||||
; CHECK-EMPTY:
|
||||
; CHECK-NEXT: ?B@?$?K$H?
|
||||
; CHECK-NEXT: error: Invalid mangled name
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user