Labels are now valid operands to any inline asm op-code expecting a memory address. Also fixes #12635.
Fix Issue 5908 - Optimizer generates wrong value with divide-by-zero.

Reinstate optimizer error for integer division by zero
[Refactoring] simplify the code to inherit @safe attribute
[Refactoring] simplify the code in checkPurity
fix 9148 - Issue 9148 - 'pure' is broken
Remove hack for issue 10981
fix Issue 9620 - Error messages of failed pure enforcement
fix Issue 12912 - Lambda function is incorrectly inferred as impure if it uses member field or function
fix Issue 12908 - [AA] `foreach` by keys and values over associative array in pure function allow impure function calls
fix Issue 13120 - Body of `foreach` over string with transcoding ignores function attributes
fix Issue 3449 - const and invariant struct members do not behave according to spec
AA tests harmonization with new AA implementation
[detab] test/runnable/implicit.d
fix Issue 13640 - can break immutability with inout
remove std.math import

Reason: insnan is going to be deprecated in std.math.
Merge pull request #4090 from 9il/isnan

remove std.math import
fix Issue 12447 - variadic template functions hijack all eponymous enum and alias template overloads
fix Issue 11916 - [IFTI] Disabled by constraint overload with `out` with IFTI breaks overload resolution
fix Issue 11915 - Inconsistent overload resolution behaviour between `ref` and `out`
fix Issue 13586 - Destructors not run when argument list evaluation throws