| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
|
|
|
|
|
| |
If directly applicable alternatives exists, do not try other
alternatives. The original motivation for this change was to reduce the
number of searches for implicit views we do since some overloaded
methods like `Int#+` are used a lot, but it turns out that this also
makes more code compile (see `overload_directly_applicable.scala` for an
example), this change does not seem to match what the specification
says (it does not define a notion of "directly applicable") but it does
match the behavior of scalac, and it seems useful in general.
|
|\
| |
| | |
Fixes to lambdalift that prevent memory leaks.
|
| |
| |
| |
| | |
See t5375.scala for details.
|
| | |
|
| | |
|
| |
| |
| |
| |
| |
| |
| | |
The tests `i1059.scala` and `t3480.scala` are failing due to a bug
in pattern matcher that evaluates the `x` in `List(x: _*)` incorrectly.
Concerned issue: #1276
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Compare selected contravariant arguments as if they were covariant.
Which ones is explained in the doc comment for method `isAsSpecificValueType`
in Applications.scala.
This has the same motivation than what @paulp proposed around 2012. The solution is a bit
different from the one proposed then because it only affects top-level parameters.
|
| |
| |
| |
| | |
Unrelated to other commits but useful to get in.
|
| | |
|
|/
|
|
|
| |
This showcases a tricky interaction between overloading and overriding.
See discussion of #1240 for context.
|
|\
| |
| | |
Fix strawmans
|
| | |
|
| |
| |
| |
| |
| | |
Bring strawman-4 and strawman-5 to feature-parity.
Test also strawman-4.
|
| | |
|
| | |
|
| |
| |
| |
| |
| |
| |
| | |
New CollectionStrawMan5, executed as runttest in two different ways:
- built with scalac, test compiled by dotty in tests/run.
- built with dotty, test compiled by dotty using separate compilation.
|
|/ |
|
|\
| |
| | |
Improvements & bugs that were discovered while implementing specialization.
|
| | |
|
|\ \
| | |
| | | |
Add/collection strawman
|
| | | |
|
| | |
| | |
| | |
| | | |
Centered around views instead of iterators.
|
|\ \ \
| |_|/
|/| | |
Pickle/unpickle SuperAccessor names
|
| |/
| |
| |
| |
| | |
Needed to restore the SuperAccessor flag in separate compilation.
Fixes #1144.
|
|/
|
|
| |
Fixes #1140. Review by @DarkDimius or @smarter.
|
|\
| |
| | |
Implement @static sip.
|
| | |
|
|\ \
| | |
| | | |
Fix #1146: Fix bug of ExpandSAMs with non-apply SAM methods.
|
| |/
| |
| |
| |
| |
| | |
When expanding a SAM, ExpandSAMs always used the name `apply` for
the generated forwarder, instead of the name of the method which
is abstract in the SAM type. This commit fixes this issue.
|
|\ \
| |/
|/| |
Change lambdalift - fasttrack
|
| | |
|
| |
| |
| |
| |
| |
| |
| | |
Simplifications in order to avoid the freqent special
casing of constructors and prepare the way for
proper handling of trait constructors (which cause
problems; see pending/pos/llift.scala.
|
| | |
|
|\ \
| |/
|/| |
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.
|