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
use MOVZX more for 64 bit code
When we check two type objects equality, we should use Type::equals instead of directly pointer comparison.
Default args and arg identifiers are now volatile information in TypeFunction.

1. The extra informations would be kept after semantic analysis for function pointer and delegate types. But merging type would strip all the extras from the type structure, then cache the stripped copy into.

2. The types has extra informations cannot be named. In other words, AliasDeclaration would always strip the aliased type. This rule also works for Template Type Parameter, and fixes issue 3646 well.

3. CondExp would strip them from the type of its result.
Improved fix for Issue 3866 - anonymous delegate with default parameters cross-talks to another anonymous delegate

This reverts commit acc22ce25db42facfe4917aeceabd28a410f4c95,
and moves original test into runnable/functype.d
fix Issue 3646 - Default values of function arguments are ignored when instantiating a template.
fix Issue 8579 - Default parameter appears a part of typeof().stringof of a function variable
Fix CppMangle issue

Use merge2() result for function argument types mangling.
Remove special handling of IN_GCC real_t code.
Don't use long long to cast signed int to float.
Catch gcc ±Inf bugs.
Merge pull request #2276 from ibuclaw/noinfbugs

Catch GCC ±Inf bugs.
Merge pull request #2274 from ibuclaw/realt_ingcc

Remove special handling of IN_GCC real_t code.
Merge pull request #2275 from ibuclaw/nolonglong

Don't use long long to cast signed int to float.
fix Issue 10462 - interface thunk doesn't preserve EBX
Do not allocate TypeFunction on the stack
Merge pull request #2220 from yebblies/stackalloc

[DDMD] Do not allocate TypeFunction on the stack
fix Issue 10503 - Octal enums don't work anymore
Merge pull request #2279 from 9rnsr/fix10503

[REG2.064a] Issue 10503 - Octal enums don't work anymore