aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Fix recursive expansion of templatesFelix Mulder2017-01-315-15/+44
|
* Add beginnings of Site classFelix Mulder2017-01-313-0/+139
|
* Add resource dir to dottydocFelix Mulder2017-01-311-0/+2
|
* Add `Page` trait with concrete classes for HTML and MDFelix Mulder2017-01-312-13/+83
|
* Add initial page rendering using liquid and yaml front matterFelix Mulder2017-01-314-1/+125
|
* Implement shortening of Markdown AST for summariesFelix Mulder2017-01-315-35/+163
|
* Add ability to completely parse docstring with md or wikiFelix Mulder2017-01-313-7/+142
|
* Factor out WikiParser from CommentParserFelix Mulder2017-01-313-654/+591
|
* Document `IsInstanceOfEvaluator` using markdown style docstringsFelix Mulder2017-01-312-28/+37
|
* Add markdown parsing to dottydocFelix Mulder2017-01-3111-57/+388
|
* Rename `DottyTest` in dottydoc to `DottyDocTest`Felix Mulder2017-01-316-8/+6
|
* Split Dottydoc.scala into separate filesFelix Mulder2017-01-315-90/+107
|
* Fix doc compilation of dotty itselfFelix Mulder2017-01-311-1/+6
|
* Remove dead code from pattern match in doc factoriesFelix Mulder2017-01-311-2/+0
|
* Add test programs to generate docsFelix Mulder2017-01-312-2/+76
|
* Fix doc package structureFelix Mulder2017-01-312-10/+7
|
* Make dottydoc main available for Java instancesFelix Mulder2017-01-314-28/+33
|
* Merge pull request #1920 from dotty-staging/fix-#1916Nicolas Stucki2017-01-312-3/+5
|\ | | | | Fix #1916 - fix erasure of xxl closures
| * Fix #1916 - fix erasure of xxl closuresMartin Odersky2017-01-312-3/+5
|/ | | | | xxl closures need to get the SAM type FunctionXXL as their explicit type field after ersure.
* Merge pull request #1913 from dotty-staging/fix-#1750odersky2017-01-3010-14/+59
|\ | | | | Fix #1750: Alternative fix for cyclic references due to illegal class overrides
| * Fix #1750: Handle illegal class overrides betterMartin Odersky2017-01-2910-14/+59
|/ | | | | | | | | | | | | | | | | | Illegal class overrides are fundamentally at odds with the way dotty represents types and therefore can cause lots of low-level problems. Two measures in this commit First, we detect direct illegal class overrides on completion instead of during RefChecks. Break the override by making the previously overriding type private. This fixes i1750.scala, but still fails for indirect overrides between two unrelated outer traits/classes that are inherited by the same class or trait. We fix this by catching the previously thrown ClassCastException in both ExtractAPI and RefChecks. Test case for indirect overrides is in i1750a.scala.
* Merge pull request #1896 from dotty-staging/fix/bootstrapGuillaume Martres2017-01-2818-146/+194
|\ | | | | Add sbt-based bootstrap
| * Add meta project dotty-bootstrappedGuillaume Martres2017-01-282-1/+7
| | | | | | | | | | | | This way you can run both the dotty-library-bootstrapped and dotty-compiler-bootstrapped tests with one command: sbt ;publishLocal;dotty-bootstrapped/test
| * .drone.yml: Give more resources to the JVM used by sbtGuillaume Martres2017-01-281-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | sbt runs up to `Runtime.getRuntime.availableProcessors` tasks in parallel, on our CI that means 40 tasks, compilation tasks are the one with the biggest footprint and the introduction of `dotty-library-bootstrapped` and `dotty-compiler-bootstrapped` in this PR means that sbt can now run more compilation tasks in parallel. To prevent the JVM from exploding, we increase: - The max heap size, from 1G to 4G - The max code cache size, from 240M to 512M - The max metaspace size, from 256M to 1G
| * sbt.ExtractDependencies: avoid false dependenciesGuillaume Martres2017-01-281-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | Type#member might return a denotation that doesn't "really exists" (as defined by TypeAssigner#reallyExists), in some circumstance this denotation can refer to a symbol in a class that is in the classpath but that is not used by this file, so using addDependency on the result of Type#member might add a false dependency. We avoid this by using Type#select instead which will internally do the right thing. This issue was discovered while compiling the bootstrapped projects which would sometimes force a full recompilation for no reason.
| * Workaround #1895: Bringing a symbol to a new run is brokenGuillaume Martres2017-01-283-5/+19
| |
| * Workaroud #1856: recursively calling a lazy val works differently in DottyGuillaume Martres2017-01-282-2/+21
| |
| * Fix bug in partest.DPConsoleRunnerGuillaume Martres2017-01-281-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The bug was that we declared case classes like: case class CompFailed() extends NegTestState but we used their companion objects like in: case _ => CompFailed Interestingly, this bug was caught by compiling this code with dotty, instead of `failureStates` getting inferred to be of type `AnyRef`, it ended up being a union of object types, this allows dotty to realize our subsequent pattern match on `failureStates` cannot possibly succeed: -- Error: /home/smarter/opt/dotty/compiler/test/dotty/partest/DPConsoleRunner.scala 353 | case CompFailedButWrongDiff() => | ^ | missing parameter type for parameter x$1 of expanded function x$1 => | x$1 @unchecked match | { | case CompFailedButWrongDiff() => | nextTestActionFailing(s"output differs") | true | case _ => | false | }, expected = ? -- Error: /home/smarter/opt/dotty/compiler/test/dotty/partest/DPConsoleRunner.scala 353 | case CompFailedButWrongDiff() => | ^^^^^^^^^^^^^^^^^^^^^^^^ |Pattern type CompFailedButWrongDiff is neither a subtype nor a supertype of selector type CompSucceeded | CompFailedButWrongNErr | CompFailed | CompFailedButWrongDiff'where: CompFailedButWrongDiff is a class in method runNegTest | CompFailedButWrongDiff' is a object in method runNegTest
| * Workaround #1770: Run changeOwner at group end in ElimByNameGuillaume Martres2017-01-281-1/+5
| | | | | | | | | | Using changeOwnerAfter would be more appropriate but currently fails with an assertion in LambdaLift
| * dotty.ShowTests: fix cyclic references involving implicit valuesGuillaume Martres2017-01-281-2/+2
| | | | | | | | | | | | | | | | As reportd by dotty (same thing with showShop): cyclic reference involving implicit value showCar This happens when the right hand-side of value showCar's definition involves an implicit search. To avoid the error, give value showCar an explicit type.
| * Fix some dotty compilation errorsGuillaume Martres2017-01-284-6/+12
| |
| * Use new sbt-based bootstrap for partest tooGuillaume Martres2017-01-272-51/+8
| | | | | | | | | | | | | | `partest` and `partest-only` are now run through `dotty-compiler-bootstrapped`. The old bootstrapping mechanism is deleted since it has been unmaintained and broken for several months and that I do not wish to maintain two bootstrapping mechanisms.
| * Enable sbt-based bootstrap in the CIGuillaume Martres2017-01-271-0/+1
| |
| * Add sbt-based bootstrapGuillaume Martres2017-01-271-50/+96
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This adds two new project to the sbt build: dotty-library-bootstrapped and dotty-compiler bootstrapped. These projects use the same source files as dotty-library and dotty-compiler but are compiled using dotty itself. The main usecase for this is that we can now run the JUnit tests (which are _not_ just a subset of the tests run by partest, for example the REPL tests are only run through JUnit) with a bootstrapped compiler: $ sbt > publishLocal # Non-bootstrapped dotty needs to be published first > dotty-compiler-bootstrapped/test But this also allows one to experiment with a bootstrapped dotty much more easily in general. This revealed many issues in the compiler that are fixed in subsequent commits in this PR.
| * Do not hardcode jars path in the tests, instead get them from sbtGuillaume Martres2017-01-272-13/+17
| | | | | | | | | | This is necessary to run the tests with the bootstrapped projects and is just much better than hardcoding them anyway.
| * Remove hardcoded classpath reorderingGuillaume Martres2017-01-272-10/+1
| | | | | | | | | | | | If something needs to be fixed, fix it at the source. This prevented dotty-compiler-bootstrapped from using the dotty-library-bootstrapped clases instead of the dotty-library jar
* | Merge pull request #1909 from dotty-staging/fix-1687Dmitry Petrashko2017-01-283-34/+68
|\ \ | | | | | | Fix #1687: postpone computations in tailrec until they are needed.
| * | Test that #1687 is fixed.Dmitry Petrashko2017-01-222-0/+29
| | | | | | | | | | | | The b-test would compile for a millenia without the fix.
| * | Fix #1687: postpone computations in tailrec until they are needed.Dmitry Petrashko2017-01-221-34/+39
| | | | | | | | | | | | | | | | | | | | | | | | | | | Previous version precomputed everything needed to make the final decision. This was fast-path for method that will be tail-rec transformed. Unfortunatelly, in case decision was not to tail-rec optimize it could have led to exponential number of transformations. Now, the fast-path is for methods that will not.
* | | Merge pull request #1910 from dotty-staging/fix/#1908-synthetic-desugaringsFelix Mulder2017-01-282-1/+52
|\ \ \ | |_|/ |/| | Fix #1908: give synthetic default params correct flags
| * | Fix #1908: give synthetic default params correct flagsFelix Mulder2017-01-252-1/+52
| |/
* | Merge pull request #1912 from dotty-staging/upgrade-backendGuillaume Martres2017-01-272-3/+2
|\ \ | |/ |/| Upgrade backend to fix Java interop for inner classes
| * Upgrade backend to fix Java interop for inner classesGuillaume Martres2017-01-272-3/+2
|/ | | | | | The upgraded backend contains a single new PR: https://github.com/DarkDimius/scala/pull/4 which fixes Java interop with Dotty-emitted inner classes in objects.
* Merge pull request #1904 from dotty-staging/fix-npe-implicitsodersky2017-01-161-8/+10
|\ | | | | Fix another NPE when compiling under -Yno-imports
| * Fix another NPE when compiling under -Yno-importsMartin Odersky2017-01-161-8/+10
| |
* | Merge pull request #1903 from dotty-staging/fix-npe-implicitsodersky2017-01-161-3/+11
|\| | | | | Fix NPE in Implicits
| * Fix NPE in ImplicitsMartin Odersky2017-01-161-3/+11
| | | | | | | | | | We got on NPE when compiling the collection strawman under -Yno-imports. We did not preview that the contextual implicit scope stack could be empty.
* | Merge pull request #1901 from dotty-staging/change-predef-importodersky2017-01-164-14/+23
|\| | | | | Adopt scala's scheme for root import hiding
| * Adopt scala's scheme for root import hidingMartin Odersky2017-01-154-14/+23
| | | | | | | | | | | | | | | | | | | | scalac hides a root import from Predef if there is an eplicit Predef import. We now do the same (previously we did this only if the overriding import undefined something, using a `x => _` syntax). To avoid cycles and races one had to be very careful not to force import symbols too early, so we now compare the name before the symbol proper. All this is likely temporary - the comment of ImportInfo#unimported points to a different, more systematic solution.
* | Merge pull request #1880 from dotty-staging/improve-whitelist-infrastructureodersky2017-01-126-705/+92
|\ \ | |/ |/| Improve whitelist infrastructure.