| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|/ |
|
|\
| |
| | |
Fix #1845: Survive illegal this-type prefixes
|
| | |
|
| | |
|
| | |
|
|/ |
|
| |
|
|
|
|
|
|
|
|
|
| |
Typer#ensureReported's comment outlines an example where errors
could go unreported, resulting in error trees after typer without
any reported error messages. This commit makes sure that at least
one error is reported if a tree node has an error type.
Fixes #1802.
|
|\
| |
| | |
Fix #1806: Define outer accessors at the right phase
|
| | |
|
|\ \
| | |
| | | |
Fix #1784: allow to omit types for local implicit vals
|
| | |
| | |
| | |
| | | |
Needed an // error annotation
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Since we now allow to drop the explicit type of a local implicit val
it can happen that this causes a cyclic reference, namely when the
typechecking of the right-hand side involves an implicit search.
It's unpractical and fragile to avoid this. Instead we give now
a nice error message explaining the problem and how to fix it in
source code.
|
|\ \ \
| | | |
| | | | |
Fix checks related to value classes
|
| | | | |
|
| | | | |
|
| | | | |
|
| | | | |
|
|\ \ \ \
| | | | |
| | | | | |
fix #1779: support $_ and $_id in interpolated string
|
| | |/ /
| |/| | |
|
| |_|/
|/| |
| | |
| | |
| | |
| | | |
- Add tests that work to pos/neg, tests that don't work yet to pending/pos/neg.
- Also, change .gitignore to allow for a local directory.
- Also add a draft page to the docs.
|
|/ / |
|
|\ \
| | |
| | | |
Fix #1639: Changes around implicits and apply methods
|
| |/
| |
| |
| |
| |
| | |
This can lead to stackoverflow, as i1639.scala shows.
Fixes #1639.
|
| |
| |
| |
| | |
This PR also fixes #1649
|
| |
| |
| |
| |
| |
| |
| |
| | |
Need to evaluate annotation arguments in an expression context, since
classes defined in asuch arguments should not be entered into enclosing
class.
Fixes #1647
|
| |
| |
| |
| |
| |
| | |
If we want to do annotation macros right, we need to add
annotations before completing definitions. This commit achieves
that by adding a new "phase" between index and typecheck.
|
| | |
|
|/
|
|
|
|
|
| |
Some trees, which do not consume input have unassigned positions (so that
they can fit in whatever range they are integrated). It's therefore risky
to take the start or end of a parsed tree's position. This commit guards
against the case where the position of the tree does not exist.
|
|
|
|
|
|
| |
The access boundary of a def in a local class is the owner of that
class, previously it was set to the access boundary of the owner of the
class instead.
|
|
|
|
|
|
|
|
|
|
|
| |
Previously Outer2#Inner#foo failed to compile with:
```
non-private method foo refers to private value x in its type signature
```
This should compile because the boundary of `foo` is `class Outer2`
and the boundary of `x` is `object Outer2`. This commit fixes this by
also considering the linked boundary in `checkNoPrivateLeaks`.
|
|\
| |
| | |
Towards correct positions in TASTY types
|
| |
| |
| |
| |
| |
| | |
Pick a less common name for the missing identifier. Depending
on my classpath I sometimes got `x is not a package` as an additional
error for this one.
|
| | |
|
|\ \
| | |
| | | |
Fix #1708: duplicate symbols in package
|
| | | |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Here we unlink the existing type that clashes with the package to be
entered into the symbol table, issue an error and the proceed to enter
the rest of the symbols.
My concern with this approach is what happens during typechecking
if other things reference the unlinked type.
|
|\ \ \
| | | |
| | | | |
fix #1701: disqualify package name in type name resolution
|
| | | | |
|
| | | | |
|
| |/ / |
|
|\ \ \
| | | |
| | | | |
Fix #1703
|
| | | | |
|
|\| | |
| |/ /
|/| | |
Don't allow redefinition of core classes
|
| |/
| |
| |
| | |
Fixes #1688.
|
|\ \
| | |
| | | |
Fix #1653: Check "no inherit from final" earlier.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
After refactoring, one test (cannot extend final class) shadowed the others,
which wer done in a later phase.
Splitting in two to get all errors again.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
The test case is an illegal inheritance from a primitive value class,
which makes this an illegal value class. Previously, the error was
detected by refchecks, but crashes occured earlier (when generating
synthesized methods) or at the same phase block (in extension methods).
The problem is avoided by moving the test to Namer.
Review by @smarter.
|
| |/
|/|
| |
| |
| |
| | |
Have to handle also SkolemTypes there.
Fixes #1662.
|
| |
| |
| |
| | |
This issue was solved by some other fix.
|