Make verror extern(C) so it can be written in D and called from C++, even though va_list has a different type in dmc and dmd
Refactor macros in arrayop.c
Merge pull request #2045 from yebblies/va_list

[DDMD] Make verror extern(C)
Merge pull request #2237 from yebblies/expandm

[DDMD] Expand macros in arrayop.c
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
Do not allocate Scope on the stack
No implicit Object -> void*
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