aboutsummaryrefslogtreecommitdiff
path: root/tests
Commit message (Collapse)AuthorAgeFilesLines
* Merge pull request #821 from dotty-staging/fix-check-simple-kindedDmitry Petrashko2015-10-202-2/+8
|\ | | | | Check that some types are not higher-kinded.
| * Check that some types are not higher-kinded.Martin Odersky2015-10-072-2/+8
| | | | | | | | Invalidates #813. Review by @darkdimius.
* | Merge pull request #823 from smarter/fix/lifting-and-inferenceGuillaume Martres2015-10-191-0/+9
|\ \ | | | | | | Always fully define the types of lifted expressions
| * | Always fully define the types of lifted expressionsGuillaume Martres2015-10-191-0/+9
| | | | | | | | | | | | Fixes #822
* | | Merge pull request #817 from smarter/fix/avoidGuillaume Martres2015-10-121-0/+42
|\ \ \ | |/ / |/| | Fix various issues in `TypeAssigner#avoid`
| * | TypeAssigner#avoid: do not lose type parameters when the base type changes.Guillaume Martres2015-10-091-0/+12
| | | | | | | | | | | | Fixes #741.
| * | Add pos test about escaping refinementsGuillaume Martres2015-10-091-0/+10
| | |
| * | TypeAssigner#avoid: don't miss escaping refs in complex typesGuillaume Martres2015-10-091-1/+9
| | |
| * | TypeAssigner#avoid: more precise types for inner classesGuillaume Martres2015-10-091-0/+12
| | | | | | | | | | | | | | | | | | | | | | | | When we need to avoid `A` in the class `A#B`, we can try to replace `A` by a supertype. Previously, we only tried to replace `A#B` itself by a supertype. Fixes #711.
* | | Merge pull request #799 from dotty-staging/change-inferenceodersky2015-10-073-2/+25
|\ \ \ | |_|/ |/| | Change inference
| * | Generalize set of typevars instantiated before implicit searchMartin Odersky2015-09-181-0/+7
| | | | | | | | | | | | | | | | | | We now also consider type variables in a selection prefix of the application. The test case was augmented to include a snippet which only succeeds under the generalization.
| * | Added neg testMartin Odersky2015-09-181-0/+7
| | | | | | | | | | | | (scalac and dotty both produce an error here)
| * | Add test caseMartin Odersky2015-09-181-0/+10
| | |
| * | Add test caseMartin Odersky2015-09-181-2/+1
| | |
* | | Merge pull request #820 from dotty-staging/add-collection-strawmanodersky2015-10-062-0/+238
|\ \ \ | | | | | | | | Add collection strawman #1
| * | | Rename collectAs -> toMartin Odersky2015-10-061-14/+14
| | | |
| * | | Tweaks to conform with API set out in #818.Martin Odersky2015-10-061-14/+14
| | | |
| * | | Bugfixes and move CollectionStrawMan1 into the correct directory.Martin Odersky2015-10-061-10/+10
| | | |
| * | | Add ArrayBuffer as another Seq class. Make iterators inspectable.Martin Odersky2015-10-062-0/+19
| | | |
| * | | Add collection strawman and its testsMartin Odersky2015-10-062-0/+219
| | | | | | | | | | | | | | | | This compiles only after the changes in this branch.
* | | | Merge pull request #805 from dotty-staging/change-freeze-boundsodersky2015-10-062-0/+245
|\| | | | |_|/ |/| | Change : freeze bounds
| * | Move failing test to pendingMartin Odersky2015-10-011-0/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | There is a diff, but a minor one. Instead of (T? >: Int <: Int) we get (T? = Int) after pickling.
| * | Add test caseMartin Odersky2015-10-011-0/+245
| | | | | | | | | | | | | | | Iter2.scala fails with 6 errors, but succeeds once lubs and glbs do not try to unify under invariant type constructors.
* | | Merge pull request #804 from svalaskevicius/fix-compiling-ScalaRunTimeodersky2015-10-021-0/+9
|\ \ \ | |/ / |/| | fix compiling ScalaRunTime.scala
| * | add a test for a pattern match with ignored type paramSarunas Valaskevicius2015-09-251-0/+9
| | |
* | | Move test to posMartin Odersky2015-09-291-0/+0
| | | | | | | | | | | | | | | A test that checked for errors on overloading now succeeds with the new rules.
* | | Matching denotations should take infos into accountMartin Odersky2015-09-291-2/+2
|/ / | | | | | | | | | | | | | | Whenchecking whether two denotations match it is not enough to look at the signatures. The signatures might match (on the parameters) but the actual parametre types might be different. The change always tests infos after signatures, effectively turning the signature test into a pre-filter.
* | Fixes to comments suggested by reviewerMartin Odersky2015-09-211-4/+4
| | | | | | | | Fixes suggested by @marter when reviewing previous hk PR.
* | Eta expand $apply projected types if neededMartin Odersky2015-09-213-0/+625
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It turns out that asSeenFrom can produce types that get projected with $apply but that are not higher-kinded. An exampple failure is in Iter3, andother in scala.collection.immutable.Map (which is now part of the test suite). We now detect that situation, and eta expand the projected type in `derivedSelect`, this will force a subssequent `lookupRefined` which will give the desired normalized type. Also added is a configurable test that checks that $apply projected tyeps are in fact higher-kinded.
* | Move failing test to pending.Martin Odersky2015-09-181-3/+3
| | | | | | | | | | | | The original IterableSelfRec is not syntactically legal after the hk changes. I attempted to fix, but there's still a type error. Need to investigate whether this is a true error or a bug.
* | Disallow wildcard arguments to higher-kinded types...Martin Odersky2015-09-182-1/+45
| | | | | | | | ...unless the HK type can be eta-reduced to a class type.
* | Eta expand type arguments corresponding to lambdasMartin Odersky2015-09-181-2/+2
|/ | | | | In Namer, eta expand any type argument that corresponds to a higher-kinded type parameter. Also, check that all type parameter lists are fully applied.
* Fix #791 erasedLub of two AnyVals is Object.Dmitry Petrashko2015-09-171-0/+11
|
* New phase: ExplicitSelfMartin Odersky2015-09-172-0/+21
| | | | | Makes self types explicit, if this is needed to identify a member in a select. Fixes #789.
* Enable more tests that passDmitry Petrashko2015-09-1475-0/+0
|
* final-fields.scala: tes objects with constant final vals.Dmitry Petrashko2015-09-141-1/+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.
* Test behaviour of final vals.Dmitry Petrashko2015-09-142-0/+24
|
* Add testMartin Odersky2015-09-122-0/+74
| | | | Should have been added on final vals commit.
* Fix desugaring problemMartin Odersky2015-09-121-0/+565
| | | | Desugaring worked incorrectly when both context bounds and default parameters were present.
* Merge pull request #767 from dotty-staging/fix-#756-super-accessorsDmitry Petrashko2015-08-282-0/+16
|\ | | | | Fix #756 super accessors
| * Add missing negative test.Martin Odersky2015-08-211-0/+8
| |
| * Add test caseMartin Odersky2015-08-211-0/+8
| |
* | Merge pull request #770 from odersky/fix-repeatedDmitry Petrashko2015-08-241-0/+10
|\ \ | | | | | | Fix repeated
| * | Refine refOfDef top handle repeated parametersMartin Odersky2015-08-221-0/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | refOfDef is used in desugaring case classes, specifically the definition of an apply method. Here it is necessary to pass a vararg argument (x: _*) if the case class parameter is repeated. This functionality is now added to `refOfDef`. I verified that the other uses of `refOfDef` are compatible with this change. Fixes #768.
* | | Make it a syntactic criterion whether a literal is a legal typeMartin Odersky2015-08-241-0/+2
| | | | | | | | | | | | | | | Introduce a new non-terminal "SimpleLiteral". Only SimpleLiterals can be types.
* | | Test other forms of singleton types.Martin Odersky2015-08-231-2/+18
| | | | | | | | | | | | | | | Tested are now other numeric values, strings, booleans, which are all legal singleton types.
* | | Better error message for Null and 'sym singleton types.Martin Odersky2015-08-231-0/+4
| | | | | | | | | | | | | | | | | | Null and 'sym are not legal as singleton types because the underlying values are not stable. They are rejected now outright instead of issuing a cryptic "X is not stable" error message.
* | | Update neg testMartin Odersky2015-08-231-1/+0
| | | | | | | | | | | | It's decided that constant types and purity are independent.