Fix 11745: Private unit tests can not be invoked.
Added unittests for issue 11745.
incorrect strlen usage

- causes overflow for empty string
Replace WINDOWS_SEH code with a larger stack size - this matches the non-windows implementation
Make Array take the actual type of the stored element
Add type visitor
fix Issue 11776 - [ICE] Assertion failure: 'tf->next == NULL' on line 119 in file 'mangle.c'
fix Issue 11800 - alias this matching incorrectly changes lvalue-ness
Merge pull request #3008 from 9rnsr/fix11776

[REG2.065a] Issue 11776 - [ICE] Assertion failure: 'tf->next == NULL' on line 119 in file 'mangle.c'
Move existing C++ mangler into a visitor class
post-align section size
Merge pull request #3007 from yebblies/cppmangle

[DDMD] Move existing C++ mangler into a visitor class
Merge pull request #2982 from yebblies/winseh

[DDMD] Replace WINDOWS_SEH code with a larger stack size
fix Issue 11684 - SIGSEGV with ld.bfd version 2.22

- Don't use zero extended relocations in data segment,
  because we need to write out the whole 8-byte address.

- Data relocations don't depend on PIC.

- This regression was introduced with
  0cba87c6330cd7853139f51448c0f98372fb76d7.
  Before this commit the code still wrote out
  an 8-byte address, so the zero extension worked
  happened to work for <4GB binaries.
add osmodel.mak to detect MODEL and OS

- Use OS in uppercase for TARGET_LINUX macro
Workaround regression 11777.

Probably freed memory is used in future and refactoring commit triggered the issue by changing allocation functions.

Issue URL: https://d.puremagic.com/issues/show_bug.cgi?id=11777
Causing commit: 1e99eed73c06ae450c1c13352021e4b629d2bba8
Merge pull request #3011 from MartinNowak/fix11684

[2.065,Reg] fix Issue 11684 - SIGSEGV with ld.bfd version 2.22
Merge pull request #3009 from 9rnsr/fix11800

Issue 11800 - alias this matching incorrectly changes lvalue-ness
Merge pull request #3004 from MartinNowak/osmodel

add osmodel.mak to detect MODEL and OS
merge with DMC changes