Looking at the Kindle spec there appears to be an error in the 
section for structs called Assignment Overload.
S* opAssign (ref const S s) {
    a = s.a;
}
gives an error:
Error: cannot implicitly convert expression (this) of type S to S*
S opAssign (ref const S s) {
does compile.