| Commit message (Collapse) | Author | Age | Files | Lines |
|\
| |
| | |
Special case pattern matching against abstract types with class tags
|
| |
| |
| |
| | |
Add special case when pattern matching against an abstract type that comes with a class tag
|
|/ |
|
|\
| |
| | |
Implement auto tupling of function arguments
|
| |
| |
| |
| | |
As retronym noted on #897, `val` forces to early.
|
|/
|
|
|
|
| |
Got deleted by accident. Version in run has object
renamed to prevent case clashes on MacOS. Version that
exhibits the clash is in pending/run.
|
|
|
|
|
|
|
|
|
|
| |
The underlying problem on MacOS/Windows remains:
We have a class `B` and an object `b` in the same scope.
We used to get a conflict on `B$/b$` because we created
an empty companion object for `B`. Now we get a conflict
for `B/b`, because the `b` object creates to classes:
`b.class` an `b$.class` and `b.class` clashes with `B.class`.
|
|
|
|
| |
Fix #530, #654, #681, #684, #685
|
| |
|
| |
|
|
|
|
|
|
|
|
| |
The test checks that Scala collections perform within 10x of Java collections.
That's not something we need to test for dotty. And because of the heavily
parallel execution of the tests it does not always hold. This is the second
time in a a month that this particular test failed on jenkins. I think we lost
enough cycles on it.
|
|
|
|
|
| |
We verified that before the combination abstract/concrete for `x`
also led to AMEs. So we test it here explicitly, too.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
All of our recent memory-related tests failures since
https://github.com/lampepfl/dotty/pull/1030 was merged seem to be caused
by t7880.scala. It tries to intentionally trigger an OutOfMemoryError,
however since we don't pass -Xmx to our run tests it's possible that
this we fill up the memory of our host before we reach the maximum heap
size of the JVM.
Ideally, we would specify a -Xmx for run tests (scalac uses 1 GB),
unfortunately in the version of partest we use this is tricky because we
need to set the system property "partest.java_opts". If we upgrade our
partest to the latest release, we can instead specify it by setting the
argument `javaOpts` of the constructor of `SuiteRunner`, see
https://github.com/scala/scala-partest/commit/7c4659e1f88b410109ad3c4e7f66ae7070c6e985
|
|
|
|
|
|
|
|
|
| |
Previously, `isAsSpecific(alt1, tp1, alt2, tp2)` did not handle
having `tp2` be a polymorphic non-method type like `[A]Foo[A]`.
Also update the documentation of `isAsSpecific` to account for this
change, the new documentation is based on SLS § 6.26.3 but
adapted to reflect the code.
|
| |
|
|
|
|
| |
and explain why it's different now.
|
|
|
|
|
| |
Dotty delivers an ambiguity error. The comment in the test argues why
this is OK.
|
|\
| |
| | |
Add more tests
|
| | |
|
| | |
|
|/ |
|
|\
| |
| | |
Change inference
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
|/
|
|
| |
This compiles only after the changes in this branch.
|
| |
|
|
|
|
|
| |
Makes self types explicit, if this is needed to identify
a member in a select. Fixes #789.
|
| |
|
| |
|
|
|
|
|
| |
Check that calling a side effecting function returning
a constant type does not get suppressed.
|
|
|
|
| |
to test for propagation of constant types.
|
| |
|
|
|
|
| |
Should have been added on final vals commit.
|
|\
| |
| | |
Fix #756 super accessors
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
refOfDef is used in desugaring case classes, specifically the definition of an apply method.
Here it is necessary to pass a vararg argument (x: _*) if the case class parameter is repeated.
This functionality is now added to `refOfDef`. I verified that the other uses of `refOfDef` are
compatible with this change.
Fixes #768.
|
|\ \
| | |
| | | |
Mixin: class defined abstract members take precedence over interface defined.
|
| |/ |
|
|/ |
|
|\
| |
| |
| |
| | |
dotty-staging/fix-liftedTry-capturedVars-interaction
Fix lift try and captured vars interaction
|
| |
| |
| |
| |
| | |
Checks the hypothesis that lifting a try may safely move expressions
into a ValDef owned by a new temp var.
|
| |
| |
| |
| |
| |
| | |
CapturedVars introduced an assignment that could cause a try to be
executed with a non-empty stack, even after LiftTry had already run.
We now avoid this by introducing a temporary variable.
|
|\ \
| | |
| | | |
Fixes to scala2 Mixin
|
| |/ |
|
|/ |
|
|
|
|
| |
TermRefs do not have a classSymbol.
|
|
|
|
|
| |
Phase lifts tries that would be illegal because they execute on non-empty
expression stacks.
|