Fixes Issue 8509 - Appending base type to enum should not result in new enum type.
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
Merge pull request #1829 from 9rnsr/fix9773

Issue 9773 - ref parameter with default string literal should not compile
Merge branch 'master' of github.com:D-Programming-Language/dmd
Replace of  'magic' number with named constant.
Merge branch 'master' of github.com:D-Programming-Language/dmd
Merge branch 'master' of github.com:D-Programming-Language/dmd
fix Issue 9892 - [ICE] forward reference in enum declaration members causes compiler segfault
Merge branch 'master' of github.com:D-Programming-Language/dmd
fix Issue 5878 - Forward reference in returning superclass from template using is() expression
Fixup test case for Issue 9680.
Merge branch 'master' of github.com:D-Programming-Language/dmd
fix Issue 6795 - ICE(cgcs.c): Incrementing an enum array item
fix Issue 8130 - Memory corruption because without *.def file DMD compiles DLL with assumption