sync backend files with dmc
Merge pull request #2697 from WalterBright/sync-with-dmc

sync backend files with dmc
Merge pull request #2698 from 9rnsr/fix11395

[REG2.064a] Issue 11395 - link error (struct+opEquals) on separate compilation
Reduce __inlineretval generation count

If `nrvo_var != NULL`, inlining can directly replace it to the substituted variable.
Do inline for the variable initialization with NRVO function call

Pass `vret` as an additional inlining context, if it is found.
fix Issue 11224 - Inlining stops NRVO
+11394 (1)
+stash
+stash2
+stash(test)
+clean
+bad, we need to use e1[] = e2 for elemeit-wise assignment. Inlining should also detect the form.