diff options
author | Adriaan Moors <adriaan@lightbend.com> | 2016-12-19 14:39:46 -0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2016-12-19 14:39:46 -0800 |
commit | bba42ff5d410127c8fd9be0073a6eda91b8029d1 (patch) | |
tree | 5b441552f074ee574c54bb32dc04b509e1e72d5b /src/compiler/scala | |
parent | a9802c317a72925838bcd5c53a5919f75b577caa (diff) | |
parent | 14451a9c910908fb0c39cf20ad6a5bcb6d65a41c (diff) | |
download | scala-bba42ff5d410127c8fd9be0073a6eda91b8029d1.tar.gz scala-bba42ff5d410127c8fd9be0073a6eda91b8029d1.tar.bz2 scala-bba42ff5d410127c8fd9be0073a6eda91b8029d1.zip |
Merge pull request #5541 from retronym/ticket/10067
SI-10067 Avoid linkage errors with type patterns, Java inner classes
Diffstat (limited to 'src/compiler/scala')
-rw-r--r-- | src/compiler/scala/tools/nsc/transform/ExplicitOuter.scala | 2 | ||||
-rw-r--r-- | src/compiler/scala/tools/nsc/transform/patmat/MatchTreeMaking.scala | 1 |
2 files changed, 2 insertions, 1 deletions
diff --git a/src/compiler/scala/tools/nsc/transform/ExplicitOuter.scala b/src/compiler/scala/tools/nsc/transform/ExplicitOuter.scala index 7d50c12852..8bdbf16e03 100644 --- a/src/compiler/scala/tools/nsc/transform/ExplicitOuter.scala +++ b/src/compiler/scala/tools/nsc/transform/ExplicitOuter.scala @@ -166,7 +166,7 @@ abstract class ExplicitOuter extends InfoTransform if ((resTpTransformed ne resTp) || (paramsWithOuter ne params)) MethodType(paramsWithOuter, resTpTransformed) else tp - case ClassInfoType(parents, decls, clazz) => + case ClassInfoType(parents, decls, clazz) if !clazz.isJava => var decls1 = decls if (isInner(clazz) && !clazz.isInterface) { decls1 = decls.cloneScope diff --git a/src/compiler/scala/tools/nsc/transform/patmat/MatchTreeMaking.scala b/src/compiler/scala/tools/nsc/transform/patmat/MatchTreeMaking.scala index 8c59ced28f..89c793ec94 100644 --- a/src/compiler/scala/tools/nsc/transform/patmat/MatchTreeMaking.scala +++ b/src/compiler/scala/tools/nsc/transform/patmat/MatchTreeMaking.scala @@ -351,6 +351,7 @@ trait MatchTreeMaking extends MatchCodeGen with Debugging { } if ((expectedPrefix eq NoPrefix) + || expectedTp.typeSymbol.isJava || definedInStaticLocation(expectedTp) || testedPrefix =:= expectedPrefix) orig else gen.mkAttributedQualifierIfPossible(expectedPrefix) match { |