aboutsummaryrefslogtreecommitdiff
path: root/compiler/src/dotty/tools/dotc/core/tasty
Commit message (Collapse)AuthorAgeFilesLines
* Rename PolyParam --> TypeParamRefMartin Odersky2017-04-062-2/+2
|
* Refactor ParamRef so that no type params are neededMartin Odersky2017-04-061-1/+1
|
* Get rid of Name parameter for LambdaType and ParamRefMartin Odersky2017-04-061-1/+1
| | | | Use an abstract type instead.
* ParamType refactoringsMartin Odersky2017-04-061-1/+1
| | | | Trying to bring PolyTypes closer to TypeLambdas
* Harmonize paramTypes and paramBoundsMartin Odersky2017-04-061-3/+3
| | | | | | MethodTypes have paramTypes whereas PolyTypes have paramBounds. We now harmonize by alling both paramInfos, and parameterizing types that will become common to both.
* Break out functionality from MethodTypeMartin Odersky2017-04-062-2/+2
| | | | | and generalize MethodParam to ParamRef, and TypeParamInfo to ParamInfo
* Encode variances in parameter namesMartin Odersky2017-04-063-12/+4
| | | | | | | | | | This leads to a slight overall simplification, harmonizes pickle format with internal representation, and makes MethodTypes and PolyTypes more similar to each other. I believe the change is useful as it is, but in particular it is a useful step for an eventual unification of MethodTypes and PolyTypes.
* checkNoPrivateLeaks: Do not allow types to refer to leaky aliasesGuillaume Martres2017-04-041-1/+3
| | | | | | | | | | | `checkNoPrivateLeaks` can force a lot of things, this lead to hard-to-reproduce issues in unpickling because we called `checkNoPrivateLeaks` on the type parameters of a class before anything in the class was indexed. We fix this by making sure that `checkNoPrivateLeaks` never transforms type symbols, only term symbols, therefore we can unpickle type parameters without forcing too many things. tests/neg/leak-type.scala illustrates the new restriction that this necessitates.
* Addresses review commentsAllan Renucci2017-04-041-1/+0
|
* Fixes @unchecked warningsAllan Renucci2017-04-031-1/+1
|
* Fix unpickling of param-dependent methodsMartin Odersky2017-03-141-2/+2
|
* Drop mixed MethodType apply methodMartin Odersky2017-03-141-1/+2
| | | | | | The dropped method takes direct parameter types but a result type expression. Since parameter types are now in general dependent as well, that method is mostly redundant.
* Fix #2067: Compute defKind at Typer, not NamerMartin Odersky2017-03-081-1/+1
| | | | | | | It's hard to predict for defKind all the desugarings that can be applied to a definition. Better to do it once the desugarings have been applied. NoInit and PureInterface are both tested only after Typer, so it's OK to delay their initialization until regular Typer.
* TreeUnpickler: do not capture Context in Annotation symbolGuillaume Martres2017-02-181-1/+3
|
* TreeUnpickler: do not capture Context in Annotation treeGuillaume Martres2017-02-181-1/+1
|
* TreeUnpickler: Avoid capturing context in lazyStatsGuillaume Martres2017-02-181-1/+1
| | | | | | | `lazyStats` creates a lazy tree using `readLater`, but the closure inside `readLater` calls `mergeTypeParamsAndAliases` which until this commit implicitly used the Context from the outer method `readTemplate`, this lead to crashes in the Language Server.
* Merge pull request #1923 from dotty-staging/f-interpolatorliu fengyun2017-02-021-3/+8
|\ | | | | avoid using macro-based StringContext.f to ease bootstrap
| * avoid using macro-based StringContext.f to ease bootstrapliu fengyun2017-02-021-3/+8
| |
* | Fix typoMartin Odersky2017-02-021-1/+1
| |
* | Refactoring to make Checking not mutate denotationsMartin Odersky2017-02-021-1/+1
| | | | | | | | | | avoidPrivateLeaks got moved from Checking to TypeAssigner, where it fits well besides the other avoid methods.
* | Fix-#1723: Avoid private leaks on completionMartin Odersky2017-02-011-5/+1
|/ | | | As #1723 demonstrates, doing this at PostTyper is too late.
* More info when unpickling failsMartin Odersky2016-11-241-2/+2
|
* TreeUnpickler: Workaround cyclic reference involving self-typeGuillaume Martres2016-11-221-2/+6
| | | | | | Special-casing like this is ugly, we should decide whether we want to avoid simplifications on all TypTrees and whether we want to do this just in unpickler or always. But I want to merge this PR first.
* Properly unpickle This trees without qualifierGuillaume Martres2016-11-221-1/+1
| | | | | Otherwise, they may end up with a qualifier, this manifested itself as a pickling difference in `tasty_tools`.
* Do not force symbols of annotations when unpicklingGuillaume Martres2016-11-221-8/+2
| | | | | | | | | | | | This lead to stale symbol errors in `tasty_tools` because the symbol forcing was bringing forward symbols from the previous run before the corresponding symbols for the current run were created. We fix this by adding Annotations#deferredSymAndTree which behaves similarly to Annotations#deferred but take a by-name symbol. We also remove TreeUnpickler#LazyAnnotationReader which was apparently never used.
* checkNoPrivateLeaks is now also done in TreeUnpicklerGuillaume Martres2016-11-221-0/+7
| | | | | This could be abstracted better but we'll end up replacing checkNoPrivateLeaks soon anyway due to https://github.com/lampepfl/dotty/issues/1723
* TreeUnpickler: Add missing case for ENUMconstGuillaume Martres2016-11-221-0/+2
|
* Move compiler and compiler tests to compiler dirFelix Mulder2016-11-2214-0/+3462