[analyzer] Tweak MallocSizeOfChecker to not warn when using sizeof(void*) to allocate a bunch of any pointer type.

This suppresses a common false positive when analyzing libc++.

Along the way, introduce some tests to show this checker actually
works with C++ static_cast<>.

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