| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
| |
Needs to work also if named arg refers to an abstract type,
not a parameter.
|
|
|
|
|
| |
There is a before/after difference having to do with the
order in which class declarations show up.
|
|
|
|
|
|
| |
Named parameters cause some elements to be unpickled
in a different order as they are pickled. In particular
term parameter aliases and type parameter aliases seem to be swapped.
|
| |
|
|
|
|
|
|
|
|
|
| |
After unpickling we might see an alias
X = pre.X
where pre =:= the ThisType of the enclosing class. But it
might not be `eq` to it.
|
| |
|
|
|
|
|
| |
Types#underlyingClassRef and PostTyper#normalizeTree need to be changed so they can
deal with partial named parameter lists.
|
| |
|
|
|
|
|
| |
Changes needed to support simple named type parameters.
Not yet implemented: named arguments.
|
| |
|
|\
| |
| | |
ProtoTypes#wildApprox: fix LazyRef approximation
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Before this commit, the output of `wildApprox(A)` where `A <: Sys[LazyRef(A)]` was
`? <: Sys[LazyRef(() => wildApprox(A))]`. This lead to infinite
subtyping checks.
This is fixed by always approximating a LazyRef by an unbounded
wildcard. Since we only create LazyRefs when we encounter a cycle, this
should be safe.
Fix #1103.
|
|\ \
| | |
| | | |
.gitignore: add scala-scala
|
| |/ |
|
|\ \
| |/
|/| |
Implement auto tupling of function arguments
|
| |
| |
| |
| | |
Former test no longer allowed after conforms/compatible change.
|
| |
| |
| |
| | |
As retronym noted on #897, `val` forces to early.
|
| |
| |
| |
| |
| |
| |
| | |
Was: corresponding parameter types "are compatible".
Now: corresponding parameter types "conform".
This avoids the inconsistency mentioned by @retronym in #897.
|
| | |
|
| | |
|
| |
| |
| |
| | |
Tests suggested by @retronym's comments on issue #897.
|
| |
| |
| |
| | |
Implements SIP #897.
|
|\ \
| | |
| | | |
Handle implicits with default parameters.
|
| | | |
|
| | |
| | |
| | |
| | |
| | |
| | | |
If an implicit parameter has a default, then that
default should be taken in case no implicit argument
is found.
|
|\ \ \
| | | |
| | | | |
Change nested typer creation to allow creation of derived typers
|
| | |/
| |/| |
|
|\ \ \
| | | |
| | | | |
Dotty REPL initial version
|
| | | | |
|
| | | | |
|
| | | |
| | | |
| | | |
| | | |
| | | | |
compileString is not needed and does not what one might
expect (no wrapping). So it should not be exported.
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Seems to be overkill for the current interpreter. The only thing that was needed
was a configrable linewidth. A plain setting works fine for this and is in
line with the way things are done elsewhere.
|
| | | | |
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
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.
|
| | | |
| | | |
| | | |
| | | | |
Avoids line$object... gunk.
|
| | | |
| | | |
| | | |
| | | |
| | | | |
It seems some symbols are valid from NoPhase (0). In any case, we should
not check members before typerphase.
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
When defining a class in the interpreter we had a case where
the class was accessed at phase 46 in the backend, yet the denotation
was the initial denotation in a previous run. In that case we
have to check again at the phase where the denotation is valid.
This was not done before, and hence the owner of the denbotation
did not contain the symbol because the backend phase is after flatten.
|
| | | | |
|
| | | | |
|
| | | | |
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Changes necessary to make basic REPL functionality work.
Major refactoing: Code of Interpreter is now in CompilingInterpreter.scala.
Interpreter.scala contains just the API.
|
| | | | |
|
| | | |
| | | |
| | | |
| | | |
| | | | |
Makes side-effecting initialization of interpreter
unnecessary.
|
| | | |
| | | |
| | | |
| | | |
| | | | |
Adaptation of REPL by Spoon from ca 2007. Compiles OK, but
not yet tested.
|
| | | |
| | | |
| | | |
| | | |
| | | | |
Allows to replace existing phase by sequence of new
phases.
|
| |/ /
| | |
| | |
| | |
| | |
| | |
| | | |
The interpreter needs to install a virtual directory
as output directory. This is not supported with the -d
option in ScalaSettings. The solution is to make the
output directory overridable in the GenBCode phase.
|
|\ \ \
| |/ /
|/| | |
Add checks for value classes
|
|/ /
| |
| |
| |
| | |
1. Add errors in case of incorrect parameter;
2. Improvement to error message if value class is defined as a local class;
|
|\ \
| |/
|/| |
Drop empty companion objects
|