Implement isCXX11FinalKeyword() in terms of isCXX11VirtSpecifier()

It's not worth keeping two copies of the identifier init and comparison code
just to save a pointer coparison.

This should reduce further once we get proper contextual keywords in the token
stream, so having the identifier checks in one place is a step towards that.

Cleanup only.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@198814 91177308-0d34-0410-b5e6-96231b3b80d8
Used the DataLayout methods instead of the Module methods.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@198815 91177308-0d34-0410-b5e6-96231b3b80d8
[ms-abi] Refactor Microsoft Record Layout

This patch refactors microsoft record layout to be more "natural".  The 
most dominant change is that vbptrs and vfptrs are injected after the 
fact.  This simplifies the implementation and the math for the offest 
for the first base/field after the vbptr.



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@198818 91177308-0d34-0410-b5e6-96231b3b80d8
Add a test for Static Analyzer checker plugins

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@198820 91177308-0d34-0410-b5e6-96231b3b80d8
[ms-abi] Fixed failing lit test.

This test adjustment was missing from the previous patch.



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