Due to a simple mixup, build_typed_selector_reference() won't properly match the new selector with existing selectors (TREE_PURPOSE() and TREE_VALUE()) are mixed up).
This doesn't cause incorrect code, but the selector tables are unnecessarily large; it bloats all objective-c code (by approximately 10% in the cases I've measured).
I've attached a patch that fixes this.
gcc version 3.0.3
Compile any program that contains two references to the same selector, eg:
The resulting selector table will have to entries for 'foo'.
Apply the patch.
Responsible-Changed-Why: I managed it
State-Changed-Why: Thanks Alex - I had your patch (finally!) applied to GCC 3.3! :-)