[Refactoring] Remove Scope::offset
Issue #6050 fix

https://issues.dlang.org/show_bug.cgi?id=6050

Group ID is now workarounded as it was done for `user_id`
Add Expression::extractLast
[Refactoring] Reduce memory allocation on comma translation in AssignExp
[Refactoring] Tweak extractOpDollarSideEffect
fix Issue 12585 - Segfault on lazy/catch/opIndex
[Refactoring] Simplify the code for DIP29
fix Issue 12467 - char[] is implicitly convertible to string
fix Issue 12403 - [AA] Associative array `get` function rejects some cases
fix Issue 12011 - "Internal Compiler Error: Null field" on CTFE method call on .init
Merge pull request #3466 from 9rnsr/fix12011

Issue 12011 - "Internal Compiler Error: Null field" on CTFE method call on .init
Merge pull request #3465 from 9rnsr/fix12403

[REG2.066a] Issue 12403 - [AA] Associative array `get` function rejects some cases
Merge pull request #3464 from 9rnsr/fix12585

[REG2.064] Issue 12585 - Segfault on lazy/catch/opIndex
Merge pull request #3462 from 9rnsr/refactor_offset

[Refactoring] Remove Scope::offset
Merge pull request #3463 from SSPkrolik/patch-1

Issue #6050 fix
Merge pull request #3461 from 9rnsr/fix12467

[REG2.066a] Issue 12467 - char[] is implicitly convertible to string
[Refactoring] Tweak AssignExp::toElem

Separate code blocks for Tstruct and Tsarray.
Preparation front-end bug fixes which are hidden by glue-layer codegen

1. `VarDeclaration::semantic` in src/declaration.c
  Use TOKblit, because default construction should not invoke postblits.

2. `expandInline` in src/inline.c
  Postblit call on non-ref parameters is already handled by callCpCtor in
  front-end. So argument passing on expanded functions should use TOKblit.
Stop "used before set" error for zero-size variable
fix Issue 12212 - Static array assignment makes slice implicitly

Do not make implicit slicing in front-end, then support proper codegen for
`(sarray = sarray)` assignment and construction in glue-layer.