Relax isPOD rules so ctors don't make structs non-POD
Issue 11503 - immutable return value from pure function implicitly converts to mutable.
Remove CallExp::implicitCastTo altogether.

The pure -> immutable case is checked in implicitConvTo as well,
and since it yields MATCHexact, the castTo() in
Expression::implicitCastTo is a no-op anyway.
Issue 11909 - Struct members and static arrays break pure function escape analysis (immutability violation).
Clarify traverseIndirections implementation.

No functional change intended.
Make traverseIndirections() return bool instead of int.
Use writeByte everywhere instead of having writeByte and writebyte
Call extractString instead of manually null-terminating and extracting
Call extractString instead of toChars and manually NULLing .data
Replace OutBuffer::toChars with peekString to clarify intent and avoid confusion with Object::toChars
Merge pull request #3154 from yebblies/extractstring

[cleanup] Clean up the way strings are created from `OutBuffer`
Explicitly cast off_t to size_t
fix Issue 12002 - Internal error: toir.c 181
Merge pull request #3159 from 9rnsr/fix12002

[REG] Issue 12002 - Internal error: toir.c 181
Merge pull request #3061 from ibuclaw/ctorpod

Relax isPOD rules so ctors don't make structs non-POD
Merge pull request #3085 from klickverbot/pure-return-immutable

pure -> immutable fixes
Merge pull request #3157 from yebblies/off_t

[DDMD] Explicitly cast off_t to size_t
Visual Studio build fixes (remove dump.c)
Merge pull request #3161 from CyberShadow/vs-20140127

Visual Studio build fixes (remove dump.c)
fix Issue 11447 - Closure provide bogus values