clpBNR: difference constraint on reals


19 ?- { A==21r10, B==21r10, ~(A == B) }.
A = B, B = 21r10.

19 ?- { A==21r10, ~(A == A) }.
A = 21r10.

20 ?- { A==21r10, ~(A == A) }, solve(A).
A = 21r10.

I would expect false in all of them, is this a bug or am I missing something?