Fix corner case in module-based layering warning.

Before, there SourceManager would not return a FileEntry for a
SourceLocation of a macro expansion (if the header name itself is
defined in a macro). We'd then fallback to assume that the module
currently being built is the including module. However, in this case we
are actually interested in the spelling location of the filename loc in
order to derive the including module.

git-svn-id: http://llvm.org/svn/llvm-project/cfe/trunk@196311 91177308-0d34-0410-b5e6-96231b3b80d8