JSC::UString and WTF::String should use size_t instead of unsigned since unsigned is only 4 bytes on 64-bit, but size_t is 8 bytes.
<rdar://problem/5861044>
I suspect this will make every string object a bit larger on 64-bit systems. Do the benefits outweigh that cost?
The current use of "unsigned" even on 64-bit seems very deliberate: StringImpl.cpp:COMPILE_ASSERT(sizeof(StringImpl) == 2 * sizeof(int) + 3 * sizeof(void*), StringImpl_should_stay_small); Given that we're careful to not truncate lengths, I see costs but not many benefits.