Fix Issue 10897 - btc, btr and bts shouldn't be safe
fix Issue 10573 - Weird linking problem with associative array cast

CastExp would call `TypeAArray::getImpl()` in glue layer.

However if the AA type is just only used in the cast expression, the timing is too late to invoke `getImpl`, because the AA type instantiation may need more semantic analysis like deferred semantic3.

For the correct instantiation of the `AssociativeArray!(K, V)` type, `getImpl` should be invoked in front-end layer beforehand.
[Refactoring] Type::baseElemOf()
detab test/runnable/eh.d
fix Issue 10964 - Static array assign/blit exception slips through catch block.
Issue 10968 - array element copy (1-N and N-N) ignores postblit attributes
Merge pull request #2524 from 9rnsr/fix10573

[REG2.063] Issue 10573 - Weird linking problem with associative array cast
Merge pull request #2525 from 9rnsr/fix10964

[REG2.063] Issue 10964 - Static array assign/blit exception slips through catch block
Merge pull request #2441 from yebblies/cppclass

[DDMD] Allow extern(C++) classes
Merge pull request #2503 from monarchdodra/bt

Fix Issue 10897 - btc, btr and bts shouldn't be safe
Fix 32 bit build.

This fixes GitHub pull request #2503.
Merge pull request #2530 from klickverbot/bitop-system-32bit

Fix 32 bit build.
Expand BinAssignExp macros in expression.h
Expand macros in lexer
Expand macros in traits
Expand macros in parser
Remove macros in lexer.h
Expand macro in interpreter
More const
Add const for new scanomf code