aboutsummaryrefslogtreecommitdiff
path: root/src/dotty/tools/dotc/core/Periods.scala
Commit message (Collapse)AuthorAgeFilesLines
* Make all Dotty source files end in newline.Dmitry Petrashko2015-04-091-1/+1
|
* Allow up to 64 phases.Martin Odersky2015-03-181-1/+1
| | | | | Doubles maximal number of phases from 32 to 64. Needed because adding the pickling phase would push us over the edge of 32 phases.
* Adjust periods to allow up to 64 phases.Dmitry Petrashko2015-02-191-3/+3
|
* Check period validity once per run.Dmitry Petrashko2015-02-121-7/+0
|
* Assert for overflows in PeriodsDmitry Petrashko2015-02-111-3/+15
|
* Fixes to TreeTypeMapMartin Odersky2014-08-181-1/+0
| | | | | | | | | (1) Template nodes have to be treated specially. They contain primary constructors, self definitions and local dummys, all of which have to be properly mapped and re-integrated. (2) Symbol substitutions have ot be done all together instead of one after the other. (3) When creating new symbols, need to create ClassSymbols for ClassSymbols.
* Avoid some classes of StaleSymbol errorsMartin Odersky2014-07-171-0/+7
| | | | | | | | If a symbol is defined in phases M..N, and that symbol is then accessed in a phase before M, but in a new run, we should not issue a stale symbol error (after all, the symbol is not defined yet). Instead we now return a NoDenotation.
* Fix #95: Phases now have their own periods.Dmitry Petrashko2014-03-271-0/+2
|
* Rename methods on FreshContext to make mutation obviousDmitry Petrashko2014-03-271-1/+1
| | | | And avoid name clashes
* Fix context.withPhaseMartin Odersky2014-03-271-1/+1
| | | | | | Previous version was wrong because every context is a fresh context at runtime, so the overriding version would always be executed, which means that withPhase becomes a side-effecting operation!
* Allow MiniPhase to be DenotTransformerDmitry Petrashko2014-03-191-2/+4
| | | | | | All MiniPhases now as are full-fledged phases, and are given their own periods and can register DenotTransformers. MiniPhases belonging to same group(list) will be squashed to single phase.
* Refactored denotation transformersMartin Odersky2014-03-181-9/+5
| | | | | | | | Many small and large changes. Added samplePhase to demonstrate functionality. To test functioning, run the compiler with args tests/pos/uncurry.scala -Ylog:sample,terminal
* Renaming core.Transformer(s) -> core.DenotTransformer(s)Martin Odersky2014-03-181-1/+1
| | | | To bring in line with TreeTransformer terminology.
* Reorg of info transformer frameworkMartin Odersky2014-03-181-1/+1
|
* New scheme for attachments.Martin Odersky2014-02-111-0/+1
| | | | | | | Added general way to put attachments on some base type (which needs to inherit from Attachment.Container). Used it to turn typedTree map into an attachment. Also, moved DotClass to dotc.util.
* Making definitions permanentMartin Odersky2013-08-171-1/+1
| | | | Need to ensure that specially generated symbols in definitions are valid forever; otherwise they would disappear after first run.
* Various bugfixes for namer/typer/treesMartin Odersky2013-08-161-3/+3
|
* First steps to make compiler start work.Martin Odersky2013-03-111-4/+24
| | | | Still fighting with CyclicReference errors.
* more docs.Martin Odersky2013-02-281-15/+21
| | | | Plus renamed NullSignature -> NotAMethod
* Filling in all ???sMartin Odersky2013-02-271-5/+5
| | | | | | | Added reporters. Added context for signatures. Implemented method signatures via erasure. Refined derivedNameType handling.
* New Context architecture based on cloningMartin Odersky2013-01-291-13/+3
|
* Changed NamedType dereferencing so that we need not keep track of name ↵Martin Odersky2013-01-211-1/+4
| | | | validity periods. Instead, we simply retry on missing member lookup in an earlier phase. This scheme is less complicated and works as long as names that are renamed in phase A are not re-used in a phase B >= A.
* Made Period a value class.Martin Odersky2013-01-131-42/+65
|
* Postulate intersection method for intervals.Martin Odersky2013-01-121-3/+5
|
* (1) Moved logic from ClassDenotation to ClassInfoType. (2) Tweaks to other ↵Martin Odersky2012-12-181-0/+4
| | | | types. (3) FlagSet is now a value class.
* Initial commitMartin Odersky2012-12-061-0/+99