Why doesn't THashedStringList ignore duplicates?

delphi, delphi-2009

Solution

You need to set the `Sorted` property to TRUE in order to have the list ignore duplicates. The property is inherited from `TStringList`, and if you look at the documentation for `TStringList.Duplicates` you will find:

Note: Duplicates does nothing if the list is not sorted.

Problem

I have the following code: ``` var sl: THashedStringList; begin sl:= THashedStringList.Create; sl.Duplicates := dupIgnore; sl.Add('12345'); sl.Add('12345'); sl.Add('12345'); sl.Add('12345'); sl.Add('12345'); sl.Add('12345'); sl.Add('12345'); ShowMessage(IntToSTr(sl.Count)); end; ``` But when I see `sl.Count`, it gives me 7. What is the bug in this?

Original source