It fixes the case when Objective-C framework is added as a subframework
through a symlink. When parent framework infers a module map and fails
to detect a symlink, it would add a subframework as a submodule. And
when we parse module map for the subframework, we would encounter an
error: umbrella for module 'WithSubframework.Foo' already covers this directory
By implementing getRealPath "an egregious but useful hack" in
ModuleMap::inferFrameworkModule works as expected.