fix Issue 11215 - `inout` lose enclosing `shared` on resolution
fix Issue 10313 - inout constructor + IFTI + has indirections arg doesn't work
Partial fix Issue 11003 - Improve .di generation

Use shorthand syntax for eponymous function/aggregate templates
fix Issue 11376 - ICE on __traits(compiles, ...) with invalid array-op
Fixed issue 11155
fix Issue 11385 - XXX is a nested function and cannot be accessed from XXX
fix Issue 11286 - Impure dtor makes "cannot call impure function" error, although it won't actually be called.
fix Issue 11314 - inline ice with tuple assignment and if/else again
Fix Issue 9356 - -inline with inout and append generates wrong code

Force the result expression from inlining a function to match the type of the call expression
Merge pull request #2717 from 9rnsr/fix11314

Issue 11314 - inline ice with tuple assignment and if/else again
Merge pull request #2705 from 9rnsr/fix11385

Issue 11385 - XXX is a nested function and cannot be accessed from XXX
Merge pull request #2677 from 9rnsr/fix11286

Issue 11286 - Impure dtor makes "cannot call impure function" error, although it won't actually be called.
Merge pull request #2658 from 9rnsr/fix11215

Issue 11215 - `inout` lose enclosing `shared` on resolution
Merge pull request #2706 from 9rnsr/fix11376

Issue 11376 - ICE on __traits(compiles, ...) with invalid array-op
fix Issue 11224 - Inlining stops NRVO
fix Issue 11394 - NRVO should work for object field initialization in constructor
Merge pull request #2649 from 9rnsr/fix11003

Partial fix Issue 11003 - Improve .di generation
Merge pull request #2675 from 9rnsr/fix10313

Issue 10313 - inout constructor + IFTI + has indirections arg doesn't work
Merge pull request #2709 from jerro/fix-11155

Fixed issue 11155
Merge pull request #2269 from yebblies/issue9356

Fix Issue 9356 - -inline with inout and append generates wrong code