fix Issue 12749 - Constructor-local function allows multiple mutation of immutable member
Improve diagnostic messages
Implement delegate.ptr and delegate.funcptr as new ast classes instead of using casting and pointer arithmetic
fix Issue 12760 - Initializing an object that has "this(Args) inout" causes "discards return value" warning
fix Issue 6889 - "finally" mentioned in a compilation error, instead of "scope(exit)" or "scope(success)"
fix Issue 2456 - "cannot put catch statement inside finally block", missing line number
Remove workaround for issue 11939
Merge pull request #3181 from yebblies/dgfuncptr

Implement delegate.ptr and delegate.funcptr as new ast classes instead of using casting and pointer arithmetic
[style] fix indent in template.c
[Refactoring] Remove comment-out code for the fixed issue 7469
[Refactoring] Remove unnecessary workaround for issue 1528
Merge pull request #3577 from 9rnsr/refactor_unused

[Refactoring] Remove some unnecessary code
Document oddities around Target::va_listType
Merge pull request #3579 from ibuclaw/targetdoc

Document oddities around Target::va_listType
Merge pull request #3564 from 9rnsr/fix_onscope

Issue  6889 & 2456 - Fix diagnostic messages for OnScomeStatement
fix Issue 12798 - constant folding should optimize subsequent concatenations
minor error message improvements
Merge pull request #3580 from WalterBright/err-msgs

minor error message improvements
The `-o-` switch should suppress code generation always

I noticed that `REQUIRED_ARGS: -o- does not work for compilable test suites in Windows platform. In Windows. compilable test suites are compiled with `-map null.map` switches. `-map` switch will set `global.params.oneobj = 1` even though `global.params.obj == 0`, then compilable tests will always run codegen even if `-o-` is specified.
[Refactoring] Divide test cases to compilable/vgcX.d and fail_compilation/nogcX.d