aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
...
* | Merge pull request #792 from dotty-staging/dotc-tastyDmitry Petrashko2015-09-161-1/+2
|\ \ | |/ |/| bin/dotc: add an option to run -tasty.
| * bin/dotc: add an option to run -tasty.Dmitry Petrashko2015-09-141-1/+2
| | | | | | | | @vladimirNik, should simplify your life
* | Merge pull request #790 from dotty-staging/mixin-traitsettersDmitry Petrashko2015-09-1577-2/+11
|\ \ | | | | | | Memoize: Support creating valid trait setters
| * | Enable more tests that passDmitry Petrashko2015-09-1475-0/+0
| | |
| * | Typer: allow to assign to vals inside trait setters.Dmitry Petrashko2015-09-141-1/+2
| | |
| * | Mixin: support trait setters.Dmitry Petrashko2015-09-141-1/+9
| |/ | | | | | | Used to create a separate field from trait setter, as the field name wasn't deconstructed.
* | Merge pull request #672 from dotty-staging/compile-dotty2Dmitry Petrashko2015-09-140-0/+0
|\ \ | |/ |/| Compile dotty.*, not only dotty.tools.
| * Compile dotty.*, not only dotty.tools.Dmitry Petrashko2015-07-231-1/+1
| |
* | Merge pull request #773 from dotty-staging/final-vals2Dmitry Petrashko2015-09-149-23/+137
|\ \ | | | | | | Memoize: duplicate scala2 behaviour: don't create fields for final vals.
| * | final-fields.scala: tes objects with constant final vals.Dmitry Petrashko2015-09-141-1/+4
| | |
| * | Memoize: bring back comment about how final vals are compiledDmitry Petrashko2015-09-141-0/+4
| | |
| * | Add another testMartin Odersky2015-09-142-1/+6
| | | | | | | | | | | | | | | Check that calling a side effecting function returning a constant type does not get suppressed.
| * | Augment test fileMartin Odersky2015-09-141-0/+18
| | | | | | | | | | | | to test for propagation of constant types.
| * | Memoize should produce constant DefDefs for constant final vals.Martin Odersky2015-09-141-11/+10
| | | | | | | | | | | | It produced just the right hand side literal before.
| * | Purity checking should take constant expressions into account.Martin Odersky2015-09-141-3/+11
| | | | | | | | | | | | | | | | | | | | | A constant expression with pure arguments is pure. Previously, this was not taken into account, which meant that literalize did not work for constant expressions contiaining primitive operations or String adds.
| * | Move literalize functionality to PostTyperMartin Odersky2015-09-142-4/+38
| | | | | | | | | | | | | | | | | | | | | | | | | | | Now, PostTyper replaces constant expressions with literals. If we wait any longer then any tree rewriting of an application node would have to do constant folding again, which is a hassle. With the previous late Literalize phase, constant expressions consisting of operations and arguments lost their constantness in PostTyper.
| * | Constant final vals need to have right hand type.Martin Odersky2015-09-141-6/+7
| | | | | | | | | | | | | | | | | | | | | | | | Previously, a constant right hand side was not propagated to the type of a final val that implemented another val with a given type. The inherited type was used instead. This means final vals implementing abstract vals get evaluated too late.
| * | Follow TermRefs when constant foldingMartin Odersky2015-09-142-4/+12
| | | | | | | | | | | | | | | A TermRef representing a constant value needs to be considered a constant when folding.
| * | Test behaviour of final vals.Dmitry Petrashko2015-09-142-0/+24
| | |
| * | Memoize: duplicate scala2 behaviour: don't create fields for final vals.Dmitry Petrashko2015-09-141-2/+12
|/ / | | | | | | This affect initialisation order and we rely on artifacts of initialisation order in Dotty.
* | Merge pull request #787 from dotty-staging/fix-#779-recursive-hk-typesDmitry Petrashko2015-09-143-5/+34
|\ \ | | | | | | Fix #779 recursive hk types
| * | Fill in missing #Apply projections in checkNonCyclicMartin Odersky2015-09-112-3/+29
| | | | | | | | | | | | | | | They might fall through the cracks in appliedTo because symbols are still completing then.
| * | Pull out isLegal prefix.Martin Odersky2015-09-111-2/+5
| | | | | | | | | | | | It is used twice, should use same logic each time.
* | | Merge pull request #774 from dotty-staging/fix-constructorsDmitry Petrashko2015-09-143-50/+72
|\ \ \ | | | | | | | | Constructors: fixes to maintain needed private fields.
| * | | Address review comments of #774Dmitry Petrashko2015-09-141-4/+4
| | | |
| * | | Address review comments #774Dmitry Petrashko2015-08-251-5/+2
| | | |
| * | | Add comment to Compiler.scala about behaviour of ConstructorsDmitry Petrashko2015-08-242-1/+3
| | | |
| * | | Constructors: remove self validation.Dmitry Petrashko2015-08-241-55/+3
| | | | | | | | | | | | | | | | | | | | | | | | Curiously enough, it only found bugs in old scheme It was deleting accessors, that used to be vals but became defs without anybody raising the `Method` flag.
| * | | Constructors: Do not store private fields used only to initialise other fieldsDmitry Petrashko2015-08-241-1/+8
| | | |
| * | | Constructors: gather retained private vals in advance.Dmitry Petrashko2015-08-241-4/+72
| | | | | | | | | | | | | | | | | | | | | | | | Allows not to go deep into tree, additionally fixes bugs with fields that are only used in inner classes being removed.
| * | | Memoize: call transformFollowingDeep with correct owner.Dmitry Petrashko2015-08-241-7/+7
| | | |
* | | | Merge pull request #788 from dotty-staging/fix-#781-context-boundsDmitry Petrashko2015-09-146-9/+658
|\ \ \ \ | | | | | | | | | | Fix #781 context bounds
| * | | | Add testMartin Odersky2015-09-122-0/+74
| | | | | | | | | | | | | | | | | | | | Should have been added on final vals commit.
| * | | | Fix desugaring problemMartin Odersky2015-09-122-6/+576
| | | | | | | | | | | | | | | | | | | | Desugaring worked incorrectly when both context bounds and default parameters were present.
| * | | | Add -language:Scala2 optionMartin Odersky2015-09-122-3/+8
| | |/ / | |/| | | | | | | | | | | | | | Avoids having to fix all occurrences of procedure syntax. Will be extended to other backwards compatible features.
* | | | Merge pull request #786 from dotty-staging/fix-#776-param-forwardersDmitry Petrashko2015-09-092-1/+42
|\ \ \ \ | | | | | | | | | | Fix param forwarding
| * | | | Fix comment in ExpandPrivateDmitry Petrashko2015-09-091-1/+1
| | | | |
| * | | | Add postcondition to ExpandPrivate.Dmitry Petrashko2015-09-091-0/+19
| | | | | | | | | | | | | | | | | | | | Check that we do not create members with weaker access than members in superclass.
| * | | | Add verbose message to assertion in applyOverloadedDmitry Petrashko2015-09-091-1/+4
| | | | |
| * | | | ExpandPrivate: add links to discussion.Dmitry Petrashko2015-09-091-0/+3
| | | | |
| * | | | Fix param forwardingMartin Odersky2015-09-081-0/+16
| |/ / / | | | | | | | | | | | | | | | | | | | | | | | | Parameter forwarders cannot stay private, since private members are not allowed to have the same name as inherited public ones. Review by @DarkDimius
* | | | Merge pull request #785 from dotty-staging/fix-#778-cyclic-referencesDmitry Petrashko2015-09-094-7/+27
|\ \ \ \ | |/ / / |/| | | Surivive Cyclic References when unpickling Scala 2 HK types
| * | | Surivive Cyclic References when unpickling Scala 2 HK typesMartin Odersky2015-09-084-7/+27
|/ / / | | | | | | | | | | | | | | | | | | Closes $778. It seems impossible (or very hard) to avoid Cyclic References when unpickling Scala2 files. So we try to survive them instead. Review by @DarkDimius
* | | Merge pull request #775 from dotty-staging/fix-lvDmitry Petrashko2015-09-011-2/+4
|\ \ \ | | | | | | | | LazyVals: fix volatile lazy vals initialization
| * | | LazyVals: fix volatile lazy vals initializationDmitry Petrashko2015-08-241-2/+4
| | | | | | | | | | | | | | | | Used to incorrectly set status field.
* | | | Merge pull request #767 from dotty-staging/fix-#756-super-accessorsDmitry Petrashko2015-08-286-4/+34
|\ \ \ \ | | | | | | | | | | Fix #756 super accessors
| * | | | Add missing negative test.Martin Odersky2015-08-211-0/+8
| | | | |
| * | | | Add test caseMartin Odersky2015-08-211-0/+8
| | | | |
| * | | | Workaround for #765Martin Odersky2015-08-212-3/+12
| | | | | | | | | | | | | | | | | | | | | | | | | Avoid using unexpanded name because it can give wrong results for super accessors of symbolic names. See #765. Without this commit t2183.scala crashes the compiler.
| * | | | Fix test when abstract override is needed.Martin Odersky2015-08-212-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | There was a transcription error from scalac which caused the scope of a `!` to be wrong.