aboutsummaryrefslogtreecommitdiff
path: root/src/dotty/tools/backend
Commit message (Collapse)AuthorAgeFilesLines
...
* | Document that lines and columns start at 0.Martin Odersky2015-06-251-1/+1
|/ | | | And adjust for it in DottyBackendInterface
* Make normalizeToRef survive annotated typesMartin Odersky2015-05-211-1/+1
| | | | Did not handle this case before.
* Merge pull request #565 from retronym/topic/cleanupsDmitry Petrashko2015-05-153-5/+5
|\ | | | | Fix typos, scaladoc tags, and some minor code smells.
| * Correct a large number of typos.Jason Zaugg2015-05-143-5/+5
| | | | | | | | | | I scanned the main sources with IntellIJ's spell checker and corrected what showed up.
* | Fix #560 - refactor flatNameMartin Odersky2015-05-131-1/+1
|/ | | | | | - Merge flatName and fullNameSeparated - Treat nested members of modules specially, to conform to scalac conventions - Use `~` as separator for term members.
* Cleanup non-deviation.Martin Odersky2015-05-121-6/+1
| | | | | There was a "dotty deviation - does not work" in DottyBackendInterface, which does work after all. Reverting to more idiomatic code.
* Remove NonExistentTree.Dmitry Petrashko2015-05-081-3/+2
|
* Workaround dotty deviation in for loop patterns.Dmitry Petrashko2015-05-081-5/+10
|
* Address some of dotty deviations in backend.Dmitry Petrashko2015-05-082-2/+2
| | | | Implicit vals need explicit type, anonymous classes are widened.
* Do not use deprecated procedure syntax in GenBCode.Dmitry Petrashko2015-05-082-16/+21
|
* Rename localClasses -> definedClassesMartin Odersky2015-05-071-3/+3
|
* Fix #536 - only load member classes of classes that are currently compiled.Martin Odersky2015-05-071-2/+18
| | | | | | | It seems wasteful to load the member classes even of classes that are not currently compiled. It also makes us vulnerable to any misinterpretation of Java file formats. In th particular case of #536, we parsed a class an anonymous Collection$1 which was referring to the type parameter of its enclosing class, but was not diagnosed as an inner class of the enclosing class.
* Merge pull request #509 from dotty-staging/add/expandSAMsDmitry Petrashko2015-05-041-2/+2
|\ | | | | Expand SAM closures to anonymous classes if needed
| * Refactoring and renaming of superClass/superInterfacesMartin Odersky2015-05-021-2/+2
| | | | | | | | | | | | | | | | superClass was a duplicate; we already have one in SymDenotation, so we delete the one in SymUtils. superInterfaces is too easy to confused with the JVM notion, which is different. I replaced with directlyInheritedTraits.
* | Merge pull request #512 from dotty-staging/fix-511Dmitry Petrashko2015-05-041-0/+3
|\ \ | |/ |/| Fix #511. Lambdas of traits that inherit abstract member.
| * Reuse Type.abstractTermMembers in DottyBackendInterface.Dmitry Petrashko2015-04-301-2/+1
| |
| * Fix #511. The fix will not be effective until we update scalac fork dependency.Dmitry Petrashko2015-04-301-0/+4
| | | | | | | | | | https://github.com/DarkDimius/scala/commit/9c054bd687bbbcaa75f3f10a1d343998c6c1a2ba As bug is minor I do not want to update scalac fork dependency just yet.
* | DottyBackendInterface: interface members cannot be finalDmitry Petrashko2015-04-301-1/+1
|/
* Change name of TASTY attribute to TASTYMartin Odersky2015-04-251-1/+1
| | | | | It does not matter whether it comes from Dotty or elsewhere. We can record the name of the producer in a section of the format itself.
* Produce one TASTY pickling per top-level class.Martin Odersky2015-04-241-8/+6
| | | | | | | If a unit has several top-level classes or object (which are not linked classes of each other) each gets its own pickle information, which contains any enclosing package clauses and imports and then just the top-level class/object and its companion object.
* Save TASTY in attribute of classfiles.Dmitry Petrashko2015-04-241-1/+11
|
* Better workaround for #342. This one works also for symbols which are ↵Dmitry Petrashko2015-04-161-1/+1
| | | | InSuperCall.
* Force loading LambdaMetaFactory.Dmitry Petrashko2015-04-161-0/+4
| | | | | Common interface with scalac tries not to load it it wasn't loaded already. We need it.
* Give more precise types in desugarIdent.Dmitry Petrashko2015-04-161-3/+3
| | | | It is known to return an actual Select.
* Refactor BackendInterface.Select: desuggar only once.Dmitry Petrashko2015-04-161-10/+20
|
* Make dotty Idents transparent for common interfaceDmitry Petrashko2015-04-151-2/+13
| | | | | | | Scalac in some location(assigns for example) assumes that tree is a Select. In dotty it could also be an Ident. Simulate this. Fixes #477
* Ensure spaces after `if` in Dotty source.Dmitry Petrashko2015-04-093-14/+14
|
* Add spaces around + in dotty source.Dmitry Petrashko2015-04-091-2/+2
|
* Replace tabs with 4 spaces in Dotty source.Dmitry Petrashko2015-04-091-0/+0
|
* Make all Dotty source files end in newline.Dmitry Petrashko2015-04-091-1/+1
|
* Backend: emit all annotations.Dmitry Petrashko2015-04-031-18/+43
|
* Backend: Emmit simple annotationsDmitry Petrashko2015-04-031-12/+141
|
* Handle inner classes defined in suppercalls.Dmitry Petrashko2015-04-021-1/+1
|
* Emit inner classes table.Dmitry Petrashko2015-04-021-7/+15
|
* Emit abstract flag for non-abstract traitsDmitry Petrashko2015-03-251-1/+2
|
* Make CollectEntryPoints stable against type aliases.Dmitry Petrashko2015-03-251-4/+12
|
* Avoid capturing context in lazy treesMartin Odersky2015-03-181-1/+1
| | | | | | | | | | | | | | | | | | Lazy trees can live longer than runs, so it is important that they capture as little as possible. In particular they should not capture contexts. This change led with a ripple through effect to many changes where operations now have to parameterzied with contexts, in particular in what concerns tree folding. The changes in turn uncovered some areas where dotc was incompatible with scalac, and flagged correct things as errors. These will be fixed in the next commits. Another small twist: EmptyTrees will not be read in delayed mode, so that one can check for lacking definitions without deserializing the rhs.
* Fix backend not emitting fields.Dmitry Petrashko2015-03-181-1/+3
|
* Remove workaround for #348.Dmitry Petrashko2015-03-181-4/+1
|
* Handle boxing inside labels, jump back to box.Dmitry Petrashko2015-03-181-42/+67
| | | | | Erasure inserts boxing and unboxing of label returned values, ignoring the fact that some labels do not return. Now this is taken into account also inside labels which refer labels themselves
* Workaround #371 module classes read from byte code have no syperclassDmitry Petrashko2015-03-111-1/+11
|
* Workaround #348, linkedClass is broken after flattenDmitry Petrashko2015-03-111-1/+6
|
* Implement handling of synthetic throw method in backend.Dmitry Petrashko2015-03-051-4/+11
| | | | Having backend abstracted away from AST helps a lot here.
* Eliminate Throw as a typed TreeMartin Odersky2015-03-041-1/+3
| | | | | | | | Replace with <compiler-ops>.throw(exception) Only leave Throw as an untyped tree.
* fix ambiguous reference when loading "equals" of object "BoxesRuntime"Dmitry Petrashko2015-02-251-1/+1
|
* Rework LabelDefs. Fixes boxing of a unit label killing backend.Dmitry Petrashko2015-02-131-45/+58
| | | | | | | | Though still it would be better if erasure didn't emmit such trees, but still it's better to have this phase kore robust. Also made LabelDefs run in linear time on the size of tree instead of square on the Block-depth of tree.
* workaround #342Dmitry Petrashko2015-01-301-0/+3
| | | | | That's a hack. That allows to continue to work on backend. Should be removed after #342 is fixed.
* Handle Array.cloneDmitry Petrashko2014-12-162-9/+20
|
* Use correct methods to get super interfaces of a class.Dmitry Petrashko2014-12-161-1/+1
|
* Fix #258: string trailing $ in module names in backend.Dmitry Petrashko2014-12-161-1/+3
|