| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
| |
| |
| |
| | |
Fixes #1500. Review by @smarter.
|
|\ \
| | |
| | | |
Fix #1570: Allow inline parameters as inline args
|
| |/
| |
| |
| |
| |
| |
| | |
Inline parameters can always be passed to other
inline parameters.
Fixes #1570.
|
| | |
|
|\ \
| | |
| | | |
Fix #1576: Parameters of Java annotations should be public
|
| |/
| |
| |
| |
| | |
Parameters of annotation classes parsed by the Java parser should
have public val parameters. Otherwise they cannot be accessed as fields.
|
|\ \
| | |
| | | |
Fix #1567: Widen private constructor in value class
|
| |/
| |
| |
| |
| |
| |
| |
| | |
Private or protected constructors of value classes need to be widenened
to public in order to enable boxing anywhere.
Technically we should also do something about qualified private constructors, but since we
want to get rid of them anyway it's urgent.
|
|\ \
| | |
| | | |
Fix #1590: Eliminate wildcards when approximating a type
|
| | | |
|
| |/
| |
| |
| |
| | |
Fixes #1590. Type variables should never be instantiated to types
containing wildcards.
|
|\ \
| | |
| | | |
Fix #1544: Allow long signatures in names
|
| | |
| | |
| | |
| | |
| | | |
Fixes #1544 by making the length field use 1 or 2 bytes,
depending on the number of parameters in a signature.
|
|\ \ \
| | | |
| | | | |
Fix #1540: overloaded get and isDefined in option-less patmat
|
| | | | |
|
| | |/
| |/| |
|
|/ /
| |
| |
| | |
Fixes #1515. Review by @smarter.
|
| | |
|
| |
| |
| |
| |
| |
| | |
Let them inherit the same traits and push as much
functionality as possibly into the common superclass
GenericType.
|
| | |
|
| | |
|
|/ |
|
|\
| |
| | |
Implement inline
|
| | |
|
| | |
|
| |
| |
| |
| |
| |
| |
| | |
`inline` is now a modifier keyword. To keep disruption tolerable,
we still allow `@inline` as an annotation as well. Other uses of
`inline` are supported only under `-language:Scala2` and are rewritten
to identifiers in backticks.
|
|\ \
| |/
|/| |
[WIP] fix encoding issues
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
rename test/pos/valueclasses to pos_valueclasses
tests/pos/valueclasses generates a valueclasses.flags
file in /tests/partest-generated/pos that conflicts
with the valueClasses.flags file that
tests/neg/valueClasses.scala tries to create
|
|\ \
| | |
| | | |
Fix #1457: Three incompatbilities with scalac
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Two of these are unavoidable. I moved the tests to diabled/not-representable
and added in each case a comment to the main scala file detailing why there
is a deviation.
The last one (import-rewrite) is fixed.
|
|\ \ \
| | | |
| | | | |
Fix #1513: misaligned by name type parameter type bounds
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
This commit removes a problematic duplicated `checkBounds` call on `TypeApply`.
To verify correctness of this change on has to check that `normalizeTree` used only once [1],
and the function using `normalizeTree` already takes care of calling `checkBounds`.
[1]: https://github.com/lampepfl/dotty/blob/0e8f05d88bfef95fac59f522fd9d06792126bd11/src/dotty/tools/dotc/transform/PostTyper.scala#L205
|
| | | | |
|
| | | | |
|
|/ / / |
|
|\ \ \
| | | |
| | | | |
Fix #1335: Generate null checks for extractors
|
| | |/
| |/| |
|
|/ /
| |
| |
| |
| |
| | |
The issue fixed here was introduced by 71027f15. The added `csyms.isEmpty` condition on `case nil =>` is always true, which is clearely a bug.
t1500c still fails with covariant (or contravariant) type parameters on `::`, but this seams to be a more complicated issue involving the typer.
|
| |
| |
| |
| |
| |
| | |
type.
Test case is isApplicableSafe -Ycheck:first.
|
| | |
|
| |
| |
| |
| | |
We did not properly rename parameter references before.
|
| |
| |
| |
| |
| |
| | |
We now always widen selector type to the superclass if necessary,
no matter whether the selector type refers to a trait or a proper
class.
|
| |
| |
| |
| |
| |
| |
| | |
The special case in hasMatchingMember dealing with self-refential
members has to be generalized to deal lower and upper bounds.
Test case is t762.scala
|
| |
| |
| |
| | |
Fixes SI-7426, which caused a double definition before.
|
| | |
|
| |
| |
| |
| |
| |
| |
| | |
Fallback to .filter if a .withFilter is not available, but do this
only for .withFilter calls generated from for expressions (this is
different from what scalac does; the latter can also rewrite
.withFilter calls given in source, which is not desirable.
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Passing tests from pending/pos go in pos. Some others
go in diabled/not-testable. These are tests that require
a compilation order which we cannot yet do with our unit
testing framework. Compiling them alltogether (as is now
doen in junit) does not work either for them because they
contain a duplicate class.
|
| |
| |
| |
| |
| | |
This one failed in getters before because a (previously unchecked) assignment
was turned into a checked application. Now it passes.
|
|\ \
| |/
|/| |
Make sure arguments are evaluated in the correct typer state.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
There's a tricky interaction with caching of typed arguments in FunProto types
and backtracking using different typer states. We might end up with a typed
argument that is evaluated in one typer state and that is used in another. The
problem is that the argument typing might have inserted type variables (maybe
by adding polymorphic implicit views) that are not registered in the typer
state in which the application is finally typed. In that case we will see
an "orphan poly parameter" in pickling.
The fix is to discard argument types is their typerstate is not committed
to the one in which the application is finally typed. To apply the fix we
need to track
- for typer states: whether or not it was committed, and what its parent is.
- for function prototypes: the typer state in which an argument with cached type
was evaluated.
Test case is t1756.scala, which produced an "orphan poly parameter CI" before.
|