CheckTypeSize: Add support for C++

Previously if headers required to check the size of a type can be
compiled with C++ compiler only, the check would fail because the C
compiler fails.  As a consequence, HAVE_${VARIABLE} would be set to
false, and ${VARIABLE} will be empty.

Teach CHECK_TYPE_SIZE to accept a new optional argument LANGUAGE
that allows one to explicitly set the compiler to use.  The new
signature is therefore:

   CHECK_TYPE_SIZE(TYPE VARIABLE [BUILTIN_TYPES_ONLY]
                                 [LANGUAGE <language>])
CheckTypeSize: Add unit tests
CMake Nightly Date Stamp
Merge topic 'CheckTypeSize_CXX' into next

e6cec64 CheckTypeSize: Add unit tests
07a2342 CheckTypeSize: Add support for C++
Add MSVC6 compatibility macros.
Merge topic 'cmarray-templates' into next

0fe1b15 Add MSVC6 compatibility macros.
Add some templates for cleaner array iteration.
Genex: Remove use of TransitiveWhitelistCompare

Replace with generic solution based on cmArray* for better
readability.
Genex: Use cmArraySize for targetPolicyWhitelist

For better readability.
Merge topic 'cmarray-templates' into next

0c97897 Genex: Use cmArraySize for targetPolicyWhitelist
f804bf7 Genex: Remove use of TransitiveWhitelistCompare
df62331 Add some templates for cleaner array iteration.
Fix macro test.
Merge topic 'cmarray-templates' into next

b00dae8 Fix macro test.
Add some templates for cleaner array iteration.
Genex: Remove use of TransitiveWhitelistCompare

Replace with generic solution based on cmArray* for better
readability.
Genex: Use cmArraySize for targetPolicyWhitelist

For better readability.
Merge topic 'cmarray-templates' into next

d169b1f Genex: Use cmArraySize for targetPolicyWhitelist
86d5d80 Genex: Remove use of TransitiveWhitelistCompare
73d7705 Add some templates for cleaner array iteration.
Merge topic 'remove-cmake-i-wizard'

a8226e9 cmake: Drop support for "-i" wizard mode
Merge topic 'cmake--build-pipes'

bcd5de7 cmake: Always pass through stdout/stderr in --build mode
Merge topic 'vs9-target-framework-version'

0698714 VS: Set .NET target framework version for VS 7-9 (#14499)
Merge topic 'double-colon-is-imported'

f063c45 Consider targets with double colons to be IMPORTED or ALIAS targets.