D-Programming-Language/druntime — pull request #106 by dawgfoto (2011-12-15 18:15:23+00:00)
Title: specialize cas for shared classes and pointers

- Add a cas overload that accepts pointers and classes. Require
that the to be written value is shared because it might get
immediately referenced. Require the comparison value to be const
shared to match the comparison semantics for classes.

The core.atomic module is a place where D really shines, but it is
currently almost unusable due to the inability of swapping pointers
and class references.

The last pull request was eagerly closed. I'm still convinced that
the changes are correct. If there are any concerns or question let's
please discuss this during this pull request.

https://github.com/D-Programming-Language/druntime/pull/82