aboutsummaryrefslogtreecommitdiff
path: root/lib/VMCore/Mangler.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'lib/VMCore/Mangler.cpp')
-rw-r--r--lib/VMCore/Mangler.cpp5
1 files changed, 3 insertions, 2 deletions
diff --git a/lib/VMCore/Mangler.cpp b/lib/VMCore/Mangler.cpp
index e0e224826d..a5fbf264c6 100644
--- a/lib/VMCore/Mangler.cpp
+++ b/lib/VMCore/Mangler.cpp
@@ -47,8 +47,9 @@ std::string Mangler::makeNameProper(const std::string &X,
++I; // Skip over the marker.
}
- // Mangle the first letter specially, don't allow numbers.
- if (*I >= '0' && *I <= '9')
+ // Mangle the first letter specially, don't allow numbers unless the target
+ // explicitly allows them.
+ if (!SymbolsCanStartWithDigit && *I >= '0' && *I <= '9')
Result += MangleLetter(*I++);
for (std::string::const_iterator E = X.end(); I != E; ++I) {