| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|\
| |
| | |
Run tests for partest
|
| | |
|
| | |
|
| | |
|
|/ |
|
|\
| |
| | |
Fix unset tree position
|
|/
|
|
| |
Debugs some cases where `tree.pos` wasn't initialised properly.
|
|\
| |
| | |
Re-enable tests
|
|/
|
|
|
| |
Most tests were still commented out in last merge. Also,
an outdated comment in TreeTypeMap was removed.
|
|\
| |
| | |
Fix isSourceMethod
|
| | |
|
|/ |
|
|\
| |
| | |
Various fixes to LazyVals.
|
| | |
|
| | |
|
| |
| |
| |
| | |
Otherwise Constructors is not able to see them and they get lost.
|
| | |
|
| |
| |
| |
| | |
Previous scheme did not work after erasure.
|
|\ \
| | |
| | | |
dotc: Get versions of all dependencies from Build.scala
|
| | | |
|
| | | |
|
|\ \ \
| | | |
| | | | |
Fix #547: Vararg overload
|
| | | |
| | | |
| | | |
| | | |
| | | | |
When comparing to types in isAsSpecific, onvert repeated parameters to their underlying type
only if both types are vararg methods. This mimics scalac behavior.
|
|\ \ \ \
| |_|_|/
|/| | | |
Make dotty compile backend.
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Up to now a NotDefinedHere exception was thrown if a denotation
was not defined at the current phase, but was defined elsewhere
in the current run. However, if the denotation is a SingleDenotation
or MultiDenotation it is possible that the particular Single- or Multi-Denotation
was not computed at the current phase, but the underlying SymDenotation
is valid. With the changes in this commit, we reaload the denotation as
a second try.
|
| | | |
| | | |
| | | |
| | | | |
Includes fixes to lambas, and no type projections in signatures.
|
| | | | |
|
| | | | |
|
| | | | |
|
| | | | |
|
| | | |
| | | |
| | | |
| | | | |
Implicit vals need explicit type, anonymous classes are widened.
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
and in compiled source.
[error] Test dotc.tests.dotty failed: java.lang.AssertionError: assertion failed: data race? overwriting symbol of dotty.DottyPredef$ / TypeRef(ThisType(TypeRef(NoPrefix,dotty)),DottyPredef$) / class dotty.tools.dotc.core.Types$CachedTypeRef / 9007 / 9748, took 1.276 sec
[error] at scala.Predef$.assert(Predef.scala:165)
[error] at dotty.tools.dotc.core.Types$NamedType.checkSymAssign(Types.scala:1263)
[error] at dotty.tools.dotc.core.Types$NamedType.setDenot(Types.scala:1293)
[error] at dotty.tools.dotc.core.Types$NamedType.withDenot(Types.scala:1286)
[error] at dotty.tools.dotc.core.Types$TypeRef$.apply(Types.scala:1669)
[error] at dotty.tools.dotc.core.Types$Type.select(Types.scala:819)
[error] at dotty.tools.dotc.typer.Namer.moduleValSig(Namer.scala:602)
[error] at dotty.tools.dotc.typer.Namer$Completer.typeSig(Namer.scala:465)
[error] at dotty.tools.dotc.typer.Namer$Completer.completeInCreationContext(Namer.scala:499)
[error] at dotty.tools.dotc.typer.Namer$Completer.complete(Namer.scala:495)
[error] at dotty.tools.dotc.core.SymDenotations$SymDenotation.completeFrom(SymDenotations.scala:161)
[error] at dotty.tools.dotc.core.SymDenotations$SymDenotation.info(SymDenotations.scala:143)
[error] at dotty.tools.dotc.core.SymDenotations$SymDenotation.ensureCompleted(SymDenotations.scala:253)
[error] at dotty.tools.dotc.core.SymDenotations$SymDenotation.flags(SymDenotations.scala:97)
[error] at dotty.tools.dotc.core.SymDenotations$SymDenotation.is(SymDenotations.scala:119)
[error] at dotty.tools.dotc.core.SymDenotations$SymDenotation.isStable(SymDenotations.scala:464)
[error] at dotty.tools.dotc.core.Types$Type.widenIfUnstable(Types.scala:691)
[error] at dotty.tools.dotc.core.Types$Type$$anonfun$member$1.apply(Types.scala:394)
[error] at dotty.tools.dotc.core.Types$Type$$anonfun$member$1.apply(Types.scala:394)
[error] at dotty.tools.dotc.util.Stats$.track(Stats.scala:35)
[error] at dotty.tools.dotc.core.Types$Type.member(Types.scala:393)
[error] at dotty.tools.dotc.typer.Typer$$anonfun$typedIdent$1.wildImportRef$1(Typer.scala:192)
[error] at dotty.tools.dotc.typer.Typer$$anonfun$typedIdent$1.findRef$1(Typer.scala:240)
[error] at dotty.tools.dotc.typer.Typer$$anonfun$typedIdent$1.apply(Typer.scala:263)
[error] at dotty.tools.dotc.typer.Typer$$anonfun$typedIdent$1.apply(Typer.scala:79)
[error] at dotty.tools.dotc.util.Stats$.track(Stats.scala:35)
[error] at dotty.tools.dotc.typer.Typer.typedIdent(Typer.scala:79)
[error] at dotty.tools.dotc.typer.Typer.typedNamed$1(Typer.scala:1017)
[error] at dotty.tools.dotc.typer.Typer.typedUnadapted(Typer.scala:1076)
[error] at dotty.tools.dotc.typer.Typer$$anonfun$typed$2.apply(Typer.scala:1088)
[error] at dotty.tools.dotc.typer.Typer$$anonfun$typed$2.apply(Typer.scala:1086)
[error] at dotty.tools.dotc.reporting.Reporting$class.traceIndented(Reporter.scala:147)
[error] at dotty.tools.dotc.core.Contexts$Context.traceIndented(Contexts.scala:51)
[error] at dotty.tools.dotc.typer.Typer.typed(Typer.scala:1086)
[error] at dotty.tools.dotc.typer.Typer.typedExpr(Typer.scala:1125)
[error] at dotty.tools.dotc.typer.Typer$$anonfun$typedPackageDef$1.apply(Typer.scala:961)
[error] at dotty.tools.dotc.typer.Typer$$anonfun$typedPackageDef$1.apply(Typer.scala:960)
[error] at dotty.tools.dotc.util.Stats$.track(Stats.scala:35)
[error] at dotty.tools.dotc.typer.Typer.typedPackageDef(Typer.scala:960)
[error] at dotty.tools.dotc.typer.Typer.typedUnnamed$1(Typer.scala:1066)
[error] at dotty.tools.dotc.typer.Typer.typedUnadapted(Typer.scala:1078)
[error] at dotty.tools.dotc.typer.Typer$$anonfun$typed$2.apply(Typer.scala:1088)
[error] at dotty.tools.dotc.typer.Typer$$anonfun$typed$2.apply(Typer.scala:1086)
[error] at dotty.tools.dotc.reporting.Reporting$class.traceIndented(Reporter.scala:147)
[error] at dotty.tools.dotc.core.Contexts$Context.traceIndented(Contexts.scala:51)
[error] at dotty.tools.dotc.typer.Typer.typed(Typer.scala:1086)
[error] at dotty.tools.dotc.typer.Typer.typedExpr(Typer.scala:1125)
[error] at dotty.tools.dotc.typer.FrontEnd$$anonfun$typeCheck$1.apply$mcV$sp(FrontEnd.scala:41)
[error] at dotty.tools.dotc.typer.FrontEnd.monitor(FrontEnd.scala:18)
[error] at dotty.tools.dotc.typer.FrontEnd.typeCheck(FrontEnd.scala:39)
[error] at dotty.tools.dotc.typer.FrontEnd$$anonfun$runOn$3.apply(FrontEnd.scala:52)
[error] at dotty.tools.dotc.typer.FrontEnd$$anonfun$runOn$3.apply(FrontEnd.scala:52)
[error] at scala.collection.immutable.List.foreach(List.scala:381)
[error] at dotty.tools.dotc.typer.FrontEnd.runOn(FrontEnd.scala:52)
[error] at dotty.tools.dotc.Run$$anonfun$compileSources$1$$anonfun$apply$mcV$sp$3.apply(Run.scala:55)
[error] at dotty.tools.dotc.Run$$anonfun$compileSources$1$$anonfun$apply$mcV$sp$3.apply(Run.scala:52)
[error] at scala.collection.IndexedSeqOptimized$class.foreach(IndexedSeqOptimized.scala:33)
[error] at scala.collection.mutable.ArrayOps$ofRef.foreach(ArrayOps.scala:186)
[error] at dotty.tools.dotc.Run$$anonfun$compileSources$1.apply$mcV$sp(Run.scala:52)
[error] at dotty.tools.dotc.Run$$anonfun$compileSources$1.apply(Run.scala:47)
[error] at dotty.tools.dotc.Run$$anonfun$compileSources$1.apply(Run.scala:47)
[error] at dotty.tools.dotc.util.Stats$.monitorHeartBeat(Stats.scala:68)
[error] at dotty.tools.dotc.Run.compileSources(Run.scala:46)
[error] at dotty.tools.dotc.Run.compile(Run.scala:33)
[error] at dotty.tools.dotc.Driver.doCompile(Driver.scala:20)
[error] at dotty.tools.dotc.Bench$.dotty$tools$dotc$Bench$$super$doCompile(Bench.scala:38)
[error] at dotty.tools.dotc.Bench$$anonfun$doCompile$1.apply(Bench.scala:38)
[error] at dotty.tools.dotc.Bench$$anonfun$doCompile$1.apply(Bench.scala:36)
[error] at dotty.tools.dotc.Bench$$anonfun$ntimes$1.apply(Bench.scala:30)
[error] at dotty.tools.dotc.Bench$$anonfun$ntimes$1.apply(Bench.scala:30)
[error] at scala.collection.TraversableOnce$$anonfun$foldLeft$1.apply(TraversableOnce.scala:142)
[error] at scala.collection.TraversableOnce$$anonfun$foldLeft$1.apply(TraversableOnce.scala:142)
[error] at scala.collection.immutable.Range.foreach(Range.scala:166)
[error] at scala.collection.TraversableOnce$class.foldLeft(TraversableOnce.scala:142)
[error] at scala.collection.AbstractTraversable.foldLeft(Traversable.scala:104)
[error] at scala.collection.TraversableOnce$class.$div$colon(TraversableOnce.scala:136)
[error] at scala.collection.AbstractTraversable.$div$colon(Traversable.scala:104)
[error] at dotty.tools.dotc.Bench$.ntimes(Bench.scala:30)
[error] at dotty.tools.dotc.Bench$.doCompile(Bench.scala:36)
[error] at dotty.tools.dotc.Driver.process(Driver.scala:31)
[error] at dotty.tools.dotc.Bench$.dotty$tools$dotc$Bench$$super$process(Bench.scala:53)
[error] at dotty.tools.dotc.Bench$$anonfun$process$1.apply(Bench.scala:53)
[error] at dotty.tools.dotc.Bench$$anonfun$process$1.apply(Bench.scala:53)
[error] at dotty.tools.dotc.Bench$$anonfun$ntimes$1.apply(Bench.scala:30)
[error] at dotty.tools.dotc.Bench$$anonfun$ntimes$1.apply(Bench.scala:30)
[error] at scala.collection.TraversableOnce$$anonfun$foldLeft$1.apply(TraversableOnce.scala:142)
[error] at scala.collection.TraversableOnce$$anonfun$foldLeft$1.apply(TraversableOnce.scala:142)
[error] at scala.collection.immutable.Range.foreach(Range.scala:166)
[error] at scala.collection.TraversableOnce$class.foldLeft(TraversableOnce.scala:142)
[error] at scala.collection.AbstractTraversable.foldLeft(Traversable.scala:104)
[error] at scala.collection.TraversableOnce$class.$div$colon(TraversableOnce.scala:136)
[error] at scala.collection.AbstractTraversable.$div$colon(Traversable.scala:104)
[error] at dotty.tools.dotc.Bench$.ntimes(Bench.scala:30)
[error] at dotty.tools.dotc.Bench$.process(Bench.scala:53)
[error] at test.CompilerTest.compileArgs(CompilerTest.scala:159)
[error] at test.CompilerTest.compileDir(CompilerTest.scala:104)
[error] at dotc.tests.dotty(tests.scala:141)
|
| | | | |
|
| | | | |
|
| | | | |
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
We used to require that the result type of an extractor `get` is a product,
or else the type of the `get` itself would be taken as the result type of the
unapply. This is now relaxed so that we automatically select with _1, _2, ...
as soon as there are multiple argument patterns, and (1) the result type is not
a Seq, (2) the number of consecutive product conselectors matches the number
of arguments.
|
| | | |
| | | |
| | | |
| | | | |
See discussion in #544
|
| | | | |
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Symbols never change betwene terms and types. So we do not need to the current
denotation to decide what they are. Less forcing -> less potential for cyclic
references.
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
It seems wasteful to load the member classes even of classes that are not currently compiled.
It also makes us vulnerable to any misinterpretation of Java file formats. In th particular
case of #536, we parsed a class an anonymous Collection$1 which was referring to the type
parameter of its enclosing class, but was not diagnosed as an inner class of the enclosing class.
|
|\ \ \ \
| |_|/ /
|/| | | |
Fix #540 - unbounded array test for wildcard array arguments
|
| | | | |
|
| | | | |
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Arrays with wildcard arguments such as Array[_ <: Foo] where Foo is a
universal trait are now diagnosed as unbounded generic arrays and are
erased to Object.
|
|\ \ \ \
| |_|/ /
|/| | | |
Drop the requirement that extractors with `get` must implement Product
|
| | | | |
|
| |/ /
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
We used to require that the result type of an extractor `get` is a product,
or else the type of the `get` itself would be taken as the result type of the
unapply. This is now relaxed so that we automatically select with _1, _2, ...
as soon as there are multiple argument patterns, and (1) the result type is not
a Seq, (2) the number of consecutive product conselectors matches the number
of arguments.
|
|\ \ \
| |/ /
|/| | |
Allow to compile root import classes without special option.
|
|/ /
| |
| |
| |
| | |
Can now compile Predef/DottyPredef without -Yno-import option.
Achieved by making some parts of imports more lazy.
|