SI-6370 changed ListMap apply0 method to produce correct error message when a key is not found
Current implementation of apply0 relies on tail method to iterate over all keys.
When the list gets to its end, tail produces an 'empty map' message in its exception, which is thrown by ListMap.
This change checks if the collection is empty before calling tail and provides a more appropriate key not found message.

Signed-off-by: Vinicius Miana <vinicius@miana.com.br>
SI-6935 Added readResolve in BoxedUnit
When deserializing Unit, it would return an instance of Object, but not a Scala Unit.
By adding readResolve, the deserialization of Unit will work.
SI-6225 Fix import of inherited package object implicits

The prefix in the ImplicitInfo must be com.acme.`package`.type,
rather than com.acme.
Tolerate symbol sharing between accessor/field.

Recently, TreeCheckers (-Ycheck) was extended to
report on references to symbols that were not in
scope, which is often a sign that some substitution
or ownership changes have been omitted.

But, accessor methods directly use the type of the
underlying field, without cloning symbols defined
in that type, such as quantified types in existentials,
at the new owner.

My attempt to change this broke pos/existentials.scala.

Instead, I'll just look the other way in TreeCheckers.
SI-7091 Add a diagnostic for the "no acc def buf" error.
SI-6514 Avoid spurious dead code warnings

`deadCode.expr` stores the method symbol most recently encountered
in `handleMonomorphicCall`, and uses this to avoid warnings
for arguments to label jumps and `Object#synchronized` (which
sneakily acts by-name without advertising the fact in its type.)

But this scheme was insufficient if the argument itself contains
another method call, such as `matchEnd(throw e(""))`.

This commit changes the single slot to a stack, and also
grants exemption to `LabelDef` trees. They were incorrectly
flagged in the enclosed test case after I made the the first change.
silences t6323a

Tag materialization notices enabled with -Xlog-implicits are now echoes
not printlns. Therefore, they go into stderr, not stdout, getting logged
by partest and not spamming stdout of partest.
Merge pull request #2096 from ViniciusMiana/SI-6370

SI-6370 changed ListMap apply0 method to produce correct error message
Merge pull request #2097 from ViniciusMiana/SI-6935

SI-6935 Added readResolve in BoxedUnit
Merge pull request #2098 from retronym/ticket/6225

SI-6225 Fix import of inherited package object implicits
Merge pull request #2102 from retronym/topic/tree-checker-leniancy

Tolerate symbol sharing between accessor/field.
Merge pull request #2111 from retronym/2.10.x

SI-6514 Avoid spurious dead code warnings
SI-7091 Don't try to put a protected accessor in a package.

This shows up when a protected[pack] class has a constructor
with a default argument.

Regressed in f708b87 / SI-2296.
Merge pull request #2113 from scalamacros/topic/silence

silences t6323a
Merge pull request #2115 from retronym/ticket/7091

SI-7091 Don't try to put a protected accessor in a package.