<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
<HTML>
<HEAD>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=US-ASCII">
<META NAME="Generator" CONTENT="MS Exchange Server version 5.5.2654.45">
<TITLE>RE: [BUG]Collection>>removeAll:</TITLE>
</HEAD>
<BODY>
<P><FONT SIZE=2>My 2 cents on x removeAll: y.</FONT>
</P>
<P><FONT SIZE=2>I'd expect the argument y to be left as it is, while the receiver x now doesn't contain any element that is in y.</FONT>
</P>
<P><FONT SIZE=2>When x == y, we have:</FONT>
</P>
<P><FONT SIZE=2>I'd expect x to be left as it is, while x now doesn't contain any element that is in x.</FONT>
</P>
<P><FONT SIZE=2>In other words, I'd expect x to be left alone *and* to be empty at the same time. This only works on empty collections.</FONT></P>
<P><FONT SIZE=2>We arrive at this nonsense because the collections are identical. Similar arguments apply to addAll: and maybe others.</FONT>
</P>
<P><FONT SIZE=2>The expressions x removeAll: x and x addAll: x are not a special case or an error condition: they are NONSENSE. If they occur, the real problem is that the intentions of the program are nonsense as written by the developer.</FONT></P>
<P><FONT SIZE=2>Andres.</FONT>
</P>
</BODY>
</HTML>