SI-8059 Override immutable.Queue#{+:,:+} for performance

Without those overrides, all elements are unnecessarily copied.
Merge pull request #3253 from retronym/ticket/8062

 Fix inliner cycle with recursion, separate compilation
Merge pull request #3261 from adriaanm/ticket-6426

Revert ", importable _."
Partially revert f8d8f7d08d.

Need `${dist.dir}/lib/scala-partest.jar` for maven publish.

We still don't want to distribute it in the distribution,
but will have to remove it in release script, as 2.10.x's
build hasn't been refactoreded like master's, and I'm not backporting it.
Merge pull request #3255 from densh/pr/unliftable-3

Introduce Unliftable for Quasiquotes (take #3)
Merge pull request #3241 from retronym/ticket/8054

SI-8054 Fix regression in TypeRef rebind with val overriding object
SI-8024 Pending test case for package object / overloading bug

The error is new in 2.11, but actually seems correct. It appeared
in 2.11.0-M4, more specifically, after
https://github.com/scala/scala/pull/1554

But, the error message itself is wrong, and suggests that a method
symbol has latched itself to an incorrect owner.
SI-8024 Fix inaccurate message on overloaded ambiguous ident

`Symbol#owner` of an overloaded symbol doesn't necessarily correspond
to the owner of any of the alternatives, and as such it shouldn't
be used in error message.

neg/t8024.scala actually represents a progression since 2.10.3;
the ambiguity was not reported. I bisected the change to
https://github.com/scala/scala/pull/1554.
SI-8024 Improve user-level toString of package objects

We were outputing a the unattractive `package package`;
now we opt for `package object pack`.

Under `-Ydebug`, we still go to the "accurate" mode of the
old `toString` implementation, which differentiates package objects
vs package object classes.
Merge pull request #3169 from som-snytt/issue/4841-plugin-cp

 Plugins get a class path
Test case for recently improved unchecked warning

Prior to https://github.com/scala/scala/pull/2848, the enclosed
test compiled without warning and printed:

    true
    false

Features interacting:
  - implicit class tags to enable type patterns on abstract types
  - type tests on compound types.

I think the unchecked warning is acceptable for now.
SI-8030 force symbols on presentation compiler initialization

This commit forces a number of built-in symbols in presentation
compiler to prevent them from being entered during parsing.

The property “parsing doesn’t enter new symbols” is tested on
a rich source file that contains significant number of variations
of Scala syntax.
Merge pull request #3218 from som-snytt/issue/8027-repl-dbltab

SI-8027 REPL double tab regression
Presentation compiler hyperlinking on context bounds test

Added test to the presentation compiler regression suite to exercise
hyperlinking on context bounds.
SI-4287 Added test demonstrating hyperlinking to constructor's argument

This test was inspired by `test/files/run/t5603`, whose output (.check file)
will need to be updated in the upcoming commit that fixes SI-4287, because
the positions associated to the tree have slightly changed.

The additional test should demonstrate that the change in positions isn't
relevant, and it doesn't affect functionality. In fact, hyperlinking to a
constructor's argument work as expected before and after fixing SI-4287.
SI-4827 Test to demonstrate wrong position of constructor default arg

As demonstrated by the attached test, hyperlinking on constructor's
default arg doesn't work (the returned tree is the parameter tree,
i.e., `f`, which is of course wrong).

Printing the tree reveals the issue:

``
[[syntax trees at end of                     typer]] // Foo.scala
[0:63]package [0:0]<empty> {
  [0:37]class Baz extends [9:37][39]scala.AnyRef {
    [10:31]<paramaccessor> private[this] val f: [14]Int = _;
    [14]<stable> <accessor> <paramaccessor> def f: [14]Int = [14][14]Baz.this.f;
    [39]def <init>([14]f: [17]<type: [17]scala.Int> = [30]B.a): [9]Baz = [39]{
      [39][39][39]Baz.super.<init>();
      [9]()
    }
  };

  [6]<synthetic> object Baz extends [6][6]AnyRef {
    [6]def <init>(): [9]Baz.type = [6]{
      [6][6][6]Baz.super.<init>();
      [9]()
    };
    [14]<synthetic> def <init>$default$1: [14]Int = [30]B.a
  };
  [39:63]object B extends [48:63][63]scala.AnyRef {
    [63]def <init>(): [48]B.type = [63]{
      [63][63][63]B.super.<init>();
      [48]()
    };
    [52:61]private[this] val a: [56]Int = [60:61]2;
    [56]<stable> <accessor> def a: [56]Int = [56][56]B.this.a
  }
}
``

In short, the default argument in `<init>` (the constructor) has an
offset position, while we would expect it to have a range position.
Therefore, when locating a tree for any position between (start=) 10
and (end=) 31, the paramaccessor tree `f` is returned.

The next commit will correct the problem.
Report error on code size overflow, log method name.

We used to silently skip class files that would exceed the JVM's size limits.
While rare, this should still be an error.

While I was at it, also included the name of the offending method.
Merge pull request #3268 from adriaanm/support-3021

Report error on code size overflow, log method name.
SI-8042 Use Serialization Proxy Pattern in List

Modify List to use the Serialization Proxy Pattern instead of
directly mutating its state during deserialization.

Use the proxy at the List level for both Nil and :: for simplicity.

Change one member variable (hd) to val from var as a result.  The
other member variable (tl) cannot yet be changed to val because
it is mutated by ListBuffer in the library and Types in reflection.
Merge pull request #3238 from soc/SI-8050

SI-8050 [Avian] Skip instrumented tests