summaryrefslogblamecommitdiff
path: root/test/files/neg/java-access-neg/S2.scala
blob: dd0af8d39d0203e4b82d005436f127ef098c46a2 (plain) (tree)
1
2
3
4
5
6
7
8
9
10
11
12
13
14













                                                              
  


















                                                             
  









                                                             
  









                                                               
  



                                               
package a.b
package c

import a.b.J

/** Variations of java-access-pos with us in a nested package.
 */

/** Declaring "override" all the time.
 */
class S1 extends J {
  override private[b] def packageAbstract() = ()      // fail
  override protected[b] def protectedAbstract() = ()
  override def publicAbstract() = ()
  
  override private[b] def packageConcrete() = ()      // fail
  override protected[b] def protectedConcrete() = ()
  override def publicConcrete() = ()
}

/** Implementing abstracts.
 */
class S2 extends J {
  private[b] def packageAbstract() = ()     // fail
  protected[b] def protectedAbstract() = ()
  def publicAbstract() = ()
}

/** Widening access.
 */
class S3 extends J {
  protected[b] def packageAbstract() = ()   // fail
  protected[b] def protectedAbstract() = ()
  def publicAbstract() = ()
  
  override protected[b] def packageConcrete() = ()    // fail
  override protected[b] def protectedConcrete() = ()
  override def publicConcrete() = ()
}
/** More widening.
 */
class S4 extends J {
  private[a] def packageAbstract() = ()         // fail
  protected[a] def protectedAbstract() = ()
  def publicAbstract() = ()
  
  override private[a] def packageConcrete() = ()        // fail
  override protected[a] def protectedConcrete() = ()
  override def publicConcrete() = ()
}
/** Yet more widening.
 */
class S5 extends J {
  def packageAbstract() = ()      // fail
  def protectedAbstract() = ()
  def publicAbstract() = ()
  
  override def packageConcrete() = ()   // fail
  override def protectedConcrete() = ()
  override def publicConcrete() = ()
}