Merge 2.11.x into 2.12.x

```
localhost:scala luc$ git lg 2.12.x..2.11.x 
*   e671c08 - (upstream/2.11.x, 2.11.x) Merge pull request #3774 from lrytz/opt/backendWip (10 hours ago) <Lukas Rytz>
|\  
| * ec3bcc2 - (origin/opt/backendWip, opt/backendWip) Unit tests for reflect/internal/Names (19 hours ago) <Lukas Rytz>
| * 4b800a1 - Unit tests for new BType classes (19 hours ago) <Lukas Rytz>
| * 3914e2b - Rewrite BType to a type hierarchy. (19 hours ago) <Lukas Rytz>
| * 70d1790 - Move class BType to separate component, include it by composition. (11 days ago) <Lukas Rytz>
| * 0f2bf1d - More cleanups and commenting in GenBCode (11 days ago) <Lukas Rytz>
| * d190139 - Re-use the exsiting range of the name table when using subName. (11 days ago) <Lukas Rytz>
| * 9d80fd0 - Cleanups in Names.scala (11 days ago) <Lukas Rytz>
| * 805843d - Minor cleanups and commenting around BType. (11 days ago) <Lukas Rytz>
| * 88d63f2 - Cleanups for tracing in GenBCode, improve some comments (11 days ago) <Lukas Rytz>
*   da2896c - Merge pull request #3770 from retronym/ticket/8607 (3 days ago) <Grzegorz Kossakowski>
|\  
| * 93bcff0 - SI-8607 Generalize previous change to preErase (12 days ago) <Jason Zaugg>
| * 75c411c - SI-8607 Fix erasure for value class inheriting from private class (12 days ago) <Jason Zaugg>
*   6c8a120 - Merge pull request #3791 from S11001001/ticket/8346 (4 days ago) <Ichoran>
|\  
| * 9fc098d - SI-8346: Rebuild invariant sets in #toSet, avoiding CCE. (8 days ago) <Stephen Compall>
* |   60a06a7 - Merge pull request #3735 from lefou/osgi-fix (5 days ago) <Adriaan Moors>
|\ \  
| * | 4483085 - Re-added the scala.util.parsing package import, with optional resolution. (3 weeks ago) <Tobias Roeser>
| * | f4db4af - Refined package imports for scala modules. (4 weeks ago) <Tobias Roeser>
| * | 5139316 - Add JavaSE-1.7 to set of required execution environments. (4 weeks ago) <Tobias Roeser>
| * | 5679159 - Restrict Import-Package for scala.* (5 weeks ago) <Tobias Roeser>
|  /  
* |   5551cf6 - Merge pull request #3733 from retronym/topic/pr-3712-resubmit (6 days ago) <Jason Zaugg>
|\ \  
| * | 71cfb57 - SI-8475 Fix off by one in GroupedIterator when Streaming (3 weeks ago) <Jean-Remi Desjardins>
|  /  
* |   b20bb55 - Merge pull request #3794 from lrytz/t8625 (6 days ago) <Jason Zaugg>
|\ \  
| * | 7ecd98b - (origin/t8625, t8625) SI-8625 fix unreachability analysis for boolean expressions (6 days ago) <Lukas Rytz>
* | |   159bade - Merge pull request #3782 from retronym/topic/opt-scope (6 days ago) <Jason Zaugg>
|\ \ \  
| |/ /  
|/| |   
| * | 33446bd - Optimize enforcement of dependent method type restrictions (7 days ago) <Jason Zaugg>
| * | 748ab30 - Fast path in Namer for methods without defaults (7 days ago) <Jason Zaugg>
| * | 4aa10a1 - Optimize nested scope creation (7 days ago) <Jason Zaugg>
| * | a6714f8 - Eliminate some N^2 performance in type checking (7 days ago) <Jason Zaugg>
* | |   ae67245 - (origin/2.11.x) Merge pull request #3790 from retronym/ticket/8617 (8 days ago) <Lukas Rytz>
|\ \ \  
| |_|/  
|/| |   
| * | bdf9195 - SI-8617 Avoid rangepos crash for OptManifest materializer (9 days ago) <Jason Zaugg>
|/ /  
* |   e948b39 - Merge pull request #3779 from adriaanm/2.11.1 (9 days ago) <Adriaan Moors>
|\ \  
| |/  
|/|   
| * 302bed0 - Bump version number to 2.11.2 (10 days ago) <Adriaan Moors>
|/  
* 9e79885 - Merge pull request #3766 from adriaanm/bump-version (10 days ago) <Adriaan Moors>
* b6cea5f - Bump versions for Scala 2.11.1 (13 days ago) <Adriaan Moors>
localhost:scala luc$
```

The "Bump version number to 2.11." commit 302bed0 is not merged. b6cea5f on the other hand is.

```
localhost:scala luc$ git merge 9e79885
Merge made by the 'recursive' strategy.
 versions.properties | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)
localhost:scala luc$ git merge -s ours e948b39
Merge made by the 'ours' strategy.
localhost:scala luc$ git df 2.12.x
diff --git a/versions.properties b/versions.properties
index 2fbd4c4..1212734 100644
--- a/versions.properties
+++ b/versions.properties
@@ -1,10 +1,10 @@
-#Wed, 16 Apr 2014 11:13:08 +0200
+#Tue, 20 May 2014 10:01:37 +0200
 # NOTE: this file determines the content of the scala-distribution
 # via scala-dist-pom.xml and scala-library-all-pom.xml
 # when adding new properties that influence a release,
 # also add them to the update.versions mechanism in build.xml,
 # which is used by scala-release-2.11.x in scala/jenkins-scripts
-starr.version=2.11.0
+starr.version=2.11.1
 starr.use.released=1
 
 # These are the versions of the modules that go with this release.
@@ -14,13 +14,13 @@ starr.use.released=1
 scala.binary.version=2.11
 # e.g. 2.11.0-RC1, 2.11.0, 2.11.1-RC1, 2.11.1
 # this defines the dependency on scala-continuations-plugin in scala-dist's pom
-scala.full.version=2.11.0
+scala.full.version=2.11.1
 
 # external modules shipped with distribution, as specified by scala-library-all's pom
-scala-xml.version.number=1.0.1
+scala-xml.version.number=1.0.2
 scala-parser-combinators.version.number=1.0.1
-scala-continuations-plugin.version.number=1.0.1
-scala-continuations-library.version.number=1.0.1
+scala-continuations-plugin.version.number=1.0.2
+scala-continuations-library.version.number=1.0.2
 scala-swing.version.number=1.0.1
 akka-actor.version.number=2.3.3
 actors-migration.version.number=1.1.0
localhost:scala luc$ git merge 2.11.x
Removing src/compiler/scala/tools/nsc/backend/jvm/BCodeGlue.scala
Merge made by the 'recursive' strategy.
 bincompat-backward.whitelist.conf                               |   4 +
 bincompat-forward.whitelist.conf                                |   4 +
 build-ant-macros.xml                                            |   5 +
 src/build/bnd/scala-actors.bnd                                  |   2 +
 src/build/bnd/scala-compiler-doc.bnd                            |   3 +-
 src/build/bnd/scala-compiler-interactive.bnd                    |   3 +-
 src/build/bnd/scala-compiler.bnd                                |   4 +
 src/build/bnd/scala-continuations-library.bnd                   |   4 +-
 src/build/bnd/scala-continuations-plugin.bnd                    |   4 +-
 src/build/bnd/scala-library.bnd                                 |   1 +
 src/build/bnd/scala-parser-combinators.bnd                      |   4 +-
 src/build/bnd/scala-reflect.bnd                                 |   5 +-
 src/build/bnd/scala-swing.bnd                                   |   4 +-
 src/build/bnd/scala-xml.bnd                                     |   4 +-
 src/compiler/scala/tools/nsc/backend/icode/GenICode.scala       |  13 +-
 src/compiler/scala/tools/nsc/backend/jvm/AsmUtils.scala         |   8 +
 src/compiler/scala/tools/nsc/backend/jvm/BCodeBodyBuilder.scala |  91 ++++-----
 src/compiler/scala/tools/nsc/backend/jvm/BCodeGlue.scala        | 718 --------------------------------------------------------------------
 src/compiler/scala/tools/nsc/backend/jvm/BCodeHelpers.scala     |  96 ++++-----
 src/compiler/scala/tools/nsc/backend/jvm/BCodeIdiomatic.scala   | 139 +++++++------
 src/compiler/scala/tools/nsc/backend/jvm/BCodeSkelBuilder.scala |  25 +--
 src/compiler/scala/tools/nsc/backend/jvm/BCodeSyncAndTry.scala  |  17 +-
 src/compiler/scala/tools/nsc/backend/jvm/BCodeTypes.scala       | 171 ++++++++--------
 src/compiler/scala/tools/nsc/backend/jvm/BTypes.scala           | 416 +++++++++++++++++++++++++++++++++++++++
 src/compiler/scala/tools/nsc/backend/jvm/GenASM.scala           |   7 +-
 src/compiler/scala/tools/nsc/backend/jvm/GenBCode.scala         |  11 +-
 src/compiler/scala/tools/nsc/transform/Erasure.scala            |  12 +-
 src/compiler/scala/tools/nsc/transform/Mixin.scala              |   2 +-
 src/compiler/scala/tools/nsc/typechecker/Implicits.scala        |   2 +-
 src/compiler/scala/tools/nsc/typechecker/Namers.scala           |  20 +-
 src/compiler/scala/tools/nsc/typechecker/Typers.scala           |  11 +-
 src/library/scala/collection/Iterator.scala                     |   4 +-
 src/library/scala/collection/immutable/HashSet.scala            |   7 +
 src/library/scala/collection/immutable/ListSet.scala            |   7 +
 src/library/scala/collection/immutable/Set.scala                |  16 +-
 src/reflect/scala/reflect/internal/Names.scala                  | 106 +++++-----
 src/reflect/scala/reflect/internal/Scopes.scala                 |  24 +--
 src/reflect/scala/reflect/runtime/SymbolLoaders.scala           |   2 +-
 src/reflect/scala/reflect/runtime/SynchronizedOps.scala         |   3 +-
 test/files/neg/double-def-top-level.check                       |   7 +
 test/files/neg/double-def-top-level/A_1.scala                   |   4 +
 test/files/neg/double-def-top-level/B_2.scala                   |   2 +
 test/files/neg/double-def-top-level/C_3.scala                   |   2 +
 test/files/neg/double-def-top-level/D_3.scala                   |   2 +
 test/files/pos/t8617.flags                                      |   1 +
 test/files/pos/t8617.scala                                      |  10 +
 test/files/pos/t8625.scala                                      |   5 +
 test/files/run/analyzerPlugins.check                            |  13 +-
 test/files/run/t8346.check                                      |   6 +
 test/files/run/t8346.scala                                      |  34 ++++
 test/files/run/t8607.scala                                      |  36 ++++
 test/junit/scala/collection/IteratorTest.scala                  |  20 ++
 test/junit/scala/reflect/internal/NamesTest.scala               |  95 +++++++++
 test/junit/scala/reflect/internal/ScopeTest.scala               |  54 ++++++
 test/junit/scala/tools/nsc/backend/jvm/BTypesTest.scala         | 104 ++++++++++
 test/junit/scala/tools/testing/AssertUtil.scala                 |  17 +-
 56 files changed, 1261 insertions(+), 1130 deletions(-)
 delete mode 100644 src/compiler/scala/tools/nsc/backend/jvm/BCodeGlue.scala
 create mode 100644 src/compiler/scala/tools/nsc/backend/jvm/BTypes.scala
 create mode 100644 test/files/neg/double-def-top-level.check
 create mode 100644 test/files/neg/double-def-top-level/A_1.scala
 create mode 100644 test/files/neg/double-def-top-level/B_2.scala
 create mode 100644 test/files/neg/double-def-top-level/C_3.scala
 create mode 100644 test/files/neg/double-def-top-level/D_3.scala
 create mode 100644 test/files/pos/t8617.flags
 create mode 100644 test/files/pos/t8617.scala
 create mode 100644 test/files/pos/t8625.scala
 create mode 100644 test/files/run/t8346.check
 create mode 100644 test/files/run/t8346.scala
 create mode 100644 test/files/run/t8607.scala
 create mode 100644 test/junit/scala/collection/IteratorTest.scala
 create mode 100644 test/junit/scala/reflect/internal/NamesTest.scala
 create mode 100644 test/junit/scala/reflect/internal/ScopeTest.scala
 create mode 100644 test/junit/scala/tools/nsc/backend/jvm/BTypesTest.scala
```