When an ObjC property is declared as (copy), and the type of the property is mutable (eg. NSMutableSomething), the autosynthesized code for the setter, which as usual copies the object by calling -copy, produces an immutable object (eg. NSSomething; cf. -mutableCopy which would actually produce NSMutableSomething), which would lead to unexpected results.
The checker is named to be a bit more generic, even though i have no particular plans for other checks at the moment.
Testing in progress.