Added optimization of debug information for Mircosoft debuggers to -gc. When this optimization is enabled, '.' is replaced with '@' within type names. Also arrays passed to functions are now marked as references instead of pointers, because the pointer confuses the visual studio debugger.
fix Issue 12499 - tuple/TypeTuple 1-Arg initialization fails during CTFE
fix Issue 12312 - Diagnostic for void static arrays has gone bad
fix Issue 12534 - ICE on using expression tuple as type tuple

TypeSlice::next should be handled as same as TypeSArray and TypeDArray -
if the next part is reduced to error type, it should not be returned to
the original field.
fix Issue 12390 - "has no effect in expression" diagnostic regression

When value discarding check on statements, the side-effect check should not be done deeply.
fix Issue 12476 - Assert error in interpret.c:3204
fix Issue 12460 - Crash with goto and static if

By implementing issue 10199, LabelStatement::statement may be NULL. So LabelStatement::syntaxCopy should consider the case.
Merge pull request #3434 from 9rnsr/fix12460

Issue 12460 - Crash with goto and static if
Merge pull request #3432 from 9rnsr/fix12390

[REG2.066a] Issue 12390 - "has no effect in expression" diagnostic regression
Merge pull request #3433 from 9rnsr/fix12476

Issue 12476 - Assert error in interpret.c:3204
Merge pull request #3428 from 9rnsr/fix12312

[REG2.064] Issue 12312 - Diagnostic for void static arrays has gone bad
Merge pull request #3189 from Ingrater/cv8improve2

Added optimization of debug symbols for microsoft debuggers to -gc
Merge pull request #3429 from 9rnsr/fix12534

Issue 12534 - ICE on using expression tuple as type tuple
Merge pull request #3420 from 9rnsr/fix12499

Issue 12499 - tuple/TypeTuple 1-Arg initialization fails during CTFE