From b9286a7179c64bcdb1a8207abc302d395ed1c0ac Mon Sep 17 00:00:00 2001 From: Patrick Walton Date: Mon, 20 Dec 2010 19:52:14 -0800 Subject: [PATCH] rustc: Sanitize names better. Puts out burning tinderbox on OS X. --- src/comp/middle/trans.rs | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/src/comp/middle/trans.rs b/src/comp/middle/trans.rs index 752c9e0ec9b..2cf035aa406 100644 --- a/src/comp/middle/trans.rs +++ b/src/comp/middle/trans.rs @@ -404,8 +404,20 @@ fn sanitize(str s) -> str { if (c == ('@' as u8)) { result += "boxed_"; } else { - auto v = vec(c); - result += _str.from_bytes(v); + if (c == (',' as u8)) { + result += "_"; + } else { + if (c == ('{' as u8) || c == ('(' as u8)) { + result += "_of_"; + } else { + if (c != 10u8 && c != ('}' as u8) && c != (')' as u8) && + c != (' ' as u8) && c != ('\t' as u8) && + c != (';' as u8)) { + auto v = vec(c); + result += _str.from_bytes(v); + } + } + } } } ret result;