| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
| |
This showcases a tricky interaction between overloading and overriding.
See discussion of #1240 for context.
|
|
|
|
|
|
|
|
| |
When finding two symbols in the same class that have the same signature
as seen from some prefix, issue a merge error.
This is simpler and more robust than the alternative of producing an overloaded
denotation and dealing with it afterwards.
|
| |
|
| |
|
|
|
|
|
| |
Since we decided to go with the non dotty-scanner approach these are
unnecessary to have altered, might just as well revert them.
|
| |
|
|
|
|
|
| |
No longer needed because we are going to allow dependent method types
in extractors, and the unary requirement is kind of obvious.
|
|
|
|
|
| |
Now explains in detail why an possibly found unapply or
unapplySeq is ineligible.
|
| |
|
|\ |
|
| |\
| | |
| | | |
Allow to specify per-callsite @tailrec annotation.
|
| | | |
|
| | | |
|
| | | |
|
| | |
| | |
| | |
| | | |
It was fixed by 2460f9603b0f0ed1d73dfea99edcee9ba6261d36
|
| | | |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
When an implicit argument is not found, we should in any case
assume the result type of the implicit method as the type of
the tree (after reporting an error, of course). If we don't
do that, we get implicit errors on weird positions when we try
to find an implicit argument for the same tree again. This
caused a spurious error in subtyping.scala, and also caused
an additional error at the end of EqualityStrawman1.scala.
|
|/ /
| |
| |
| |
| |
| |
| | |
This test shows how we can make equality non-universal in Scala. It also
exhibited the two bugs fixed in the previous two commits.
Also related: SI-9763.
|
|\ \
| | |
| | | |
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.
|
| |/
|/| |
|
|\ \
| |/
|/| |
Fix Tasty errors
|
| |
| |
| |
| |
| |
| |
| | |
1) Move passing test to pickling
2) Add test case for #1212 in pending
3) Disable annotations/internal in pickling tests. They lead to a stable symbol error
which is explainable (modifiers are read before symbol is created).
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Two problems were fixed:
- isJava needs to look at function symbol, not its type (references
to Java methods get normal MethodTypes not JavMethodTypes)
- we also need to handle the case where the repeated argument is
wrspped in a type ascription.
|
| |
| |
| |
| |
| |
| | |
ParamAccessor is not a pickled flag. This is not a problem for
normal parameter accessors which are pickled as PARAM fields. But setters
of parameter accessors also need to have the flag set (and Deferred reset).
|
| | |
|
| | |
|
| | |
|
|\ \
| |/
|/| |
Improvements to cyclic checking, avoidance, named parameters
|
| |
| |
| |
| |
| |
| | |
Now verifies that the named type parameters of an overriding
type or class are the same as the named type parameters of
an overridden type.
|
| | |
|
| |
| |
| |
| | |
The intent is that Repr implementations should not bind the Out parameter.
|
| | |
|
| |
| |
| |
| |
| | |
The previous formulation broke for named parameters.
Test case in flowops1.scala.
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Simplified logic and now check prefixes of TypeRefs.
Without the simplified logic we would get false cyclic errors for ski.scala.
Test case: flowops.scala
Fixes #1185.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
If the method that recurses over a different type arguments,
if this method is specialised, it would lead to method not
being tail-rec anymore.
Eg:
def foo[@specialized A, @specialized B]: Unit = foo[B, A]
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
TailRec methods remain members of enclosing class,
it means that they can refer to methods that require this.type.
It means that tailrec, unlike value classes is not allowed to widen
type of $this to it's full self type.
Fixes #1089
|
| |
| |
| |
| | |
These files were supposed to be remove, their content are now in variances.scala
|
| | |
|
|\ \
| | |
| | | |
Repl fixes and tests
|
| | | |
|
| | | |
|
| |/
|/| |
|
|\ \
| | |
| | | |
Improvements & bugs that were discovered while implementing specialization.
|
| | | |
|
| | |
| | |
| | |
| | |
| | |
| | | |
Rewriting did not go far enough, as evidenced by pos/i1174.scala
Fixes #1174
|