fix
Issue 10639 - Win64: wrong optimizer codegen with struct literal with complex fields
Merge pull request #2359 from WalterBright/fix10639

fix Issue 10639 - Win64: wrong optimizer codegen with struct literal with complex fields
fix Issue 10673 - memory corruption in interpret.c

- the gotoTarget field of LabelStatement was never initialized
Merge pull request #2363 from dawgfoto/fix10673

fix Issue 10673 - memory corruption in interpret.c
Merge pull request #2364 from yebblies/jsonarraylength

[DDMD] Get array length with detectable pattern
Merge pull request #2365 from yebblies/variadicstring

[DDMD] Explicitly type result of CondExp as a const char * to avoid passing an array to a c varargs function
Expand BinAssignExp macros in expression.h
Expand macros in lexer
Expand macros in mtype
Expand macros in traits
Expand macros in parser
Remove macros in lexer.h
Expand macro in interpreter
Make char unsigned
Mostly implicit conversions
No implicit real -> creal
Use memcpy to copy classes, not assignment
No implicit Identifier -> char* conversion
char* -> const char*
ptrvalue is char* not void*
Don't call memcmp with different types
Add missing consts for qsort