[nomaster] Revert "more ListOfNil => Nil"

This reverts commit bb9adfbd76af0a0281912fcef4bcaca409a7c9a3.
[nomaster] Revert "DummyTree => CannotHaveAttrs"

This reverts commit 838cbe623c142b7005446793948097f679219fe3.

Conflicts:
	src/reflect/scala/reflect/api/Trees.scala
SI-6888 Loosen criteria for $outer search.

In order to cater for nested classes with names that end
with '$', which lead to ambiguity when unmangling expanded
names.

In:

    class X { object $ }

We end up with:

    orginalName(X$$$$$outer) = $$$outer

This change modifies `outerSource` to consider that to be
and outer accessor name. It is a piecemeal fix, and no doubt
there are other nasty surprises in store for those inclined to
flash their $$$ in identifier names, but the method changed is
not used widely and this solves the reported problem.

SI-2806 remains open to address the deeper problem.
SI-7060 More conservative dead code elim marking

In dead code elimination, a DROP instruction that gets marked as useful
and can be reached via several paths needs to also mark all the reaching
definitions as useful, else we'll get unbalanced stacks on the two paths.

A simplistic example:
```
BB1:
  CALL X       // useful, leaves a LONG on the stack
  JUMP BB3

BB2:
  LOAD_FIELD Y // not useful
  JUMP BB3

BB3:
  DROP LONG    // useful because "CALL X" is useful
               // but unless we mark "LOAD_FIELD Y" as useful too
               // we'll get unbalanced stacks when reaching BB3
```

This patch addresses the unbalanced stack problem by adding all the
reaching definitions of a useful DROP as useful instructions too.
SI-6773 Changes IndexSeqFactory to be "since 2.11"

The addition of IndexSeqFactory to 2.10.x branch created a binary
incompatibility so it was removed in that branch before being released.
This commit fixes the since annotation to 2.11 on IndexSeqFactory in the
master branch.
[nomaster] Revert "introduces global.pendingSuperCall"

This reverts commit 0ebf72b9498108e67c2133c6522c436af50a18e8.

Conflicts:
	src/compiler/scala/tools/nsc/typechecker/Typers.scala
	src/reflect/scala/reflect/internal/Trees.scala
[nomaster] Revert "refactors handling of parent types"

This reverts commit 40063b0009d55ed527bf1625d99a168a8faa4124.

Conflicts:
	src/compiler/scala/tools/nsc/ast/parser/Parsers.scala
	src/compiler/scala/tools/nsc/typechecker/Typers.scala
[nomaster] verifies compat with 2.10.0

Makes sure that the compiler understands the 2.10.0 format of super
constructor calls after the recent revert from the typemacro-compatible
format.
introduces an exhaustive java-to-scala test

Originally composed to accommodate pull request feedback, this test has
uncovered a handful of bugs in FromJavaClassCompleter, namely:
* SI-7071 non-public ctors get lost
* SI-7072 inner classes are read incorrectly

I'm leaving the incorrect results of FromJavaClassCompleters in the check
file, so that we get notified when something changes there.
[nomaster] SI-6773 Makes the SI-6150 changes binary compatible with 2.10

The back ported fix of SI-6150 1f0e4880ad7ad816fd82c04f6814c5b165f86981
broke binary compatibility. This commit fixes that by removing the
IndexedSeqFactory class and copy/pasting its one method around to
everything that extended it then re-adds some inner
classes needed by the binary compatibility checker.
Add a request to presentation compiler to fetch doc comment information.
Refactor scaladoc base functionality to allow it to be mixed in with Global in the IDE.
Merge pull request #2061 from lrytz/analyzerPluginsMaster

Merge Analyzer Plugins for Master
Update src/library/scala/sys/process/ProcessBuilder.scala

Fix typesetting of unordered list items in the docs.
Update src/library/scala/sys/process/package.scala

Fix broken wildcard expansion in the `sys.process` docs.
Merge pull request #2059 from VladUreche/issue/7060

SI-7060 More conservative dead code elim marking
Merge pull request #2064 from JamesIry/2.10.x_SI-6773

[nomaster] SI-6773 Makes the SI-6150 changes binary compatible with 2.10
Merge pull request #2071 from JamesIry/master_SI-6773

SI-6773 Changes IndexSeqFactory to be "since 2.11"
SI-7070 Turn restriction on companions in pkg objs into warning

The implementation restriction created from SI-5954 in
3ef487ecb6733bfe3c13d89780ebcfc81f9a5ea0 has two problems.

1) The problematic code works fine if compile with sbt. That means the
restriction is breaking some people needlessly.

2) It's not binary compatible.

To fix all that this commit changes the error into a warning and removes
the setting used to get around the restriction.
[nomaster] Revert "SI-5017 Poor performance of :+ operator on Arrays"

This reverts commit 02b2da63409af6a28824cbb74d00d0ec04518c8d.
Merge pull request #2080 from JamesIry/2.10.x_SI-5017

[nomaster] Revert "SI-5017 Poor performance of :+ operator on Arrays"