Fixed typo in ProcessBuilder scaladoc.

ProcessBuilder creation sample code did not complie due to an error
in import statement.
SI-4859 Don't rewrite CC().CC2() to new CC2

Where CC and CC2 are case classes. Attempting to do so leads to
a "no legal prefix" error.

Now, we restrict this optimization (living in RefChecks ?!) to
case class applies with a "safe to inline" qualifier.
Introduce a new Symbol test: isTopLevel.
Wider use of isTopLevel
SI-4859 Don't elide qualifiers when selecting nested modules.

Otherwise we fail to throw in:

   {???; Predef}.DummyImplicit.dummyImplicit

We still elide the initialization of `Outer` in `Outer.Inner.foo`
as before, although that seems a little dubious to me.

In total, we had to change RefChecks, Flatten, and GenICode
to effect this change. A recently fixed bug in tail call elimination
was also due to assuming that the the qualifier of a Select node
wasn't worthy of traversal.  Let's keep a close eye out for more
instances of this problem.
SI-4859 Retain MODULE_LOAD in dead code elim.

Without this, the following test fails:

    SCALAC_OPTS="-optimize" ./test/partest test/files/run/t4859.scala
Laying groundwork for a followup ticket.

To solve SI-5304, we should change `isQualifierSafeToElide`.
SI-2577, SI-6860: annotation type inference.

This is less than ideal:

  scala> class Bippy[T] extends annotation.StaticAnnotation
  defined class Bippy

  scala> def f: Int @Bippy = 5
  f: Int @Bippy[T]

Turns out we can infer such types. Now it says:

  scala> def f: Int @Bippy = 5
  f: Int @Bippy[Nothing]

This should put to rest many an issue with parameterized
annotations.
SI-5182, no position on annotation error.

Now there's a position on the synthetic "value" Ident.
SI-6083, misleading annotation error message.

When an implicit conversion causes an apparently constant
argument not to be constant, show the conversion, not the
constant.
Added test for untested nested annotation restriction.
Renamed methods to be less ambiguous in intent.

isNamed    => isNamedArg
isIdentity => allArgsArePositional
nameOf     => nameOfNamedArg

Moved mkNamedArg into TreeGen.
Removing superfluous method parameters.

Adding a method parameter with a default argument which
deviates from the default at a single call site is a pretty
questionable tradeoff. Even more so when done twice.

Like sands through the hourglass, so go the parameters
of our method.
Cleaning up dummy applied types and friends.

Incorporates feedback from dealias/widen PR.
Add PolyType to Infer#normalize.

It arises when inferring the type of an overloaded call:

  def g(s: String): String = s
  def f: String = ???
  def f[C](c: C): String = g(f)

Also refined warning when isHKSubType is called with
arguments which very likely were never meant to be compared.
A very interesting checkfile update.

Surely signfiicant, but I haven't determined in what way.
Put back a method which sbt is using.

Good catch, ant target sbt.compile.
Make sure typed isn't called with an erroneous tree.

I can't see that it makes any difference, but this is
approximately the way it was before.
Disabled SI-6987.

It causes spurious failures - a typical example:

[partest] testing: [...]/files/run/t6987.scala                                  [FAILED]
[partest] did not get the string expected, full results were:
[partest] Fast Scala compiler version 2.11.0-20130126-111937-f01e001c77 -- Copyright 2002-2013, LAMP/EPFL
[partest] [Given arguments: -shutdown -verbose]
[partest] [Transformed arguments: -shutdown -verbose -current-dir /localhome/jenkins/b/workspace/scala-checkin-manual]
[partest] [VM arguments: ]
[partest] java.net.ConnectException: Connection refused
[partest] [Connecting to compilation daemon at port 32808 failed; re-trying...]
[partest] [No compilation server running.]
[partest]
Merge pull request #1985 from paulp/pr/disable-6987

Disabled SI-6987.