| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
Now that we have no longer termrefs with fixed syms, we need to create TermRefWithSignatures. Just setting symbol/denotation is not enough because of termref caching.
|
|
|
|
| |
Module classes are entered alongisde their source modules in parent scope.
|
|
|
|
|
| |
Changed ThrowingReporter to use an underlying reporter for issuing messages below ERROR.
Made ThrowingReporters the default in initialContext.
|
| |
|
|
|
|
| |
Left dummies for Compiler and Run.
|
|
|
|
| |
Also some fixes in adapt wrt patterns.
|
|
|
|
|
|
| |
1) Trees are now contravariant.
2) All creation ops, transformers, copiers are pushed into Instance.
3) Still to do: integrate TreeMappers and tpd.TreeTransformers.
|
|
|
|
| |
SeqLiterals no longer have an elemtpt subtree. Their type is now no longer a RepeatedParamType, but instead an instance of SeqType or ArrayType.
|
|
|
|
|
|
|
| |
- Pushed mode into context
- Elimintaed scope nesting level
- Fixed a desugar bug
- Added constant folding
|
| |
|
|
|
|
|
|
| |
Changed the algorithm for & (and also |) to take accessibility into account. Fixed various problems that opened up when doing this.
Under -debug, new and old behavior of & are checked side-by-side and any discrepancy is noted.
|
|
|
|
| |
Also some refactorings that were caused by adding this method.
|
|
|
|
| |
Replaces desugar.Mode. Is now a value class representing a set.
|
|
|
|
| |
ClassDefs are now TypeDefs that have a Template as rhs.
|
|
|
|
|
|
| |
Typed TypeDefs no longer carry tparams. Untyped ones still do, but there is a special PolyTypeDef node for them in untpd.
Also, fixed flatten and DeSugarTest to deal with new tree desugarings which are not idempotent (e.g. desugar.classDef, or desugar.valDef).
|
|
|
|
|
| |
Also, changing the maps in Namer. More commenting needs to be done. Pushing now to get off this machine and
back to the new one, which just came back form repair.
|
| |
|
|
|
|
|
|
| |
(1) Made desugaring reaching a fixed point.
(2) Systematic encoding of names.
(3) Introduced Closure nodes which represent anonymous functions
|
| |
|
|
|
|
| |
Moved all other elements of TypedTrees and UntypedTrees into tpd and untpd.
|
|
|
|
|
|
|
| |
1) Getting rid of ugen in favor of untpd.
2) Eliminating some unused methods
3) Splitting out CheckTrees from TypedTrees.
4) Moving trees and related classes into separate package dotc.ast
|
|
|
|
|
| |
Split printers into several files. Added refined printing of trees. Changed Showable and generalized printing
under a precedence.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
… which take some statistics.
So far (on a Macbook pro): code base tested = scala/src + dotty/src
lines: 290'000
nodes created: ~1'004'000
parse times + tree building times after 10 iterations: 700-750ms, i.e. ~ 400Klines/sec
full transform of 1M nodes without tree copying: ~50ms
full transform with full copying: 150-200ms
|
| |
|
| |
|
|
|
|
| |
Also changed Untyped from Nothing to Null, because it avoids type inference problems.
|
|
|
|
|
|
|
| |
Moving Positions, Chars to new packages.
Added Source positions.
Added untyped trees module.
Factored out behavior between typed and untyped trees.
|
|
|
|
| |
Previously, each package nesting level doubled the amount of tests, because of the where doTwice was placed.
|
|
|
|
|
| |
Methods taking a fixed symbol are now called …withSym, methods taking a signature … withSig.
The reason for the change is that we want to liberate the original method names to take optional denotations, thus avoiding to have to go through withDenot each time.
|
| |
|
| |
|
|
|
|
| |
Various refinements to make output look more like source.
|
|
|
|
| |
Can now load and print all of scala, dotty.
|
|
|
|
|
|
| |
Dropped preCompleteDecls for a general refactoring that makes decls available after a class is loaded and before it is completed.
Also some other fixes to classloading problems.
|
|
|
|
| |
Aim: simplification, fewer classes.
|
| |
|
|
|
|
| |
Previsouly, failed to detect backlisted package members that were module classes.
|
|
|
|
|
|
| |
This fixes a weird problem where we read an external reference to a type parameter with NoPrefix as owner.
The problem arises when reading reflect.io.ZipFileArchive, where the reference is to the type parameter of AbstactFile.
It might be a known problem for Scala. For the moment there's nothing much we can do on the dotty side to deal with it. We either use .withDenot, and accept that this cannot be reloaded in future runs, or we use a HasFixedSym and risk a stale reference. It seems better to fail than to live with stale references.
|
|
|
|
| |
For the pruposes of & and |, NoType is now treated as top type, above Any.
|
| |
|
|
|
|
| |
Moves worksheets to test. Factored out class DottyTest and made it usable from worksheets. Added worksheet test for signatures.
|
| |
|
| |
|
| |
|