aboutsummaryrefslogtreecommitdiff
path: root/src/dotty/tools/dotc/transform/ExpandPrivate.scala
Commit message (Collapse)AuthorAgeFilesLines
* Make private accessor in value class not-private.VladimirNik2016-07-271-1/+12
| | | | | This is necessary to unbox the value class when accessing it from separate compilation units
* Store source files as normal paths, not canonical ones.Martin Odersky2016-04-081-1/+15
| | | | This is the same as what Java does for its ClassFile attribute.
* Assert that ensureNotPrivate does not break on separate compilationMartin Odersky2016-03-131-1/+4
| | | | | | When ensureNotPrivate changes the status of a formerly private declaration, assert that the reference to the declaration is in the same compilation unit, as otherwise the nehavior would be different under separate compilation.
* Better diagnostic for weaker access errorsMartin Odersky2015-09-161-1/+1
| | | | Fix typo, and print infos alongside fully qualified names.
* Fix comment in ExpandPrivateDmitry Petrashko2015-09-091-1/+1
|
* Add postcondition to ExpandPrivate.Dmitry Petrashko2015-09-091-0/+19
| | | | Check that we do not create members with weaker access than members in superclass.
* ExpandPrivate: add links to discussion.Dmitry Petrashko2015-09-091-0/+3
|
* Fix param forwardingMartin Odersky2015-09-081-0/+16
| | | | | | | Parameter forwarders cannot stay private, since private members are not allowed to have the same name as inherited public ones. Review by @DarkDimius
* TreeChecker: check for absence of private abstract methods.Dmitry Petrashko2015-05-031-11/+2
|
* ExpandPrivate: Make sure Deferred members are not Private.Dmitry Petrashko2015-05-031-4/+13
|
* Fixed doc comment.Martin Odersky2015-05-021-6/+2
|
* New miniphase: ExpandPrivateMartin Odersky2015-05-011-0/+49
A late miniphase which resets private flag of all members that are not accessed from within same class. Replaces logic in RefChecks. Doing this late has two advantages - we can use name expansion, because references are symbolic, so the names of symbols and references to them do not need to correspond anymore. - we can automatically correct for symbols moved in earlier phases (e.g. lifted out by LambdaLift).