scala/scala — comment on commit 5cbd7d06eb8fe81bc3812ee99de05b1f4bd820fe
File:  line 0
By magarciaEPFL:

yes but ... after `ant all.clean build` trying to compile the compiler's sources under -optimize or -Yinline throws an AssertionError (in ClassfileParser but due to AddInterfaces).

Reverting the commit made the scenario above work again.

error: java.lang.AssertionError: assertion failed: trait Contexts.NoContext$ linkedModule: List()
at scala.Predef$.assert(Predef.scala:160)
at scala.tools.nsc.symtab.classfile.ClassfileParser$innerClasses$.innerSymbol$1(ClassfileParser.scala:1211)
at scala.tools.nsc.symtab.classfile.ClassfileParser$innerClasses$.classSymbol(ClassfileParser.scala:1223)
at scala.tools.nsc.symtab.classfile.ClassfileParser.classNameToSymbol(ClassfileParser.scala:489)
at scala.tools.nsc.symtab.classfile.ClassfileParser.sig2type$1(ClassfileParser.scala:757)
at scala.tools.nsc.symtab.classfile.ClassfileParser.sig2type$1(ClassfileParser.scala:789)
at scala.tools.nsc.symtab.classfile.ClassfileParser.scala$tools$nsc$symtab$classfile$ClassfileParser$$sigToType(ClassfileParser.scala:835)
at scala.tools.nsc.symtab.classfile.ClassfileParser$ConstantPool.getType(ClassfileParser.scala:337)
at scala.tools.nsc.symtab.classfile.ClassfileParser.parseMethod(ClassfileParser.scala:653)
at scala.tools.nsc.symtab.classfile.ClassfileParser$$anonfun$1$$anonfun$apply$mcV$sp$2.apply$mcVI$sp(ClassfileParser.scala:572)
at scala.collection.immutable.Range.foreach$mVc$sp(Range.scala:131)
at scala.tools.nsc.symtab.classfile.ClassfileParser$$anonfun$1.apply$mcV$sp(ClassfileParser.scala:572)
at scala.tools.nsc.symtab.classfile.ClassfileParser.parseClass(ClassfileParser.scala:586)
at scala.tools.nsc.symtab.classfile.ClassfileParser.parse(ClassfileParser.scala:100)
at scala.tools.nsc.symtab.SymbolLoaders$ClassfileLoader.doComplete(SymbolLoaders.scala:234)
at scala.tools.nsc.symtab.SymbolLoaders$SymbolLoader.complete(SymbolLoaders.scala:136)
at scala.reflect.internal.Symbols$Symbol.info(Symbols.scala:982)
at scala.tools.nsc.transform.AddInterfaces$$anonfun$implClass$1$$anonfun$apply$1.apply(AddInterfaces.scala:88)
at scala.tools.nsc.transform.AddInterfaces$$anonfun$implClass$1$$anonfun$apply$1.apply(AddInterfaces.scala:84)
at scala.reflect.internal.SymbolTable.atPhase(SymbolTable.scala:115)
at scala.tools.nsc.transform.AddInterfaces$$anonfun$implClass$1.apply(AddInterfaces.scala:84)
at scala.tools.nsc.transform.AddInterfaces$$anonfun$implClass$1.apply(AddInterfaces.scala:84)
at scala.collection.MapLike$class.getOrElse(MapLike.scala:122)
at scala.collection.AbstractMap.getOrElse(Map.scala:57)
at scala.tools.nsc.transform.AddInterfaces.implClass(AddInterfaces.scala:83)
at scala.tools.nsc.transform.AddInterfaces.transformMixinInfo(AddInterfaces.scala:201)
at scala.tools.nsc.transform.Erasure.transformInfo(Erasure.scala:380)
at scala.tools.nsc.transform.InfoTransform$Phase$$anon$1.transform(InfoTransform.scala:38)
at scala.reflect.internal.Symbols$Symbol.rawInfo(Symbols.scala:1060)
at scala.reflect.internal.Symbols$Symbol.info(Symbols.scala:992)
at scala.reflect.internal.Types$TypeRef.baseTypeSeqImpl(Types.scala:2101)
at scala.reflect.internal.Types$class.defineBaseTypeSeqOfTypeRef(Types.scala:2219)
at scala.reflect.internal.SymbolTable.defineBaseTypeSeqOfTypeRef(SymbolTable.scala:12)
at scala.reflect.internal.Types$TypeRef.baseTypeSeq(Types.scala:2108)
at scala.reflect.internal.BaseTypeSeqs$$anonfun$compoundBaseTypeSeq$1.apply(BaseTypeSeqs.scala:196)
at scala.reflect.internal.BaseTypeSeqs$$anonfun$compoundBaseTypeSeq$1.apply(BaseTypeSeqs.scala:194)
at scala.collection.LinearSeqOptimized$class.foreach(LinearSeqOptimized.scala:59)
at scala.collection.immutable.List.foreach(List.scala:76)
at scala.reflect.internal.BaseTypeSeqs$class.compoundBaseTypeSeq(BaseTypeSeqs.scala:194)
at scala.reflect.internal.SymbolTable.compoundBaseTypeSeq(SymbolTable.scala:12)
at scala.reflect.internal.Types$class.defineBaseTypeSeqOfCompoundType(Types.scala:1455)
at scala.reflect.internal.SymbolTable.defineBaseTypeSeqOfCompoundType(SymbolTable.scala:12)
at scala.reflect.internal.Types$CompoundType.baseTypeSeq(Types.scala:1355)
at scala.reflect.internal.Types$Type.baseTypeIndex(Types.scala:851)
at scala.reflect.internal.Symbols$TypeSymbol.isNonBottomSubClass(Symbols.scala:2351)
at scala.reflect.internal.Symbols$Symbol.isSubClass(Symbols.scala:1323)
at scala.tools.nsc.transform.Erasure$Eraser.adaptMember(Erasure.scala:575)
at scala.tools.nsc.transform.Erasure$Eraser.typed1(Erasure.scala:599)
at scala.tools.nsc.typechecker.Typers$Typer.typed(Typers.scala:4459)
at scala.tools.nsc.typechecker.Typers$Typer$$anonfun$typedApply$1$1.apply(Typers.scala:3534)
at scala.tools.nsc.typechecker.Typers$Typer$$anonfun$typedApply$1$1.apply(Typers.scala:3534)
at scala.tools.nsc.typechecker.Typers$Typer.silent(Typers.scala:682)
at scala.tools.nsc.typechecker.Typers$Typer.typedApply$1(Typers.scala:3534)
at scala.tools.nsc.typechecker.Typers$Typer.typed1(Typers.scala:4297)
at scala.tools.nsc.transform.Erasure$Eraser.typed1(Erasure.scala:599)
at scala.tools.nsc.typechecker.Typers$Typer.typed(Typers.scala:4459)
at scala.tools.nsc.typechecker.Typers$Typer.transformedOrTyped(Typers.scala:4624)
at scala.tools.nsc.typechecker.Typers$Typer.typedDefDef(Typers.scala:1775)
at scala.tools.nsc.typechecker.Typers$Typer.typed1(Typers.scala:4133)
at scala.tools.nsc.transform.Erasure$Eraser.typed1(Erasure.scala:599)
at scala.tools.nsc.typechecker.Typers$Typer.typed(Typers.scala:4459)
at scala.tools.nsc.typechecker.Typers$Typer.typedStat$1(Typers.scala:2120)
at scala.tools.nsc.typechecker.Typers$Typer$$anonfun$27$$anonfun$28.apply(Typers.scala:2213)
at scala.tools.nsc.typechecker.Typers$Typer$$anonfun$27$$anonfun$28.apply(Typers.scala:2213)
at scala.collection.immutable.List.loop$1(List.scala:150)
at scala.collection.immutable.List.mapConserve(List.scala:166)
at scala.tools.nsc.typechecker.Typers$Typer$$anonfun$27.apply(Typers.scala:2213)
at scala.tools.nsc.typechecker.Typers$Typer$$anonfun$27.apply(Typers.scala:2212)
at scala.tools.nsc.typechecker.Typers$Typer.withSavedContext(Typers.scala:495)
at scala.tools.nsc.typechecker.Typers$Typer.typedStats(Typers.scala:2212)
at scala.tools.nsc.typechecker.Typers$Typer.typedTemplate(Typers.scala:1534)
at scala.tools.nsc.typechecker.Typers$Typer$$anonfun$12.apply(Typers.scala:1408)
at scala.tools.nsc.typechecker.Typers$Typer$$anonfun$12.apply(Typers.scala:1408)
at scala.tools.nsc.typechecker.Typers$Typer.typerReportAnyContextErrors(Typers.scala:486)
at scala.tools.nsc.typechecker.Typers$Typer.typedClassDef(Typers.scala:1407)
at scala.tools.nsc.typechecker.Typers$Typer.typed1(Typers.scala:4124)
at scala.tools.nsc.transform.Erasure$Eraser.typed1(Erasure.scala:599)
at scala.tools.nsc.typechecker.Typers$Typer.typed(Typers.scala:4459)
at scala.tools.nsc.typechecker.Typers$Typer.typedStat$1(Typers.scala:2120)
at scala.tools.nsc.typechecker.Typers$Typer$$anonfun$27$$anonfun$28.apply(Typers.scala:2213)
at scala.tools.nsc.typechecker.Typers$Typer$$anonfun$27$$anonfun$28.apply(Typers.scala:2213)
at scala.collection.immutable.List.loop$1(List.scala:150)
at scala.collection.immutable.List.mapConserve(List.scala:166)
at scala.tools.nsc.typechecker.Typers$Typer$$anonfun$27.apply(Typers.scala:2213)
at scala.tools.nsc.typechecker.Typers$Typer$$anonfun$27.apply(Typers.scala:2212)
at scala.tools.nsc.typechecker.Typers$Typer.withSavedContext(Typers.scala:495)
at scala.tools.nsc.typechecker.Typers$Typer.typedStats(Typers.scala:2212)
at scala.tools.nsc.typechecker.Typers$Typer.typedBlock(Typers.scala:1927)
at scala.tools.nsc.typechecker.Typers$Typer$$anonfun$typed1$3.apply(Typers.scala:4165)
at scala.tools.nsc.typechecker.Typers$Typer$$anonfun$typed1$3.apply(Typers.scala:4165)
at scala.tools.nsc.typechecker.Typers$Typer.typerWithLocalContext(Typers.scala:478)
at scala.tools.nsc.typechecker.Typers$Typer.typed1(Typers.scala:4164)
at scala.tools.nsc.transform.Erasure$Eraser.typed1(Erasure.scala:599)
at scala.tools.nsc.typechecker.Typers$Typer.typed(Typers.scala:4459)
at scala.tools.nsc.typechecker.Typers$Typer.typedBlock(Typers.scala:1928)
at scala.tools.nsc.typechecker.Typers$Typer$$anonfun$typed1$3.apply(Typers.scala:4165)
at scala.tools.nsc.typechecker.Typers$Typer$$anonfun$typed1$3.apply(Typers.scala:4165)
at scala.tools.nsc.typechecker.Typers$Typer.typerWithLocalContext(Typers.scala:478)
at scala.tools.nsc.typechecker.Typers$Typer.typed1(Typers.scala:4164)
at scala.tools.nsc.transform.Erasure$Eraser.typed1(Erasure.scala:599)
at scala.tools.nsc.typechecker.Typers$Typer.typed(Typers.scala:4459)
at scala.tools.nsc.typechecker.Typers$Typer$$anonfun$29.apply(Typers.scala:2224)
at scala.tools.nsc.typechecker.Typers$Typer$$anonfun$29.apply(Typers.scala:2224)
at scala.tools.nsc.typechecker.Typers$Typer.withCondConstrTyper(Typers.scala:469)
at scala.tools.nsc.typechecker.Typers$Typer.typedArg(Typers.scala:2224)
at scala.tools.nsc.typechecker.Typers$Typer.loop$1(Typers.scala:2243)
at scala.tools.nsc.typechecker.Typers$Typer.typedArgs(Typers.scala:2248)
at scala.tools.nsc.typechecker.Typers$Typer.doTypedApply(Typers.scala:2480)
at scala.tools.nsc.typechecker.Typers$Typer.typedApply$1(Typers.scala:3553)
at scala.tools.nsc.typechecker.Typers$Typer.typed1(Typers.scala:4297)
at scala.tools.nsc.transform.Erasure$Eraser.typed1(Erasure.scala:599)
at scala.tools.nsc.typechecker.Typers$Typer.typed(Typers.scala:4459)
at scala.tools.nsc.typechecker.Typers$Typer.transformedOrTyped(Typers.scala:4624)
at scala.tools.nsc.typechecker.Typers$Typer.typedValDef(Typers.scala:1587)
at scala.tools.nsc.typechecker.Typers$Typer.typed1(Typers.scala:4130)
at scala.tools.nsc.transform.Erasure$Eraser.typed1(Erasure.scala:599)
at scala.tools.nsc.typechecker.Typers$Typer.typed(Typers.scala:4459)
at scala.tools.nsc.typechecker.Typers$Typer.typedStat$1(Typers.scala:2120)
at scala.tools.nsc.typechecker.Typers$Typer$$anonfun$27$$anonfun$28.apply(Typers.scala:2213)
at scala.tools.nsc.typechecker.Typers$Typer$$anonfun$27$$anonfun$28.apply(Typers.scala:2213)
at scala.collection.immutable.List.loop$1(List.scala:150)
at scala.collection.immutable.List.mapConserve(List.scala:166)
at scala.tools.nsc.typechecker.Typers$Typer$$anonfun$27.apply(Typers.scala:2213)
at scala.tools.nsc.typechecker.Typers$Typer$$anonfun$27.apply(Typers.scala:2212)
at scala.tools.nsc.typechecker.Typers$Typer.withSavedContext(Typers.scala:495)
at scala.tools.nsc.typechecker.Typers$Typer.typedStats(Typers.scala:2212)
at scala.tools.nsc.typechecker.Typers$Typer.typedBlock(Typers.scala:1927)
at scala.tools.nsc.typechecker.Typers$Typer$$anonfun$typed1$3.apply(Typers.scala:4165)
at scala.tools.nsc.typechecker.Typers$Typer$$anonfun$typed1$3.apply(Typers.scala:4165)
at scala.tools.nsc.typechecker.Typers$Typer.typerWithLocalContext(Typers.scala:478)
at scala.tools.nsc.typechecker.Typers$Typer.typed1(Typers.scala:4164)
at scala.tools.nsc.transform.Erasure$Eraser.typed1(Erasure.scala:599)
at scala.tools.nsc.typechecker.Typers$Typer.typed(Typers.scala:4459)
at scala.tools.nsc.typechecker.Typers$Typer.typed(Typers.scala:4540)
at scala.tools.nsc.typechecker.Typers$Typer.typedIf$1(Typers.scala:3262)
at scala.tools.nsc.typechecker.Typers$Typer.typed1(Typers.scala:4201)
at scala.tools.nsc.transform.Erasure$Eraser.typed1(Erasure.scala:599)
at scala.tools.nsc.typechecker.Typers$Typer.typed(Typers.scala:4459)
at scala.tools.nsc.typechecker.Typers$Typer.transformedOrTyped(Typers.scala:4624)
at scala.tools.nsc.typechecker.Typers$Typer.typedDefDef(Typers.scala:1775)
at scala.tools.nsc.typechecker.Typers$Typer.typed1(Typers.scala:4133)
at scala.tools.nsc.transform.Erasure$Eraser.typed1(Erasure.scala:599)
at scala.tools.nsc.typechecker.Typers$Typer.typed(Typers.scala:4459)
at scala.tools.nsc.typechecker.Typers$Typer.typedStat$1(Typers.scala:2120)
at scala.tools.nsc.typechecker.Typers$Typer$$anonfun$27$$anonfun$28.apply(Typers.scala:2213)
at scala.tools.nsc.typechecker.Typers$Typer$$anonfun$27$$anonfun$28.apply(Typers.scala:2213)
at scala.collection.immutable.List.loop$1(List.scala:150)
at scala.collection.immutable.List.mapConserve(List.scala:166)
at scala.tools.nsc.typechecker.Typers$Typer$$anonfun$27.apply(Typers.scala:2213)
at scala.tools.nsc.typechecker.Typers$Typer$$anonfun$27.apply(Typers.scala:2212)
at scala.tools.nsc.typechecker.Typers$Typer.withSavedContext(Typers.scala:495)
at scala.tools.nsc.typechecker.Typers$Typer.typedStats(Typers.scala:2212)
at scala.tools.nsc.typechecker.Typers$Typer.typedTemplate(Typers.scala:1534)
at scala.tools.nsc.typechecker.Typers$Typer$$anonfun$12.apply(Typers.scala:1408)
at scala.tools.nsc.typechecker.Typers$Typer$$anonfun$12.apply(Typers.scala:1408)
at scala.tools.nsc.typechecker.Typers$Typer.typerReportAnyContextErrors(Typers.scala:486)
at scala.tools.nsc.typechecker.Typers$Typer.typedClassDef(Typers.scala:1407)
at scala.tools.nsc.typechecker.Typers$Typer.typed1(Typers.scala:4124)
at scala.tools.nsc.transform.Erasure$Eraser.typed1(Erasure.scala:599)
at scala.tools.nsc.typechecker.Typers$Typer.typed(Typers.scala:4459)
at scala.tools.nsc.typechecker.Typers$Typer.typedStat$1(Typers.scala:2120)
at scala.tools.nsc.typechecker.Typers$Typer$$anonfun$27$$anonfun$28.apply(Typers.scala:2213)
at scala.tools.nsc.typechecker.Typers$Typer$$anonfun$27$$anonfun$28.apply(Typers.scala:2213)
at scala.collection.immutable.List.loop$1(List.scala:150)
at scala.collection.immutable.List.mapConserve(List.scala:166)
at scala.tools.nsc.typechecker.Typers$Typer$$anonfun$27.apply(Typers.scala:2213)
at scala.tools.nsc.typechecker.Typers$Typer$$anonfun$27.apply(Typers.scala:2212)
at scala.tools.nsc.typechecker.Typers$Typer.withSavedContext(Typers.scala:495)
at scala.tools.nsc.typechecker.Typers$Typer.typedStats(Typers.scala:2212)
at scala.tools.nsc.typechecker.Typers$Typer.typed1(Typers.scala:4120)
at scala.tools.nsc.transform.Erasure$Eraser.typed1(Erasure.scala:599)
at scala.tools.nsc.typechecker.Typers$Typer.typed(Typers.scala:4459)
at scala.tools.nsc.typechecker.Typers$Typer.typed(Typers.scala:4524)
at scala.tools.nsc.transform.Erasure$ErasureTransformer$$anonfun$transform$1.apply(Erasure.scala:1068)
at scala.tools.nsc.transform.Erasure$ErasureTransformer$$anonfun$transform$1.apply(Erasure.scala:1064)
at scala.reflect.internal.SymbolTable.atPhase(SymbolTable.scala:115)
at scala.tools.nsc.transform.Erasure$ErasureTransformer.transform(Erasure.scala:1064)
at scala.tools.nsc.ast.Trees$Transformer.transformUnit(Trees.scala:223)
at scala.tools.nsc.transform.Transform$Phase.apply(Transform.scala:30)
at scala.tools.nsc.Global$GlobalPhase.applyPhase(Global.scala:386)
at scala.tools.nsc.Global$GlobalPhase$$anonfun$run$1.apply(Global.scala:352)
at scala.tools.nsc.Global$GlobalPhase$$anonfun$run$1.apply(Global.scala:349)
at scala.collection.Iterator$class.foreach(Iterator.scala:687)
at scala.collection.AbstractIterator.foreach(Iterator.scala:1112)
at scala.tools.nsc.Global$GlobalPhase.run(Global.scala:349)
at scala.tools.nsc.Global$Run.compileUnits(Global.scala:1136)
at scala.tools.nsc.Global$Run.compileSources(Global.scala:1111)
at scala.tools.nsc.Global$Run.compile(Global.scala:1233)
at scala.tools.nsc.Driver.doCompile(Driver.scala:31)
at scala.tools.nsc.Main$.doCompile(Main.scala:81)
at scala.tools.nsc.Driver.process(Driver.scala:52)
at scala.tools.nsc.Driver.main(Driver.scala:65)
at scala.tools.nsc.Main.main(Main.scala)