In Op7-8 the first test below shows a 30px space between B and C, while there should be no space. It seems that the bottom-margin of A is repeated there. Indeed in the second test the margin-bottom of A is 50px and in Op7 there is a 50px space between B and C. The problem has been corrected in Op9.
The problem doesn't occur if there is content beside the float, before the clear. An empty box, which doesn't have any visual effect (even when the float is 100% wide) is sufficient. (Of course this is not a pure CSS fix since it implies adding something to the markup, So it's probably better to simply avoid this construction and get the desired space between A and B in a different way.)
IE7-/Win has the same problem, but only when the clear doesn't have hasLayout. In the below test the clear doesn't have any dimension, and the problem occurs in IE7-/Win as well.
Similar bugs: