aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* fixup #1470Nicolas Stucki2016-09-051-4/+5
|
* Fix #1470: Fix dynamic selection in presence of inaccessible members.Nicolas Stucki2016-09-054-2/+4
|
* Fix #1468: Add type parameter support for scala.DynamicNicolas Stucki2016-09-057-35/+85
|
* Merge pull request #1482 from dotty-staging/fix-asapplicable-safeodersky2016-09-047-33/+119
|\ | | | | More tweaks to type inference
| * TyperState refactoring.Martin Odersky2016-08-261-17/+7
| | | | | | | | | | Need to export just uncommittedAncestor, can hide isCommitted and parent.
| * Handle case where expected type of a SeqLiteral has an undetermined element ↵Martin Odersky2016-08-263-9/+59
| | | | | | | | | | | | type. Test case is isApplicableSafe -Ycheck:first.
| * Handle complex context merging casesMartin Odersky2016-08-262-4/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Test case in isApplicableSafe.scala. It turns out that this requires a context merge using the new `&' operator. Sequence of actions: 1) Typecheck argument in typerstate 1. 2) Cache argument. 3) Evolve same typer state (to typecheck other arguments, say) leading to a different constraint. 4) Take typechecked argument in same state. It turns out that the merge in TyperState is needed not just for isApplicableSafe but also for (e.g. erased-lubs.scala) as well as many parts of dotty itself.
| * Implement constraint mergingMartin Odersky2016-08-263-5/+48
| | | | | | | | Not used yet, but we might use it as an alternative to typedArg invalidation later.
* | Merge pull request #1491 from dotty-staging/fix-i1490Guillaume Martres2016-09-013-1/+17
|\ \ | | | | | | Fix #1490: type test of union types via type alias
| * | Fix #1490: type test of union types via type aliasliu fengyun2016-09-013-1/+17
|/ /
* | Merge pull request #1483 from lampepfl/DarkDimius-patch-7Felix Mulder2016-08-291-2/+3
|\ \ | |/ |/| Update readme: mark Exhaustivity checks & multiv.eq. as implemented
| * Update readme: mark Exhaustivity checks & multiv.eq. as implementedDmitry Petrashko2016-08-291-2/+3
|/
* Merge pull request #1461 from dotty-staging/fixes-gadtsodersky2016-08-26109-102/+155
|\ | | | | Fixes of GADTs and test recategorization.
| * Dependent method testsMartin Odersky2016-08-264-2/+29
| |
| * More tests recategorizedMartin Odersky2016-08-265-3/+2
| |
| * Make inherited inferred result type work for dependent methodsMartin Odersky2016-08-262-11/+18
| | | | | | | | We did not properly rename parameter references before.
| * Relax matching requirement in unApplyMartin Odersky2016-08-262-3/+2
| | | | | | | | | | | | We now always widen selector type to the superclass if necessary, no matter whether the selector type refers to a trait or a proper class.
| * Move tests to right directoryMartin Odersky2016-08-267-0/+13
| |
| * Test recategorizationMartin Odersky2016-08-262-4/+6
| |
| * Generalize self-referential member comparisons.Martin Odersky2016-08-263-5/+9
| | | | | | | | | | | | | | The special case in hasMatchingMember dealing with self-refential members has to be generalized to deal lower and upper bounds. Test case is t762.scala
| * Type annotations in context enclosing the annotated definitionMartin Odersky2016-08-262-1/+2
| | | | | | | | Fixes SI-7426, which caused a double definition before.
| * Drop out of date commentMartin Odersky2016-08-261-1/+1
| |
| * Add more missing testsMartin Odersky2016-08-268-0/+72
| |
| * Implement alternative desugaring of for-if to filter.Martin Odersky2016-08-265-5/+38
| | | | | | | | | | | | | | Fallback to .filter if a .withFilter is not available, but do this only for .withFilter calls generated from for expressions (this is different from what scalac does; the latter can also rewrite .withFilter calls given in source, which is not desirable.
| * Retracting special case depending on Ycheck.Martin Odersky2016-08-261-3/+2
| | | | | | | | | | | | | | I believe it's better to just bite the bullet and insert the cast. If it should become a problem, we can think of a fallback, e.g. marking the expression with a special tag, so that it does not get typechecked. But for the moment I am not sure it is an issue at all.
| * Be more careful with inserted casts.Martin Odersky2016-08-261-2/+9
| | | | | | | | See comment on the commit for an explanation.
| * Recategorize testsMartin Odersky2016-08-2679-135/+7
| | | | | | | | | | | | | | | | | | Passing tests from pending/pos go in pos. Some others go in diabled/not-testable. These are tests that require a compilation order which we cannot yet do with our unit testing framework. Compiling them alltogether (as is now doen in junit) does not work either for them because they contain a duplicate class.
| * GADT testMartin Odersky2016-08-261-2/+2
| | | | | | | | | | This one failed in getters before because a (previously unchecked) assignment was turned into a checked application. Now it passes.
| * Make expressions using GADTs type check in later phasesMartin Odersky2016-08-262-3/+21
| | | | | | | | | | | | GADT logic is lost after PatMat. To make code typecheck, the typer should already insert casts where a subtype check succeeded because it involved bounds established by a GADT comparison.
| * Fix testing in tree checker.Martin Odersky2016-08-261-1/+1
| | | | | | | | | | | | | | Tree checker typed always dropped the expected type and replaced it by a wildcard. This meant that type checking dor -Ycheck was much weaker than it should be. A class of GADT problems is only diagnosed once the expected type is proberly propagated.
* | Merge pull request #1481 from dotty-staging/remove-warningsDmitry Petrashko2016-08-2626-6/+371
|\ \ | | | | | | Remove warnings from compliation of dotty.
| * | Fix a couple of warnings.Nicolas Stucki2016-08-263-5/+5
| | |
| * | Suppress warnings for JFunction#.java erased specialized methods.Nicolas Stucki2016-08-2623-1/+366
|/ /
* | Merge pull request #1417 from dotty-staging/fix-output-diffDmitry Petrashko2016-08-262-26/+105
|\ \ | |/ |/| Implement Xprint-diff without external libraries.
| * Fix #1405: Implement Xprint-diff without external libraries.Nicolas Stucki2016-08-242-26/+105
| |
* | Merge pull request #1460 from dotty-staging/fix-t1756odersky2016-08-267-109/+137
|\ \ | |/ |/| Make sure arguments are evaluated in the correct typer state.
| * Add comment.Martin Odersky2016-08-211-1/+5
| |
| * Address reviewers comments.Martin Odersky2016-08-212-24/+21
| |
| * Fix comment.Martin Odersky2016-08-211-1/+2
| |
| * Make sure arguments are evaluated in the correct typer state.Martin Odersky2016-08-216-101/+126
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | There's a tricky interaction with caching of typed arguments in FunProto types and backtracking using different typer states. We might end up with a typed argument that is evaluated in one typer state and that is used in another. The problem is that the argument typing might have inserted type variables (maybe by adding polymorphic implicit views) that are not registered in the typer state in which the application is finally typed. In that case we will see an "orphan poly parameter" in pickling. The fix is to discard argument types is their typerstate is not committed to the one in which the application is finally typed. To apply the fix we need to track - for typer states: whether or not it was committed, and what its parent is. - for function prototypes: the typer state in which an argument with cached type was evaluated. Test case is t1756.scala, which produced an "orphan poly parameter CI" before.
| * Don't force in isErronous checkMartin Odersky2016-08-211-5/+6
| | | | | | | | | | | | | | isErroneous forced LazyRefs through the `existsPart` combinator. This might prompt further errors or infinite recursions, so should be avoided. Seen in the wild when trying to trace t1756.scala with -Ylog:front and typr printer on.
* | Merge pull request #1364 from dotty-staging/exhaustivity2Dmitry Petrashko2016-08-24147-17/+3883
|\ \ | | | | | | Implementation of exhaustivity and redundancy check
| * | add test set for exhaustivity and redundancy checkliu fengyun2016-08-24136-0/+3184
| | |
| * | implementation of exhaustivity and redundancy checkliu fengyun2016-08-2411-17/+699
|/ /
* | Merge pull request #1453 from felixmulder/topic/dottydocodersky2016-08-2446-70/+4315
|\ \ | | | | | | Add dottydoc
| * | Add phase to deal with constructorsFelix Mulder2016-08-2113-54/+318
| | |
| * | Add `ImplicitlyAddedEntity` as a common trait for implicitly added membersFelix Mulder2016-08-191-4/+6
| | |
| * | Properly materialize supertype linksFelix Mulder2016-08-194-31/+45
| | |
| * | Add snapshots resolverFelix Mulder2016-08-191-0/+2
| | |
| * | Move client test to client repoFelix Mulder2016-08-192-48/+15
| | |