allocClassWithName allocates an object with the given type.
The type is actually provided as a string argument (type's name).
This creates a possibility for not particularly useful warnings
from the analyzer.
In order to combat with those, this patch checks for casts of the
allocClassWithName results to types mentioned directly as its
argument. All other uses of this method should be reasoned about
as before.
rdar://72165694