@DEXWERX: I suppose, if your look-up routines are smart enough. However, if we're always going back to double-check the actual key (in its string form), progressing until we find an exact match, then there's no problem with using BASE16, which is what started this discussion in the first place. DEXWERX, this entire thread is about something that's "supposedly" broken in Collections.

I've yet to see a piece of code that breaks them on my computer. And I've certainly yet to see a piece of code that would conclusively show a problem with them that's not related to duplicate keys (while still considering that these keys are case insensitive, and possibly not liking things out of a valid Unicode-character range). If hashcodes are to be used for sorting/matching purposes, there's sure no evidence of it in the structures you posted. There is a doubly-linked list (to make insertions and deletions easy, although binary searches more difficult), along with the data and the key-string, and that's about it.

Therefore, all this discussion of hash-codes is off-point, and we just need to provide Donar with a way to produce keys that can clearly be "seen" as a duplicate of another, or not; and that make this obvious by excluding lower-case characters, and any other non-allowed Unicode characters.

Sighs,
Elroy