aboutsummaryrefslogtreecommitdiff
path: root/compiler
Commit message (Collapse)AuthorAgeFilesLines
* Whitelist sources from scala/ioNicolas Stucki2016-12-182-4/+13
|
* Whitelist sources from scala/beansNicolas Stucki2016-12-182-9/+9
|
* Whitelist sources from scala/sys and scala/compatNicolas Stucki2016-12-182-15/+20
|
* Whitelist sources from scala/collection/parallel/immutableNicolas Stucki2016-12-182-9/+10
|
* Whitelist sources from scala/collection/concurrentNicolas Stucki2016-12-182-3/+2
|
* Whitelist sources from scala/collection/convertNicolas Stucki2016-12-182-6/+13
|
* Whitelist sources from scala/collection/mutableNicolas Stucki2016-12-182-66/+105
|
* Whitelist sources from scala/utilNicolas Stucki2016-12-182-15/+25
|
* Add scala-collections.blacklist and crosscheck with whitelist.Nicolas Stucki2016-12-182-6/+395
|
* Merge pull request #1823 from dotty-staging/fix-#1789Nicolas Stucki2016-12-181-2/+4
|\ | | | | Fix #1789: Fix signature of unit result type
| * Fix #1789: Fix signature of unit result typeMartin Odersky2016-12-181-2/+4
| | | | | | | | was scala.BoxedUnit, should be scala.Unit.
* | Merge pull request #1822 from dotty-staging/fix-#1792odersky2016-12-181-0/+2
|\ \ | | | | | | Fix #1792: Allow newline in front of `{` for procedure syntax
| * | Fix #1792: Allow newline in front of `{` when supporting procedure syntax.Martin Odersky2016-12-141-0/+2
| | |
* | | Merge pull request #1775 from dotty-staging/add-implicit-funtypesodersky2016-12-1830-182/+557
|\ \ \ | | | | | | | | Add implicit function types
| * | | Fix commentMartin Odersky2016-12-171-1/+1
| | | |
| * | | Fix formattingMartin Odersky2016-12-171-2/+1
| | | |
| * | | Fix rebase breakageMartin Odersky2016-12-171-1/+5
| | | |
| * | | Fix typo in commentMartin Odersky2016-12-171-1/+1
| | | |
| * | | Drop Override flag for non-overriding direct methodsMartin Odersky2016-12-171-2/+5
| | | | | | | | | | | | | | | | Also, integrate Jason's test case with the conditional.
| * | | Make specialization tweakableMartin Odersky2016-12-171-3/+22
| | | | | | | | | | | | | | | | | | | | Introduce an option to not specialize monomorphic targets of callsites.
| * | | Fix rebase breakageMartin Odersky2016-12-171-1/+1
| | | |
| * | | Fix toString in ImplicitFunction treeMartin Odersky2016-12-171-1/+1
| | | |
| * | | New ShortcutImplicits phaseMartin Odersky2016-12-176-1/+151
| | | | | | | | | | | | | | | | | | | | Optimizes implicit closures by avoiding closure creation where possible.
| * | | initialDenot method for symbolsMartin Odersky2016-12-171-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This avoids denotation transforms when called at a later phase because it cuts out current. Not needed in final version of ShortcutImplicits, but I thought it was good to have.
| * | | Ref copier that works for Idents and SelectsMartin Odersky2016-12-172-1/+7
| | | | | | | | | | | | | | | | | | | | The Ref copier copies Idents and Selects, changing the name of either.
| * | | Fix "wrong number of args" reportingMartin Odersky2016-12-174-8/+11
| | | | | | | | | | | | | | | | | | | | | | | | "Wrong number of args" only works for type arguments but was called also for term arguments. Ideally we should have a WrongNumberOfArgs message that works for both, but this will take some refactoring.
| * | | Fixes to testsMartin Odersky2016-12-171-3/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 1. I noted java_all was not running(it took 0.01s to complete); fixed by changing the test directory. 2. We suspected tasty_bootstrap was gettng the wrong classpath and had a lot of problems getting it to print the classpatg. Fixed by refactoring the options we pass to tasty_bootstrap (it has to be -verbose in addition to -classpath). For the moment, both a turned off but we have to just swap a false to a true to turn them on together.
| * | | Don't look at nesting for implicit resolution under Scala2 mode.Martin Odersky2016-12-171-1/+6
| | | |
| * | | Create implicit closures to math expected implicit functionsMartin Odersky2016-12-177-27/+64
| | | | | | | | | | | | | | | | | | | | When the expected type is an implicit function, create an implicit closure to match it.
| * | | Take nesting into account when ranking implicitsMartin Odersky2016-12-174-31/+59
| | | | | | | | | | | | | | | | | | | | | | | | This will need a spec change. It's necessary in order not to confuse synthetic implicits with each other or with explicit ones in the environment.
| * | | Fix erasure of implicit functionsMartin Odersky2016-12-172-14/+16
| | | | | | | | | | | | | | | | and check at runtime that it works
| * | | Add code to disable old implicit closure syntax in blocksMartin Odersky2016-12-171-1/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This will no longer be supported. On the other hand, as long as the alternative is not yet legal in Scala2.x we cannot flag this as an error. So the migration warning/error and patch code is currently disabled.
| * | | Generalize syntax for implicit function valuesMartin Odersky2016-12-172-43/+76
| | | | | | | | | | | | | | | | | | | | - allow more than one implicit binding - harmonize syntax in expressions and blocks
| * | | Cleanup of implicit modifiers schemeMartin Odersky2016-12-174-18/+17
| | | | | | | | | | | | | | | | | | | | Implicit modifiers were quite irregular compared to the other ones. This commit does a cleanup.
| * | | Changes for matching and subtyping implicit methodsMartin Odersky2016-12-171-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | Implicitness is ignored for matching (otherwise apply in ImplicitFunction could not shadow apply in Function). And explicit trumps implicit in subtyping comparisons.
| * | | Make implicit functions have implicit function typeMartin Odersky2016-12-171-1/+1
| | | |
| * | | Handle erasure of implicit function typesMartin Odersky2016-12-171-2/+9
| | | |
| * | | Refactor function operations in DefinitionsMartin Odersky2016-12-175-21/+32
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Also: show implicit function types correctly. Also: refine applications of implicit funcitons - don't do it for closure trees - don't do it after typer.
| * | | Always insert apply for expressions of implicit function typeMartin Odersky2016-12-172-13/+37
| | | |
| * | | Add syntax for implicit functionsMartin Odersky2016-12-173-7/+21
| | | |
| * | | Add ImplicitFunctionN classesMartin Odersky2016-12-173-14/+30
| | | | | | | | | | | | | | | | These are always synthetic; generated on demand.
* | | | Merge pull request #1817 from dotty-staging/fix-#1802odersky2016-12-1818-55/+81
|\ \ \ \ | |_|_|/ |/| | | Fix #1802: Make sure errors are not swept under the carpet
| * | | Comment FlexTypeMartin Odersky2016-12-171-0/+3
| | | |
| * | | Make errors are not swept under the carpetMartin Odersky2016-12-1718-55/+78
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Typer#ensureReported's comment outlines an example where errors could go unreported, resulting in error trees after typer without any reported error messages. This commit makes sure that at least one error is reported if a tree node has an error type. Fixes #1802.
* | | | Merge pull request #1819 from dotty-staging/fix-#1803Nicolas Stucki2016-12-173-5/+22
|\ \ \ \ | | | | | | | | | | Fix #1803: Infer type parameters of anonymous class parents from expected type
| * | | | Infer type parameters of anonymous class parents from expected typeMartin Odersky2016-12-173-5/+22
| | |/ / | |/| | | | | | | | | | | | | | | | | | | | | | If a parent type of an anonymous class is an Ident or Select which refers to a parameterized type, use the expected type to infer its type parameters. Fixes #1803.
* | | | Merge pull request #1815 from dotty-staging/fix-#1797Nicolas Stucki2016-12-171-2/+3
|\ \ \ \ | | | | | | | | | | Fix #1797: Allow case class params with names _1, _2, ...
| * | | | Fix #1797: Allow case class params with names _1, _2, ...Martin Odersky2016-12-151-2/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This was not possible before because it clashed with the automatically generated name of the accessor. We now allow it, by simply taking the parameter(accessor) itself as the case class accessor if it already has that name. But you still cannot write case class C(_2: Int, _1: String) nor should you be able to do this.
* | | | | Merge pull request #1767 from dotty-staging/fix-#1755odersky2016-12-171-2/+21
|\ \ \ \ \ | |_|/ / / |/| | | | Fix #1755: Make sure references in outer args are accessible
| * | | | Fix #1755: Make sure references in outer args are accessibleMartin Odersky2016-12-021-2/+21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Needed a fixup action in ExplicitOuter to avoid references to module's This from outside their scope. The problem is fixed, but I wish I understood better the root cause.