Let libc++abi compile with gcc.
authorNico Weber <nicolasweber@gmx.de>
Fri, 30 May 2014 17:27:21 +0000 (17:27 +0000)
committerNico Weber <nicolasweber@gmx.de>
Fri, 30 May 2014 17:27:21 +0000 (17:27 +0000)
commit897f23dda82cae6e08c464509195be90015ed3c8
tree4ab4a630fd2653f8f8ff150f585546ea9863cf86
parent853ae946607ab370e10703f1550c72404374efd9
Let libc++abi compile with gcc.

There was a single problem in cxa_demangle.cpp, where gcc would complain
`error: changes meaning of 'String'` about the line `typedef String String;`.
According to 3.3.7p2, this diagnostic is allowed (but not required, so clang
does not have to report this).

As a fix, make string_pair a template and pass String as template parameter.
This fixes the error with gcc and also removes some repetition from the code.

No behavior change.

llvm-svn: 209909
libcxxabi/src/cxa_demangle.cpp