aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* 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 #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
| | |
| * | Add documentation to dottydoc APIFelix Mulder2016-08-194-6/+69
| | |
| * | Implement dotty bridge for docFelix Mulder2016-08-196-33/+57
| | |
| * | Implement working docs requiring manually specifying resources and template ↵Felix Mulder2016-08-199-98/+63
| | | | | | | | | | | | for html docs
| * | Implement bridge that generates json on `doc` commandFelix Mulder2016-08-195-56/+33
| | |
| * | Add scaladoc interface stubFelix Mulder2016-08-195-2/+38
| | |
| * | Add `currentEntity` to templating APIFelix Mulder2016-08-193-18/+20
| | |
| * | Remove client from dottydoc - no more Scala.JS deps!Felix Mulder2016-08-1959-4761/+513
| | |
| * | Implement annotation parsing like CommentFactoryBase from nscFelix Mulder2016-08-196-67/+158
| | |
| * | Fix type params of classes, traits defs, which broke after new HK schemeFelix Mulder2016-08-193-7/+19
| | |
| * | Fix phase fusion for subpackages, fix links in implicitly added methodsFelix Mulder2016-08-196-11/+21
| | |
| * | Add info on where implicitly added members originate fromFelix Mulder2016-08-1911-34/+83
| | |
| * | Get docstring from overriden symbol if not present on the overriding methodFelix Mulder2016-08-193-22/+38
| | |
| * | Fix #25: move doc related structures to `DocBase`Felix Mulder2016-08-199-17/+27
| | | | | | | | | | | | To access `DocBase`: `ctx.docbase.docstring(...)`
| * | Remove shared directory - nothing shared anymoreFelix Mulder2016-08-196-0/+0
| | |
| * | Add a SortMembers phase to sort the members instead of doing it when ↵Felix Mulder2016-08-193-6/+39
| | | | | | | | | | | | serializing to json
| * | Sort members when serializing to JSONFelix Mulder2016-08-191-5/+5
| | |
| * | Define special handling of infix types like "<:<" and "=:="Felix Mulder2016-08-191-1/+9
| | |
| * | Add indication that paramList takes implicit argumentsFelix Mulder2016-08-199-12/+36
| | |
| * | Change from absolute name to type name in link namesFelix Mulder2016-08-191-2/+5
| | |
| * | Handle all types of references when linkingFelix Mulder2016-08-191-10/+21
| | |
| * | Correctly parse tuples, functions and applied types like `Map[K,V]` from ↵Felix Mulder2016-08-191-1/+10
| | | | | | | | | | | | compiler internals
| * | Render idiomatic tuples in clientFelix Mulder2016-08-191-0/+26
| | |
| * | Add support for rendering tuples idiomaticallyFelix Mulder2016-08-192-0/+3
| | |
| * | Render repeated parameters correctly in clientFelix Mulder2016-08-191-0/+2
| | |
| * | Add support for repeated parameters in producerFelix Mulder2016-08-195-4/+17
| | |
| * | Fix #28: render functions passed as argumentsFelix Mulder2016-08-195-21/+85
| | |
| * | Change TypeReference#paramLinks' type from `MaterializableLink` to `Reference`Felix Mulder2016-08-194-12/+7
| | |
| * | Rebase dottydoc over new HK schemeFelix Mulder2016-08-193-5/+14
| | |