Compile basic_string.h with clang

Hi all,

I recently noticed that the current trunk will cause an assertion failure in StringLiteral::getString().

This happens if we run “clang++ -cc1 -dump-ast ” with basic_string.h included indirectly,

where wstring to_wstring(int) is implemented. The following FIXME explains the failure.

void StmtDumper::VisitStringLiteral(StringLiteral *Str)

DumpExpr(Str);

// FIXME: this doesn’t print wstrings right. <<<<<<<<<

….

OS.write_escaped(Str->getString());

OS << ‘“’;

}

This annoying problem appears in Clang but should be fixed in llvm instead?

Thanks,

Wei