SI-5905 Clarify test case

The language feature options are discovered reflectively, but it
is nice to enforce that expected options are supplied.

Short of that, the code string includes a rowdy postfix operator.

It still does enforce that at least one option was discovered.
SI-8503 Clean up interpolation of help message

We have interpolation now. This commit also moves an extra blank
line from the end to the middle of the message.
SI-8596 Fix rangepos crasher with defaults, poly methods

Regressed in SI-7915 / 3009a525b5

We should be deriving the position of the synthetic `Select`
from `basefun1`, rather than `basefun`. In the new, enclosed
test, the difference amounts to:

    new Container().typeParamAndDefaultArg[Any]()
    `------------ basefun1 --------------'
    `----------------- basefun ---------------'

For monomorphic methods, these are one and the same, which is
why `presentation/t7915` was working. I've extended that test
to a polymorphic method to check that hyperlink resolution works.
SI-8503 -version is info setting

And the Scala runner exits with 0 for info settings.

Producing the version string is consolidated.

The compiler driver uses the default settings hook to
short-circuit on -version.  That's to avoid creating
the compiler; really it should check shouldStopWithInfo
first, as the runner does.
Merge pull request #3799 from retronym/topic/8596-2.10

SI-8596 Fix rangepos crasher with defaults, poly methods
Merge remote-tracking branch 'origin/2.10.x' into merge/2.10.x-to-2.11.x-20140604

Conflicts:
	src/compiler/scala/tools/nsc/typechecker/NamesDefaults.scala
Java 6-8 agnosticism for a test

Under Java 8, the output contains newly added methods in
j.u.Iterator.

I've created cut down, test-local versions of the relevant types
to decouple.
Support Java 8 in the checkfile for neg/t6289
Java 8 support for run/repl-javap-app.check

Just adding the java 8 output.

No attempt to finesse anything.

But the partest mechanism does still need auto-update of these
conditional check files, plus expression evaluation of the condition.
Merge pull request #3800 from som-snytt/issue/8503

SI-8503 -version is info setting
Merge pull request #3812 from retronym/merge/2.10.x-to-2.11.x-20140604

Merge 2.10.x to 2.11.x
Merge pull request #3818 from som-snytt/issue/repl-javap-app8

Java 8 support for run/repl-javap-app.check
Merge pull request #3815 from retronym/topic/java8-support-2

Java 8 agnostism for our test suite
SI-8631 Treat `A with Sealed` as enumerable for pattern matching

Enumerate the subtypes of sealed parent types of refinement
types, and filter those that conform to the refinement type.

Such types can crop up easily when LUB-bing case classes which
add `Product with Serializable` to the mix.
Merge pull request #3777 from som-snytt/issue/5905-test

SI-5905 Clarify test case
Refactor `enumerateSubtypes`

  - reorder to make "unenumerable" the last case
  - reunite an orphaned comment with its loved ones.
SI-8611 Avoid accidental patmat unification with refinement types

In the enclosed test, t8611a.scala, the patterns `O.{A, B}` were
incorrect treated as equivelent by the combination of
`uniqueTpForTree` and `Const.uniqueTpForTree`.

`uniqueTpForTree` used `Type#narrow` to try to create a distinct
type for each new pattern tree it encountered. However, narrowing a
`RefinedType` does not create a distinct type as we are used to
when narrowing, e.g. a class type.

    // Type
    def narrow: Type =
      if (phase.erasedTypes) this
      else {
        val cowner = commonOwner(this)
        refinedType(this :: Nil, cowner, EmptyScope, cowner.pos).narrow
      }

    // CompoundType
    override def narrow: Type = typeSymbol.thisType

This commit creates a fresh existential type symbol rather than
trying to use `narrow`.

I've included a unit test to show the sublteties of narrowing
refinment types.
Remove now-redundant condition in sealedness checking

It arrived in c1f8dbc, but is no longer needed after user-defined
value classes were introduced in 2.10.0.
Merge pull request #3781 from retronym/topic/8611

SI-8611 Avoid accidental patmat unification with refinement types
Merge pull request #3797 from retronym/topic/exhaust-compound

SI-8631 Treat `A with Sealed` as enumerable for pattern matching