Skip to content

Commit 361d3d1

Browse files
committed
Catch specific demangle exceptions
1 parent 31aa48b commit 361d3d1

2 files changed

Lines changed: 5 additions & 5 deletions

File tree

demangler/gnu3/demangle_gnu3.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3232,7 +3232,7 @@ namespace
32323232
if (foundHeader && !header.empty())
32333233
outVarName.insert(outVarName.begin(), header);
32343234
}
3235-
catch (std::exception&)
3235+
catch (const DemangleException&)
32363236
{
32373237
return false;
32383238
}

demangler/msvc/demangle_msvc.cpp

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -315,7 +315,7 @@ DemangledTypeNode Demangle::DemangleReferencedSymbolValue(BackrefList& varList)
315315

316316
return DemangledTypeNode::ValueType(value);
317317
}
318-
catch (...)
318+
catch (const DemangleException&)
319319
{
320320
m_varName = std::move(savedVarName);
321321
throw;
@@ -919,7 +919,7 @@ DemangledTypeNode::NodeRef Demangle::TryDemangleVarTypeRef(
919919
{
920920
return varList.GetTypeBackrefRef(reference);
921921
}
922-
catch (...)
922+
catch (const DemangleException&)
923923
{
924924
if (reference == 2)
925925
return makeRef(DemangledTypeNode::NamedType(UnknownNamedTypeClass, vector<string>{"auto"}), false);
@@ -2113,7 +2113,7 @@ void Demangle::DemangleName(NameList& nameList,
21132113
break;
21142114
}
21152115
}
2116-
catch (...)
2116+
catch (const DemangleException&)
21172117
{
21182118
}
21192119
reader.SetRaw(saved);
@@ -2240,7 +2240,7 @@ void Demangle::DemangleName(NameList& nameList,
22402240
break;
22412241
}
22422242
}
2243-
catch (...)
2243+
catch (const DemangleException&)
22442244
{
22452245
}
22462246
reader.SetRaw(saved);

0 commit comments

Comments
 (0)