Mark the unittest for std.array.minimallyInitializedArray as @safe
Mark std.array.split and splitter as @safe and pure
Add `rvalueOf`/`lvalueOf` traits.
Use `std.traits.{rvalueOf,lvalueOf}` in `std.traits.hasElaborateAssign`.
enforce thisTid was called before calling receive

- Simply calling receive in main as stated by the comment
  makes no sense, as nobody could send a message.
Fix Issue 11152 - formatChar doesn't handle `\0`
Merge pull request #1576 from tom-tan/safe-pure-nothrow-array-split

Mark std.array.split and splitter as @safe, pure and nothrow
Merge pull request #1261 from denis-sh/add-lvalue-rvalue-traits

Add lvalue/rvalue traits
Merge pull request #1575 from tom-tan/safe-unittest-array-minimallyInitializedArray

Mark the unittest for std.array.minimallyInitializedArray as @safe
Merge pull request #1611 from monarchdodra/11152

Fix Issue 11152 - formatChar doesn't handle `\0`
Properly scoped and selected the import of std.traits in std.ascii, so that it is only imported for the 2 functions that use it, toLower and toUpper.

There are also a couple of style changes, namely the ordering of values in an anonymous enum, and the use of only 1 indent level within an array declaration. The final change is to mark toLower and toUpper explicitly as @safe pure nothrow, as these are checked in unittests, but a unittest wouldn't tell you what was causing one of the attributes to not be valid for them.
Merge pull request #1556 from dawgfoto/fixMessageBoxInit

enforce thisTid was called before calling receive
Merge pull request #1609 from Orvid/master

Scoped the imports in std.ascii
the enum caused it to allocate needlessly. static immutable avoids that.
Merge pull request #1615 from adamdruppe/md_allocation

the enum caused it to allocate needlessly. static immutable avoids that.