aboutsummaryrefslogtreecommitdiff
path: root/compiler/src/dotty/tools/dotc/transform
diff options
context:
space:
mode:
authorodersky <odersky@gmail.com>2017-02-08 22:22:53 +1100
committerGitHub <noreply@github.com>2017-02-08 22:22:53 +1100
commit75bea8dccce2bc3c0e8298ee71061c9871fd26ac (patch)
tree6e6ebeeab651535c0810ce6eac08e7ff593b4234 /compiler/src/dotty/tools/dotc/transform
parent18d5913821064fffa0c74524ba1a8ead9a7def31 (diff)
parent50e40fffa866e5b41c5df93b3635165ab20e04b1 (diff)
downloaddotty-75bea8dccce2bc3c0e8298ee71061c9871fd26ac.tar.gz
dotty-75bea8dccce2bc3c0e8298ee71061c9871fd26ac.tar.bz2
dotty-75bea8dccce2bc3c0e8298ee71061c9871fd26ac.zip
Merge pull request #1936 from dotty-staging/fix-1916-on-implicit-functions
Fix #1916: fix erasure of implicit xxl closures
Diffstat (limited to 'compiler/src/dotty/tools/dotc/transform')
-rw-r--r--compiler/src/dotty/tools/dotc/transform/Erasure.scala4
1 files changed, 2 insertions, 2 deletions
diff --git a/compiler/src/dotty/tools/dotc/transform/Erasure.scala b/compiler/src/dotty/tools/dotc/transform/Erasure.scala
index 00abddd91..bba97c4c2 100644
--- a/compiler/src/dotty/tools/dotc/transform/Erasure.scala
+++ b/compiler/src/dotty/tools/dotc/transform/Erasure.scala
@@ -349,7 +349,7 @@ object Erasure extends TypeTestsCasts{
if ((owner eq defn.AnyClass) || (owner eq defn.AnyValClass)) {
assert(sym.isConstructor, s"${sym.showLocated}")
defn.ObjectClass
- } else if (defn.isUnimplementedFunctionClass(owner))
+ } else if (defn.isXXLFunctionClass(owner))
defn.FunctionXXLClass
else if (defn.isImplicitFunctionClass(owner))
recur(defn.FunctionClass(owner.name.functionArity))
@@ -542,7 +542,7 @@ object Erasure extends TypeTestsCasts{
* to deal with boxing and unboxing of value classes ourselves.
*/
override def typedClosure(tree: untpd.Closure, pt: Type)(implicit ctx: Context) = {
- val xxl = defn.isUnimplementedFunctionClass(tree.typeOpt.typeSymbol)
+ val xxl = defn.isXXLFunctionClass(tree.typeOpt.typeSymbol)
var implClosure @ Closure(_, meth, _) = super.typedClosure(tree, pt)
if (xxl) implClosure = cpy.Closure(implClosure)(tpt = TypeTree(defn.FunctionXXLType))
implClosure.tpe match {