CTFE returns classes
Allow to multiple references to object + Allow to assign enum class object to local variables + Fix 5678
disallow pointers to mutable struct enums and mutable class enums
disallow class enums and thread-local mutable classes and pointers to structs
Fixed this-assignment bug + code style fixes
fix phobos test fail
add comment and small refactoring
Replace of  'magic' number with named constant.
fix Issue 9901 - string return from inner template function error
Bonus track: fix traits getOverloads+getProtection ICE
distinguish ALLREGS from allregs
fix9866

- also removed non-existing MOVSX/MOVSZ r16, r/m16
More fix for issue 3703
fix Issue 2356 - array literal as non static initializer generates horribly inefficient code.
Merge pull request #1883 from 9rnsr/fix2356

Issue 2356 - array literal as non static initializer generates horribly inefficient code.
Merge pull request #1884 from WalterBright/fix_allregs

distinguish ALLREGS from allregs
Merge pull request #1865 from 9rnsr/fix9901

Issue 9901 - string return from inner template function error
Merge pull request #1857 from dawgfoto/fix9866

fix9866
remove unnecessary inline asm
Merge pull request #1888 from WalterBright/rm_iasm

remove unnecessary inline asm