code |
// Using latest snapshot 2.5.1.12424.20070726-044547
// which has Martin's fix for an earlier type mismatch error (much appreciated)
abstract class Settings
{
}
abstract class Module
{ self =>
type settingsType <: Settings
}
abstract class Grist
{ self =>
type settingsType <: Settings
type moduleType <: Module {type settingsType = self.settingsType}
val module: moduleType
val settings: settingsType
}
abstract class Tool
{ self =>
type settingsType <: Settings
type moduleType = Module { type settingsType = self.settingsType }
type gristType = Grist { type moduleType <: self.moduleType; type settingsType <: self.settingsType }
}
abstract class TestTypeMismatch
{ self =>
type settingsType <: Settings
type moduleType = Module { type settingsType = self.settingsType }
type toolType = Tool { type settingsType = self.settingsType }
type gristType = toolType # gristType
// internal compiler error can be avoided by using the following instead
// type gristType = Grist { type settingsType = self.settingsType; type moduleType = self.moduleType }
def inputGrist(tool: toolType): List[gristType] = error("bla")
val settings: settingsType = error("bla")
val tools: List[toolType] = error("bla")
List[Tuple2[moduleType, settingsType]](tools.flatMap(inputGrist(_).map(grist => Tuple2(grist.module, grist.settings))): _*)
}
/*
exception when traversing ((grist: TestTypeMismatch.this.gristType) => new (grist.moduleType, grist.settingsType)(grist.module, grist.settings))
exception when traversing TestTypeMismatch.this.inputGrist(x$0).map[(grist.moduleType, grist.settingsType) forSome { val grist: Grist{type moduleType <: Module{type settingsType = TestTypeMismatch.this.settingsType}; type settingsType <: TestTypeMismatch.this.settingsType} }](((grist: TestTypeMismatch.this.gristType) => new (grist.moduleType, grist.settingsType)(grist.module, grist.settings)))
exception when traversing final def apply(x$0: Tool{type settingsType = TestTypeMismatch.this.settingsType}): List[(grist.moduleType, grist.settingsType) forSome { val grist: TestTypeMismatch.this.gristType }] = TestTypeMismatch.this.inputGrist(x$0).map[(grist.moduleType, grist.settingsType) forSome { val grist: Grist{type moduleType <: Module{type settingsType = TestTypeMismatch.this.settingsType}; type settingsType <: TestTypeMismatch.this.settingsType} }](((grist: TestTypeMismatch.this.gristType) => new (grist.moduleType, grist.settingsType)(grist.module, grist.settings)))
exception when traversing java.lang.Object with (Tool{type settingsType = TestTypeMismatch.this.settingsType}) => List[(grist.moduleType, grist.settingsType) forSome { val grist: Grist{type moduleType <: Module{type settingsType = TestTypeMismatch.this.settingsType}; type settingsType <: TestTypeMismatch.this.settingsType} }] with ScalaObject {
def this(): template $anonfun = {
$anonfun.super.this();
()
};
final def apply(x$0: Tool{type settingsType = TestTypeMismatch.this.settingsType}): List[(grist.moduleType, grist.settingsType) forSome { val grist: TestTypeMismatch.this.gristType }] = TestTypeMismatch.this.inputGrist(x$0).map[(grist.moduleType, grist.settingsType) forSome { val grist: Grist{type moduleType <: Module{type settingsType = TestTypeMismatch.this.settingsType}; type settingsType <: TestTypeMismatch.this.settingsType} }](((grist: TestTypeMismatch.this.gristType) => new (grist.moduleType, grist.settingsType)(grist.module, grist.settings)))
}
exception when traversing @serializable final <synthetic> class $anonfun extends java.lang.Object with (Tool{type settingsType = TestTypeMismatch.this.settingsType}) => List[(grist.moduleType, grist.settingsType) forSome { val grist: Grist{type moduleType <: Module{type settingsType = TestTypeMismatch.this.settingsType}; type settingsType <: TestTypeMismatch.this.settingsType} }] with ScalaObject {
def this(): template $anonfun = {
$anonfun.super.this();
()
};
final def apply(x$0: Tool{type settingsType = TestTypeMismatch.this.settingsType}): List[(grist.moduleType, grist.settingsType) forSome { val grist: TestTypeMismatch.this.gristType }] = TestTypeMismatch.this.inputGrist(x$0).map[(grist.moduleType, grist.settingsType) forSome { val grist: Grist{type moduleType <: Module{type settingsType = TestTypeMismatch.this.settingsType}; type settingsType <: TestTypeMismatch.this.settingsType} }](((grist: TestTypeMismatch.this.gristType) => new (grist.moduleType, grist.settingsType)(grist.module, grist.settings)))
}
exception when traversing ((x$0: Tool{type settingsType = TestTypeMismatch.this.settingsType}) => TestTypeMismatch.this.inputGrist(x$0).map[(grist.moduleType, grist.settingsType) forSome { val grist: Grist{type moduleType <: Module{type settingsType = TestTypeMismatch.this.settingsType}; type settingsType <: TestTypeMismatch.this.settingsType} }](((grist: TestTypeMismatch.this.gristType) => new (grist.moduleType, grist.settingsType)(grist.module, grist.settings))))
exception when traversing TestTypeMismatch.this.tools.flatMap[(grist.moduleType, grist.settingsType) forSome { val grist: Grist{type moduleType <: Module{type settingsType = TestTypeMismatch.this.settingsType}; type settingsType <: TestTypeMismatch.this.settingsType} }](((x$0: Tool{type settingsType = TestTypeMismatch.this.settingsType}) => TestTypeMismatch.this.inputGrist(x$0).map[(grist.moduleType, grist.settingsType) forSome { val grist: Grist{type moduleType <: Module{type settingsType = TestTypeMismatch.this.settingsType}; type settingsType <: TestTypeMismatch.this.settingsType} }](((grist: TestTypeMismatch.this.gristType) => new (grist.moduleType, grist.settingsType)(grist.module, grist.settings)))))
exception when traversing scala.List.apply[(Module{type settingsType = TestTypeMismatch.this.settingsType}, TestTypeMismatch.this.settingsType)]((TestTypeMismatch.this.tools.flatMap[(grist.moduleType, grist.settingsType) forSome { val grist: Grist{type moduleType <: Module{type settingsType = TestTypeMismatch.this.settingsType}; type settingsType <: TestTypeMismatch.this.settingsType} }](((x$0: Tool{type settingsType = TestTypeMismatch.this.settingsType}) => TestTypeMismatch.this.inputGrist(x$0).map[(grist.moduleType, grist.settingsType) forSome { val grist: Grist{type moduleType <: Module{type settingsType = TestTypeMismatch.this.settingsType}; type settingsType <: TestTypeMismatch.this.settingsType} }](((grist: TestTypeMismatch.this.gristType) => new (grist.moduleType, grist.settingsType)(grist.module, grist.settings))))): _*))
exception when traversing java.lang.Object with ScalaObject { self =>
def this(): TestTypeMismatch = {
TestTypeMismatch.super.this();
()
};
type settingsType>: Nothing <: Settings;
type moduleType = Module{type settingsType = TestTypeMismatch.this.settingsType};
type toolType = Tool{type settingsType = TestTypeMismatch.this.settingsType};
type gristType = Grist{type moduleType <: Module{type settingsType = TestTypeMismatch.this.settingsType}; type settingsType <: TestTypeMismatch.this.settingsType};
def inputGrist(tool: Tool{type settingsType = TestTypeMismatch.this.settingsType}): List[TestTypeMismatch.this.gristType] = scala.this.Predef.error("bla");
private[this] val settings: TestTypeMismatch.this.settingsType = scala.this.Predef.error("bla");
<stable> <accessor> def settings: TestTypeMismatch.this.settingsType = TestTypeMismatch.this.settings;
private[this] val tools: List[TestTypeMismatch.this.toolType] = scala.this.Predef.error("bla");
<stable> <accessor> def tools: List[TestTypeMismatch.this.toolType] = TestTypeMismatch.this.tools;
scala.List.apply[(Module{type settingsType = TestTypeMismatch.this.settingsType}, TestTypeMismatch.this.settingsType)]((TestTypeMismatch.this.tools.flatMap[(grist.moduleType, grist.settingsType) forSome { val grist: Grist{type moduleType <: Module{type settingsType = TestTypeMismatch.this.settingsType}; type settingsType <: TestTypeMismatch.this.settingsType} }](((x$0: Tool{type settingsType = TestTypeMismatch.this.settingsType}) => TestTypeMismatch.this.inputGrist(x$0).map[(grist.moduleType, grist.settingsType) forSome { val grist: Grist{type moduleType <: Module{type settingsType = TestTypeMismatch.this.settingsType}; type settingsType <: TestTypeMismatch.this.settingsType} }](((grist: TestTypeMismatch.this.gristType) => new (grist.moduleType, grist.settingsType)(grist.module, grist.settings))))): _*))
}
exception when traversing abstract class TestTypeMismatch extends java.lang.Object with ScalaObject { self =>
def this(): TestTypeMismatch = {
TestTypeMismatch.super.this();
()
};
type settingsType>: Nothing <: Settings;
type moduleType = Module{type settingsType = TestTypeMismatch.this.settingsType};
type toolType = Tool{type settingsType = TestTypeMismatch.this.settingsType};
type gristType = Grist{type moduleType <: Module{type settingsType = TestTypeMismatch.this.settingsType}; type settingsType <: TestTypeMismatch.this.settingsType};
def inputGrist(tool: Tool{type settingsType = TestTypeMismatch.this.settingsType}): List[TestTypeMismatch.this.gristType] = scala.this.Predef.error("bla");
private[this] val settings: TestTypeMismatch.this.settingsType = scala.this.Predef.error("bla");
<stable> <accessor> def settings: TestTypeMismatch.this.settingsType = TestTypeMismatch.this.settings;
private[this] val tools: List[TestTypeMismatch.this.toolType] = scala.this.Predef.error("bla");
<stable> <accessor> def tools: List[TestTypeMismatch.this.toolType] = TestTypeMismatch.this.tools;
scala.List.apply[(Module{type settingsType = TestTypeMismatch.this.settingsType}, TestTypeMismatch.this.settingsType)]((TestTypeMismatch.this.tools.flatMap[(grist.moduleType, grist.settingsType) forSome { val grist: Grist{type moduleType <: Module{type settingsType = TestTypeMismatch.this.settingsType}; type settingsType <: TestTypeMismatch.this.settingsType} }](((x$0: Tool{type settingsType = TestTypeMismatch.this.settingsType}) => TestTypeMismatch.this.inputGrist(x$0).map[(grist.moduleType, grist.settingsType) forSome { val grist: Grist{type moduleType <: Module{type settingsType = TestTypeMismatch.this.settingsType}; type settingsType <: TestTypeMismatch.this.settingsType} }](((grist: TestTypeMismatch.this.gristType) => new (grist.moduleType, grist.settingsType)(grist.module, grist.settings))))): _*))
}
exception when traversing package <empty> {
abstract class Settings extends java.lang.Object with ScalaObject {
def this(): Settings = {
Settings.super.this();
()
}
};
abstract class Module extends java.lang.Object with ScalaObject { self =>
def this(): Module = {
Module.super.this();
()
};
type settingsType>: Nothing <: Settings
};
abstract class Grist extends java.lang.Object with ScalaObject { self =>
def this(): Grist = {
Grist.super.this();
()
};
type settingsType>: Nothing <: Settings;
type moduleType>: Nothing <: Module{type settingsType = Grist.this.settingsType};
<stable> <accessor> def module: Grist.this.moduleType;
<stable> <accessor> def settings: Grist.this.settingsType
};
abstract class Tool extends java.lang.Object with ScalaObject { self =>
def this(): Tool = {
Tool.super.this();
()
};
type settingsType>: Nothing <: Settings;
type moduleType = Module{type settingsType = Tool.this.settingsType};
type gristType = Grist{type moduleType <: Module{type settingsType = Tool.this.settingsType}; type settingsType <: Tool.this.settingsType}
};
abstract class TestTypeMismatch extends java.lang.Object with ScalaObject { self =>
def this(): TestTypeMismatch = {
TestTypeMismatch.super.this();
()
};
type settingsType>: Nothing <: Settings;
type moduleType = Module{type settingsType = TestTypeMismatch.this.settingsType};
type toolType = Tool{type settingsType = TestTypeMismatch.this.settingsType};
type gristType = Grist{type moduleType <: Module{type settingsType = TestTypeMismatch.this.settingsType}; type settingsType <: TestTypeMismatch.this.settingsType};
def inputGrist(tool: Tool{type settingsType = TestTypeMismatch.this.settingsType}): List[TestTypeMismatch.this.gristType] = scala.this.Predef.error("bla");
private[this] val settings: TestTypeMismatch.this.settingsType = scala.this.Predef.error("bla");
<stable> <accessor> def settings: TestTypeMismatch.this.settingsType = TestTypeMismatch.this.settings;
private[this] val tools: List[TestTypeMismatch.this.toolType] = scala.this.Predef.error("bla");
<stable> <accessor> def tools: List[TestTypeMismatch.this.toolType] = TestTypeMismatch.this.tools;
scala.List.apply[(Module{type settingsType = TestTypeMismatch.this.settingsType}, TestTypeMismatch.this.settingsType)]((TestTypeMismatch.this.tools.flatMap[(grist.moduleType, grist.settingsType) forSome { val grist: Grist{type moduleType <: Module{type settingsType = TestTypeMismatch.this.settingsType}; type settingsType <: TestTypeMismatch.this.settingsType} }](((x$0: Tool{type settingsType = TestTypeMismatch.this.settingsType}) => TestTypeMismatch.this.inputGrist(x$0).map[(grist.moduleType, grist.settingsType) forSome { val grist: Grist{type moduleType <: Module{type settingsType = TestTypeMismatch.this.settingsType}; type settingsType <: TestTypeMismatch.this.settingsType} }](((grist: TestTypeMismatch.this.gristType) => new (grist.moduleType, grist.settingsType)(grist.module, grist.settings))))): _*))
}
}
Exception in thread "main" scala.tools.nsc.symtab.Types$TypeError: type mismatch;
found : (grist.moduleType(in <refinement>), grist.settingsType(in <refinement>))
required: (grist.moduleType(in <refinement>), grist.settingsType(in <refinement>)) forSome { val grist: TestTypeMismatch.this.gristType }
at scala.tools.nsc.typechecker.Contexts$Context.error(Contexts.scala:283)
at scala.tools.nsc.typechecker.Infer$Inferencer.error(Infer.scala:218)
at scala.tools.nsc.typechecker.Infer$Inferencer.typeError(Infer.scala:228)
at scala.tools.nsc.typechecker.Infer$Inferencer.typeErrorTree(Infer.scala:234)
at scala.tools.nsc.typechecker.Typers$Typer.adapt(Typers.scala:770)
at scala.tools.nsc.typechecker.Typers$Typer.typed(Typers.scala:2877)
at scala.tools.nsc.typechecker.Typers$Typer.typed(Typers.scala:2919)
at scala.tools.nsc.typechecker.Typers$Typer.transformedOrTyped(Typers.scala:2968)
at scala.tools.nsc.typechecker.Typers$Typer.typedDefDef(Typers.scala:1215)
at scala.tools.nsc.typechecker.Typers$Typer.typed1(Typers.scala:2620)
at scala.tools.nsc.typechecker.Typers$Typer.typed(Typers.scala:2875)
at scala.tools.nsc.typechecker.Typers$Typer.typed(Typers.scala:2908)
at scala.tools.nsc.typechecker.Typers$Typer.typedStat$0(Typers.scala:1431)
at scala.tools.nsc.typechecker.Typers$Typer$$anonfun$56.apply(Typers.scala:1461)
at scala.tools.nsc.typechecker.Typers$Typer$$anonfun$56.apply(Typers.scala:1461)
at scala.List$.loop$0(List.scala:244)
at scala.List$.mapConserve(List.scala:261)
at scala.tools.nsc.typechecker.Typers$Typer.typedStats(Typers.scala:1461)
at scala.tools.nsc.typechecker.Typers$Typer.typedTemplate(Typers.scala:1101)
at scala.tools.nsc.typechecker.Typers$Typer.typedClassDef(Typers.scala:988)
at scala.tools.nsc.typechecker.Typers$Typer.typed1(Typers.scala:2611)
at scala.tools.nsc.typechecker.Typers$Typer.typed(Typers.scala:2875)
at scala.tools.nsc.typechecker.Typers$Typer.typed(Typers.scala:2908)
at scala.tools.nsc.typechecker.Typers$Typer.typedStat$0(Typers.scala:1431)
at scala.tools.nsc.typechecker.Typers$Typer$$anonfun$56.apply(Typers.scala:1461)
at scala.tools.nsc.typechecker.Typers$Typer$$anonfun$56.apply(Typers.scala:1461)
at scala.List$.loop$0(List.scala:244)
at scala.List$.mapConserve(List.scala:261)
at scala.tools.nsc.typechecker.Typers$Typer.typedStats(Typers.scala:1461)
at scala.tools.nsc.typechecker.Typers$Typer.typedBlock(Typers.scala:1282)
at scala.tools.nsc.typechecker.Typers$Typer.typed1(Typers.scala:2638)
at scala.tools.nsc.typechecker.Typers$Typer.typed(Typers.scala:2875)
at scala.tools.nsc.typechecker.Typers$Typer.typed(Typers.scala:2908)
at scala.tools.nsc.transform.UnCurry$UnCurryTransformer.transformFunction(UnCurry.scala:306)
at scala.tools.nsc.transform.UnCurry$UnCurryTransformer.mainTransform(UnCurry.scala:466)
at scala.tools.nsc.transform.UnCurry$UnCurryTransformer.transform(UnCurry.scala:106)
at scala.tools.nsc.ast.Trees$Transformer$$anonfun$27.apply(Trees.scala:1309)
at scala.tools.nsc.ast.Trees$Transformer$$anonfun$27.apply(Trees.scala:1309)
at scala.List$.loop$0(List.scala:244)
at scala.List$.mapConserve(List.scala:261)
at scala.tools.nsc.ast.Trees$Transformer.transformTrees(Trees.scala:1309)
at scala.tools.nsc.transform.UnCurry$UnCurryTransformer$$anonfun$13.apply(UnCurry.scala:435)
at scala.tools.nsc.transform.UnCurry$UnCurryTransformer$$anonfun$13.apply(UnCurry.scala:433)
at scala.tools.nsc.transform.UnCurry$UnCurryTransformer.withNeedLift$0(UnCurry.scala:364)
at scala.tools.nsc.transform.UnCurry$UnCurryTransformer.mainTransform(UnCurry.scala:433)
at scala.tools.nsc.transform.UnCurry$UnCurryTransformer.transform(UnCurry.scala:106)
at scala.tools.nsc.ast.Trees$Transformer$$anonfun$24.apply(Trees.scala:1222)
at scala.tools.nsc.ast.Trees$Transformer$$anonfun$24.apply(Trees.scala:1221)
at scala.tools.nsc.ast.Trees$Transformer.atOwner(Trees.scala:1333)
at scala.tools.nsc.transform.TypingTransformers$TypingTransformer.atOwner(TypingTransformers.scala:33)
at scala.tools.nsc.transform.TypingTransformers$TypingTransformer.atOwner(TypingTransformers.scala:27)
at scala.tools.nsc.ast.Trees$Transformer.transform(Trees.scala:1220)
at scala.tools.nsc.transform.TypingTransformers$TypingTransformer.transform(TypingTransformers.scala:46)
at scala.tools.nsc.transform.UnCurry$UnCurryTransformer.scala$tools$nsc$transform$UnCurry$UnCurryTransformer$$super$transform(UnCurry.scala:394)
at scala.tools.nsc.transform.UnCurry$UnCurryTransformer$$anonfun$5.apply(UnCurry.scala:394)
at scala.tools.nsc.transform.UnCurry$UnCurryTransformer$$anonfun$5.apply(UnCurry.scala:380)
at scala.tools.nsc.transform.UnCurry$UnCurryTransformer.withNeedLift$0(UnCurry.scala:364)
at scala.tools.nsc.transform.UnCurry$UnCurryTransformer.mainTransform(UnCurry.scala:379)
at scala.tools.nsc.transform.UnCurry$UnCurryTransformer.transform(UnCurry.scala:106)
at scala.tools.nsc.ast.Trees$Transformer$$anonfun$33.apply(Trees.scala:1327)
at scala.tools.nsc.ast.Trees$Transformer$$anonfun$33.apply(Trees.scala:1325)
at scala.List$.loop$0(List.scala:244)
at scala.List$.mapConserve(List.scala:261)
at scala.List$.loop$0(List.scala:248)
at scala.List$.mapConserve(List.scala:261)
at scala.tools.nsc.ast.Trees$Transformer.transformStats(Trees.scala:1325)
at scala.tools.nsc.ast.Trees$Transformer.transform(Trees.scala:1237)
at scala.tools.nsc.transform.TypingTransformers$TypingTransformer.scala$tools$nsc$transform$TypingTransformers$TypingTransformer$$super$transform(TypingTransformers.scala:44)
at scala.tools.nsc.transform.TypingTransformers$TypingTransformer$$anonfun$0.apply(TypingTransformers.scala:44)
at scala.tools.nsc.transform.TypingTransformers$TypingTransformer$$anonfun$0.apply(TypingTransformers.scala:44)
at scala.tools.nsc.ast.Trees$Transformer.atOwner(Trees.scala:1333)
at scala.tools.nsc.transform.TypingTransformers$TypingTransformer.atOwner(TypingTransformers.scala:33)
at scala.tools.nsc.transform.TypingTransformers$TypingTransformer.atOwner(TypingTransformers.scala:27)
at scala.tools.nsc.transform.TypingTransformers$TypingTransformer.transform(TypingTransformers.scala:44)
at scala.tools.nsc.transform.UnCurry$UnCurryTransformer.scala$tools$nsc$transform$UnCurry$UnCurryTransformer$$super$transform(UnCurry.scala:394)
at scala.tools.nsc.transform.UnCurry$UnCurryTransformer$$anonfun$16.apply(UnCurry.scala:469)
at scala.tools.nsc.transform.UnCurry$UnCurryTransformer$$anonfun$16.apply(UnCurry.scala:469)
at scala.tools.nsc.transform.UnCurry$UnCurryTransformer.withInConstructorFlag$0(UnCurry.scala:372)
at scala.tools.nsc.transform.UnCurry$UnCurryTransformer.mainTransform(UnCurry.scala:469)
at scala.tools.nsc.transform.UnCurry$UnCurryTransformer.transform(UnCurry.scala:106)
at scala.tools.nsc.ast.Trees$Transformer.transformTemplate(Trees.scala:1311)
at scala.tools.nsc.ast.Trees$Transformer$$anonfun$21.apply(Trees.scala:1209)
at scala.tools.nsc.ast.Trees$Transformer$$anonfun$21.apply(Trees.scala:1209)
at scala.tools.nsc.ast.Trees$Transformer.atOwner(Trees.scala:1333)
at scala.tools.nsc.transform.TypingTransformers$TypingTransformer.atOwner(TypingTransformers.scala:33)
at scala.tools.nsc.transform.TypingTransformers$TypingTransformer.atOwner(TypingTransformers.scala:27)
at scala.tools.nsc.ast.Trees$Transformer.transform(Trees.scala:1208)
at scala.tools.nsc.transform.TypingTransformers$TypingTransformer.transform(TypingTransformers.scala:46)
at scala.tools.nsc.transform.UnCurry$UnCurryTransformer.mainTransform(UnCurry.scala:472)
at scala.tools.nsc.transform.UnCurry$UnCurryTransformer.transform(UnCurry.scala:106)
at scala.tools.nsc.ast.Trees$Transformer$$anonfun$33.apply(Trees.scala:1327)
at scala.tools.nsc.ast.Trees$Transformer$$anonfun$33.apply(Trees.scala:1325)
at scala.List$.loop$0(List.scala:244)
at scala.List$.mapConserve(List.scala:261)
at scala.tools.nsc.ast.Trees$Transformer.transformStats(Trees.scala:1325)
at scala.tools.nsc.ast.Trees$Transformer.transform(Trees.scala:1239)
at scala.tools.nsc.transform.TypingTransformers$TypingTransformer.transform(TypingTransformers.scala:46)
at scala.tools.nsc.transform.UnCurry$UnCurryTransformer.mainTransform(UnCurry.scala:472)
at scala.tools.nsc.transform.UnCurry$UnCurryTransformer.mainTransform(UnCurry.scala:466)
at scala.tools.nsc.transform.UnCurry$UnCurryTransformer.transform(UnCurry.scala:106)
at scala.tools.nsc.ast.Trees$Transformer$$anonfun$27.apply(Trees.scala:1309)
at scala.tools.nsc.ast.Trees$Transformer$$anonfun$27.apply(Trees.scala:1309)
at scala.List$.loop$0(List.scala:244)
at scala.List$.mapConserve(List.scala:261)
at scala.tools.nsc.ast.Trees$Transformer.transformTrees(Trees.scala:1309)
at scala.tools.nsc.transform.UnCurry$UnCurryTransformer$$anonfun$13.apply(UnCurry.scala:435)
at scala.tools.nsc.transform.UnCurry$UnCurryTransformer$$anonfun$13.apply(UnCurry.scala:433)
at scala.tools.nsc.transform.UnCurry$UnCurryTransformer.withNeedLift$0(UnCurry.scala:364)
at scala.tools.nsc.transform.UnCurry$UnCurryTransformer.mainTransform(UnCurry.scala:433)
at scala.tools.nsc.transform.UnCurry$UnCurryTransformer.transform(UnCurry.scala:106)
at scala.tools.nsc.ast.Trees$Transformer$$anonfun$27.apply(Trees.scala:1309)
at scala.tools.nsc.ast.Trees$Transformer$$anonfun$27.apply(Trees.scala:1309)
at scala.List$.loop$0(List.scala:244)
at scala.List$.mapConserve(List.scala:261)
at scala.tools.nsc.ast.Trees$Transformer.transformTrees(Trees.scala:1309)
at scala.tools.nsc.transform.UnCurry$UnCurryTransformer$$anonfun$13.apply(UnCurry.scala:435)
at scala.tools.nsc.transform.UnCurry$UnCurryTransformer$$anonfun$13.apply(UnCurry.scala:433)
at scala.tools.nsc.transform.UnCurry$UnCurryTransformer.withNeedLift$0(UnCurry.scala:364)
at scala.tools.nsc.transform.UnCurry$UnCurryTransformer.mainTransform(UnCurry.scala:433)
at scala.tools.nsc.transform.UnCurry$UnCurryTransformer.transform(UnCurry.scala:106)
at scala.tools.nsc.ast.Trees$Transformer$$anonfun$33$$anonfun$34.apply(Trees.scala:1326)
at scala.tools.nsc.ast.Trees$Transformer$$anonfun$33$$anonfun$34.apply(Trees.scala:1326)
at scala.tools.nsc.ast.Trees$Transformer.atOwner(Trees.scala:1333)
at scala.tools.nsc.transform.TypingTransformers$TypingTransformer.atOwner(TypingTransformers.scala:33)
at scala.tools.nsc.transform.TypingTransformers$TypingTransformer.atOwner(TypingTransformers.scala:27)
at scala.tools.nsc.ast.Trees$Transformer$$anonfun$33.apply(Trees.scala:1326)
at scala.tools.nsc.ast.Trees$Transformer$$anonfun$33.apply(Trees.scala:1325)
at scala.List$.loop$0(List.scala:244)
at scala.List$.mapConserve(List.scala:261)
at scala.List$.loop$0(List.scala:248)
at scala.List$.mapConserve(List.scala:261)
at scala.List$.loop$0(List.scala:248)
at scala.List$.mapConserve(List.scala:261)
at scala.List$.loop$0(List.scala:248)
at scala.List$.mapConserve(List.scala:261)
at scala.List$.loop$0(List.scala:248)
at scala.List$.mapConserve(List.scala:261)
at scala.List$.loop$0(List.scala:248)
at scala.List$.mapConserve(List.scala:261)
at scala.List$.loop$0(List.scala:248)
at scala.List$.mapConserve(List.scala:261)
at scala.tools.nsc.ast.Trees$Transformer.transformStats(Trees.scala:1325)
at scala.tools.nsc.ast.Trees$Transformer.transform(Trees.scala:1237)
at scala.tools.nsc.transform.TypingTransformers$TypingTransformer.scala$tools$nsc$transform$TypingTransformers$TypingTransformer$$super$transform(TypingTransformers.scala:44)
at scala.tools.nsc.transform.TypingTransformers$TypingTransformer$$anonfun$0.apply(TypingTransformers.scala:44)
at scala.tools.nsc.transform.TypingTransformers$TypingTransformer$$anonfun$0.apply(TypingTransformers.scala:44)
at scala.tools.nsc.ast.Trees$Transformer.atOwner(Trees.scala:1333)
at scala.tools.nsc.transform.TypingTransformers$TypingTransformer.atOwner(TypingTransformers.scala:33)
at scala.tools.nsc.transform.TypingTransformers$TypingTransformer.atOwner(TypingTransformers.scala:27)
at scala.tools.nsc.transform.TypingTransformers$TypingTransformer.transform(TypingTransformers.scala:44)
at scala.tools.nsc.transform.UnCurry$UnCurryTransformer.scala$tools$nsc$transform$UnCurry$UnCurryTransformer$$super$transform(UnCurry.scala:394)
at scala.tools.nsc.transform.UnCurry$UnCurryTransformer$$anonfun$16.apply(UnCurry.scala:469)
at scala.tools.nsc.transform.UnCurry$UnCurryTransformer$$anonfun$16.apply(UnCurry.scala:469)
at scala.tools.nsc.transform.UnCurry$UnCurryTransformer.withInConstructorFlag$0(UnCurry.scala:372)
at scala.tools.nsc.transform.UnCurry$UnCurryTransformer.mainTransform(UnCurry.scala:469)
at scala.tools.nsc.transform.UnCurry$UnCurryTransformer.transform(UnCurry.scala:106)
at scala.tools.nsc.ast.Trees$Transformer.transformTemplate(Trees.scala:1311)
at scala.tools.nsc.ast.Trees$Transformer$$anonfun$21.apply(Trees.scala:1209)
at scala.tools.nsc.ast.Trees$Transformer$$anonfun$21.apply(Trees.scala:1209)
at scala.tools.nsc.ast.Trees$Transformer.atOwner(Trees.scala:1333)
at scala.tools.nsc.transform.TypingTransformers$TypingTransformer.atOwner(TypingTransformers.scala:33)
at scala.tools.nsc.transform.TypingTransformers$TypingTransformer.atOwner(TypingTransformers.scala:27)
at scala.tools.nsc.ast.Trees$Transformer.transform(Trees.scala:1208)
at scala.tools.nsc.transform.TypingTransformers$TypingTransformer.transform(TypingTransformers.scala:46)
at scala.tools.nsc.transform.UnCurry$UnCurryTransformer.mainTransform(UnCurry.scala:472)
at scala.tools.nsc.transform.UnCurry$UnCurryTransformer.transform(UnCurry.scala:106)
at scala.tools.nsc.ast.Trees$Transformer$$anonfun$33.apply(Trees.scala:1327)
at scala.tools.nsc.ast.Trees$Transformer$$anonfun$33.apply(Trees.scala:1325)
at scala.List$.loop$0(List.scala:244)
at scala.List$.mapConserve(List.scala:261)
at scala.List$.loop$0(List.scala:248)
at scala.List$.mapConserve(List.scala:261)
at scala.List$.loop$0(List.scala:248)
at scala.List$.mapConserve(List.scala:261)
at scala.List$.loop$0(List.scala:248)
at scala.List$.mapConserve(List.scala:261)
at scala.List$.loop$0(List.scala:248)
at scala.List$.mapConserve(List.scala:261)
at scala.tools.nsc.ast.Trees$Transformer.transformStats(Trees.scala:1325)
at scala.tools.nsc.ast.Trees$Transformer$$anonfun$20.apply(Trees.scala:1205)
at scala.tools.nsc.ast.Trees$Transformer$$anonfun$20.apply(Trees.scala:1205)
at scala.tools.nsc.ast.Trees$Transformer.atOwner(Trees.scala:1333)
at scala.tools.nsc.transform.TypingTransformers$TypingTransformer.atOwner(TypingTransformers.scala:33)
at scala.tools.nsc.transform.TypingTransformers$TypingTransformer.atOwner(TypingTransformers.scala:27)
at scala.tools.nsc.ast.Trees$Transformer.transform(Trees.scala:1204)
at scala.tools.nsc.transform.TypingTransformers$TypingTransformer.transform(TypingTransformers.scala:46)
at scala.tools.nsc.transform.UnCurry$UnCurryTransformer.mainTransform(UnCurry.scala:472)
at scala.tools.nsc.transform.UnCurry$UnCurryTransformer.transform(UnCurry.scala:106)
at scala.tools.nsc.ast.Trees$Transformer.transformUnit(Trees.scala:1328)
at scala.tools.nsc.transform.Transform$Phase.apply(Transform.scala:30)
at scala.tools.nsc.Global$GlobalPhase.applyPhase(Global.scala:258)
at scala.tools.nsc.Global$GlobalPhase$$anonfun$2.apply(Global.scala:247)
at scala.tools.nsc.Global$GlobalPhase$$anonfun$2.apply(Global.scala:247)
at scala.Iterator$class.foreach(Iterator.scala:375)
at scala.collection.mutable.ListBuffer$$anon$0.foreach(ListBuffer.scala:255)
at scala.tools.nsc.Global$GlobalPhase.run(Global.scala:247)
at scala.tools.nsc.Global$Run.compileSources(Global.scala:542)
at scala.tools.nsc.Global$Run.compile(Global.scala:623)
at scala.tools.nsc.Main$.process(Main.scala:86)
at scala.tools.nsc.Main$.main(Main.scala:107)
at scala.tools.nsc.Main.main(Main.scala)
*/
|