Remove quotes around visibility in invisible member diagnostic

This commit is contained in:
Alexander Udalov
2016-07-21 16:12:08 +03:00
parent b6b2303aa7
commit 83000c50ff
37 changed files with 117 additions and 117 deletions

View File

@@ -94,8 +94,8 @@ public class DefaultErrorMessages {
static {
MAP.put(UNRESOLVED_REFERENCE, "Unresolved reference: {0}", ELEMENT_TEXT);
MAP.put(INVISIBLE_REFERENCE, "Cannot access ''{0}'': it is ''{1}'' in {2}", NAME, VISIBILITY, NAME_OF_PARENT_OR_FILE);
MAP.put(INVISIBLE_MEMBER, "Cannot access ''{0}'': it is ''{1}'' in {2}", NAME, VISIBILITY, NAME_OF_PARENT_OR_FILE);
MAP.put(INVISIBLE_REFERENCE, "Cannot access ''{0}'': it is {1} in {2}", NAME, VISIBILITY, NAME_OF_PARENT_OR_FILE);
MAP.put(INVISIBLE_MEMBER, "Cannot access ''{0}'': it is {1} in {2}", NAME, VISIBILITY, NAME_OF_PARENT_OR_FILE);
MAP.put(PROTECTED_CONSTRUCTOR_NOT_IN_SUPER_CALL, "Protected constructor ''{0}'' from other classes can only be used in super-call", Renderers.SHORT_NAMES_IN_TYPES);

View File

@@ -1,7 +1,7 @@
// ERROR: Cannot access 'd': it is 'private' in file
// ERROR: Cannot access 'd': it is 'private' in file
// ERROR: Cannot access 'b': it is 'private' in file
// ERROR: Cannot access 'b': it is 'private' in file
// ERROR: Cannot access 'd': it is private in file
// ERROR: Cannot access 'd': it is private in file
// ERROR: Cannot access 'b': it is private in file
// ERROR: Cannot access 'b': it is private in file
package to
import a.b

View File

@@ -11,8 +11,8 @@ class A {
}
fun foo() {
A.B() // ERROR 1: Cannot access 'B': it is 'private' in 'A'
A.C() // ERROR 2: Cannot access '' : it is 'private' in 'C'
A.B() // ERROR 1: Cannot access 'B': it is private in 'A'
A.C() // ERROR 2: Cannot access '' : it is private in 'C'
A().bar() // ERROR 3: Cannot access 'bar' : it is 'private' in 'A'
A().bar() // ERROR 3: Cannot access 'bar' : it is private in 'A'
}

View File

@@ -1,2 +1,2 @@
<!-- invisibleMember1 -->
Cannot access 'B': it is 'private' in 'A'
Cannot access 'B': it is private in 'A'

View File

@@ -1,2 +1,2 @@
<!-- invisibleMember2 -->
Cannot access '<init>': it is 'private' in 'C'
Cannot access '<init>': it is private in 'C'

View File

@@ -1,2 +1,2 @@
<!-- invisibleMember3 -->
Cannot access 'bar': it is 'private' in 'A'
Cannot access 'bar': it is private in 'A'

View File

@@ -10,7 +10,7 @@ public fun publicInM1Test() {
}
fun access() {
<error descr="[INVISIBLE_MEMBER] Cannot access 'privateInM1': it is 'private' in file">privateInM1</error>()
<error descr="[INVISIBLE_MEMBER] Cannot access 'privateInM1': it is private in file">privateInM1</error>()
internalInM1()
publicInM1()

View File

@@ -10,8 +10,8 @@ public fun publicInM2() {
}
fun access() {
<error descr="[INVISIBLE_MEMBER] Cannot access 'privateInM1': it is 'private' in file">privateInM1</error>()
<error descr="[INVISIBLE_MEMBER] Cannot access 'internalInM1': it is 'internal' in 'shared'">internalInM1</error>()
<error descr="[INVISIBLE_MEMBER] Cannot access 'privateInM1': it is private in file">privateInM1</error>()
<error descr="[INVISIBLE_MEMBER] Cannot access 'internalInM1': it is internal in 'shared'">internalInM1</error>()
publicInM1()
<error descr="[UNRESOLVED_REFERENCE] Unresolved reference: privateInM1Test">privateInM1Test</error>()

View File

@@ -10,15 +10,15 @@ public fun publicInM2Test() {
}
fun access() {
<error descr="[INVISIBLE_MEMBER] Cannot access 'privateInM1': it is 'private' in file">privateInM1</error>()
<error descr="[INVISIBLE_MEMBER] Cannot access 'internalInM1': it is 'internal' in 'shared'">internalInM1</error>()
<error descr="[INVISIBLE_MEMBER] Cannot access 'privateInM1': it is private in file">privateInM1</error>()
<error descr="[INVISIBLE_MEMBER] Cannot access 'internalInM1': it is internal in 'shared'">internalInM1</error>()
publicInM1()
<error descr="[INVISIBLE_MEMBER] Cannot access 'privateInM1Test': it is 'private' in file">privateInM1Test</error>()
<error descr="[INVISIBLE_MEMBER] Cannot access 'internalInM1Test': it is 'internal' in 'test'">internalInM1Test</error>()
<error descr="[INVISIBLE_MEMBER] Cannot access 'privateInM1Test': it is private in file">privateInM1Test</error>()
<error descr="[INVISIBLE_MEMBER] Cannot access 'internalInM1Test': it is internal in 'test'">internalInM1Test</error>()
publicInM1Test()
<error descr="[INVISIBLE_MEMBER] Cannot access 'privateInM2': it is 'private' in file">privateInM2</error>()
<error descr="[INVISIBLE_MEMBER] Cannot access 'privateInM2': it is private in file">privateInM2</error>()
internalInM2()
publicInM2()

View File

@@ -10,23 +10,23 @@ public fun publicInM3Test() {
}
fun access() {
<error descr="[INVISIBLE_MEMBER] Cannot access 'privateInM1': it is 'private' in file">privateInM1</error>()
<error descr="[INVISIBLE_MEMBER] Cannot access 'internalInM1': it is 'internal' in 'shared'">internalInM1</error>()
<error descr="[INVISIBLE_MEMBER] Cannot access 'privateInM1': it is private in file">privateInM1</error>()
<error descr="[INVISIBLE_MEMBER] Cannot access 'internalInM1': it is internal in 'shared'">internalInM1</error>()
publicInM1()
<error descr="[INVISIBLE_MEMBER] Cannot access 'privateInM1Test': it is 'private' in file">privateInM1Test</error>()
<error descr="[INVISIBLE_MEMBER] Cannot access 'internalInM1Test': it is 'internal' in 'test'">internalInM1Test</error>()
<error descr="[INVISIBLE_MEMBER] Cannot access 'privateInM1Test': it is private in file">privateInM1Test</error>()
<error descr="[INVISIBLE_MEMBER] Cannot access 'internalInM1Test': it is internal in 'test'">internalInM1Test</error>()
publicInM1Test()
<error descr="[INVISIBLE_MEMBER] Cannot access 'privateInM2': it is 'private' in file">privateInM2</error>()
<error descr="[INVISIBLE_MEMBER] Cannot access 'internalInM2': it is 'internal' in 'shared'">internalInM2</error>()
<error descr="[INVISIBLE_MEMBER] Cannot access 'privateInM2': it is private in file">privateInM2</error>()
<error descr="[INVISIBLE_MEMBER] Cannot access 'internalInM2': it is internal in 'shared'">internalInM2</error>()
publicInM2()
<error descr="[INVISIBLE_MEMBER] Cannot access 'privateInM2Test': it is 'private' in file">privateInM2Test</error>()
<error descr="[INVISIBLE_MEMBER] Cannot access 'internalInM2Test': it is 'internal' in 'test'">internalInM2Test</error>()
<error descr="[INVISIBLE_MEMBER] Cannot access 'privateInM2Test': it is private in file">privateInM2Test</error>()
<error descr="[INVISIBLE_MEMBER] Cannot access 'internalInM2Test': it is internal in 'test'">internalInM2Test</error>()
publicInM2Test()
<error descr="[INVISIBLE_MEMBER] Cannot access 'privateInM3': it is 'private' in file">privateInM3</error>()
<error descr="[INVISIBLE_MEMBER] Cannot access 'privateInM3': it is private in file">privateInM3</error>()
internalInM3()
publicInM3()

View File

@@ -5,30 +5,30 @@ import m1.*
fun testVisibility() {
PublicClassInM1()
<error descr="[INVISIBLE_MEMBER] Cannot access 'InternalClassInM1': it is 'internal' in 'm1'">InternalClassInM1</error>()
<error descr="[INVISIBLE_MEMBER] Cannot access 'InternalClassInM1': it is internal in 'm1'">InternalClassInM1</error>()
<error descr="[INVISIBLE_MEMBER] Cannot access 'PrivateClassInM1': it is 'private' in file">PrivateClassInM1</error>()
<error descr="[INVISIBLE_MEMBER] Cannot access 'PrivateClassInM1': it is private in file">PrivateClassInM1</error>()
publicFunInM1()
<error descr="[INVISIBLE_MEMBER] Cannot access 'internalFunInM1': it is 'internal' in 'm1'">internalFunInM1</error>()
<error descr="[INVISIBLE_MEMBER] Cannot access 'internalFunInM1': it is internal in 'm1'">internalFunInM1</error>()
<error descr="[INVISIBLE_MEMBER] Cannot access 'privateFunInM1': it is 'private' in file">privateFunInM1</error>()
<error descr="[INVISIBLE_MEMBER] Cannot access 'privateFunInM1': it is private in file">privateFunInM1</error>()
}
public class ClassInM2
public class B: <error descr="[INVISIBLE_MEMBER] Cannot access '<init>': it is 'internal' in 'A'">A</error>() {
public class B: <error descr="[INVISIBLE_MEMBER] Cannot access '<init>': it is internal in 'A'">A</error>() {
fun accessA(<warning descr="[UNUSED_PARAMETER] Parameter 'a' is never used">a</warning>: A) {}
fun f() {
<error descr="[INVISIBLE_MEMBER] Cannot access 'pri': it is 'invisible (private in a supertype)' in 'B'">pri</error>()
<error descr="[INVISIBLE_MEMBER] Cannot access 'pri': it is invisible (private in a supertype) in 'B'">pri</error>()
pro()
pub()
<error descr="[INVISIBLE_MEMBER] Cannot access 'int': it is 'invisible (private in a supertype)' in 'B'">int</error>()
<error descr="[INVISIBLE_MEMBER] Cannot access 'int': it is invisible (private in a supertype) in 'B'">int</error>()
}
}

View File

@@ -4,7 +4,7 @@
// ACTION: Make 'Nested' public
// ACTION: Remove parameter 'arg'
// ERROR: 'internal' function exposes its 'private' parameter type argument Nested
// ERROR: Cannot access 'Nested': it is 'private' in 'Outer'
// ERROR: Cannot access 'Nested': it is private in 'Outer'
class Outer {
private class Nested
@@ -12,4 +12,4 @@ class Outer {
class Generic<T>
internal fun foo(<caret>arg: Generic<Outer.Nested>) {}
internal fun foo(<caret>arg: Generic<Outer.Nested>) {}

View File

@@ -1,6 +1,6 @@
// "Make 'foo' internal" "true"
// ACTION: Make 'foo' public
// ERROR: Cannot access 'foo': it is 'private' in 'First'
// ERROR: Cannot access 'foo': it is private in 'First'
package test

View File

@@ -1,6 +1,6 @@
// "Make 'foo' internal" "true"
// ACTION: Make 'foo' public
// ERROR: Cannot access 'foo': it is 'private' in 'First'
// ERROR: Cannot access 'foo': it is private in 'First'
package test

View File

@@ -1,6 +1,6 @@
// "Make bar internal" "false"
// ACTION: Convert property initializer to getter
// ERROR: Cannot access 'bar': it is 'private' in 'First'
// ERROR: Cannot access 'bar': it is private in 'First'
private data class Data(val x: Int)

View File

@@ -1,6 +1,6 @@
// "Make 'f' internal" "true"
// ACTION: Make 'f' public
// ERROR: Cannot access 'f': it is 'private' in file
// ERROR: Cannot access 'f': it is private in file
package test

View File

@@ -1,6 +1,6 @@
// "Make 'f' internal" "true"
// ACTION: Make 'f' public
// ERROR: Cannot access 'f': it is 'private' in file
// ERROR: Cannot access 'f': it is private in file
package test

View File

@@ -1,6 +1,6 @@
// "Make 'prop' internal" "true"
// ACTION: Make 'prop' public
// ERROR: Cannot access 'prop': it is 'private' in file
// ERROR: Cannot access 'prop': it is private in file
package test

View File

@@ -1,6 +1,6 @@
// "Make 'prop' internal" "true"
// ACTION: Make 'prop' public
// ERROR: Cannot access 'prop': it is 'private' in file
// ERROR: Cannot access 'prop': it is private in file
package test

View File

@@ -1,6 +1,6 @@
// "Make 'prop' internal" "true"
// ACTION: Make 'prop' public
// ERROR: Cannot access 'prop': it is 'private' in file
// ERROR: Cannot access 'prop': it is private in file
package test

View File

@@ -1,6 +1,6 @@
// "Make 'prop' internal" "true"
// ACTION: Make 'prop' public
// ERROR: Cannot access 'prop': it is 'private' in file
// ERROR: Cannot access 'prop': it is private in file
package test

View File

@@ -1,5 +1,5 @@
// "class org.jetbrains.kotlin.idea.quickfix.AddModifierFix" "false"
// ERROR: This type is final, so it cannot be inherited from
// ERROR: Cannot access '<init>': it is 'private' in 'E'
// ERROR: Cannot access '<init>': it is private in 'E'
enum class E {}
class A : E<caret>() {}

View File

@@ -1,4 +1,4 @@
// ERROR: Cannot access 'p': it is 'invisible (private in a supertype)' in 'A'
// ERROR: Cannot access 'p': it is invisible (private in a supertype) in 'A'
enum class E private constructor(private val p: Int) {
A(1) {
override fun bar() {

View File

@@ -2,9 +2,9 @@
'public' subclass exposes its 'internal' supertype InternalClass1 at line 8, column 36
'public' subclass exposes its 'internal' supertype InternalClass2 at line 18, column 36
'public' subclass exposes its 'internal' supertype InternalClass2 at line 19, column 15
Cannot access 'InternalClass1': it is 'internal' in 'test' at line 5, column 13
Cannot access 'InternalClass1': it is 'internal' in 'test' at line 8, column 36
Cannot access 'InternalClass2': it is 'internal' in 'test' at line 19, column 15
Cannot access 'InternalClassAnnotation': it is 'internal' in 'test' at line 10, column 2
Cannot access 'InternalFileAnnotation': it is 'internal' in 'test' at line 1, column 7
Cannot access 'member': it is 'invisible (private in a supertype)' in 'ClassAA1' at line 27, column 25
Cannot access 'InternalClass1': it is internal in 'test' at line 5, column 13
Cannot access 'InternalClass1': it is internal in 'test' at line 8, column 36
Cannot access 'InternalClass2': it is internal in 'test' at line 19, column 15
Cannot access 'InternalClassAnnotation': it is internal in 'test' at line 10, column 2
Cannot access 'InternalFileAnnotation': it is internal in 'test' at line 1, column 7
Cannot access 'member': it is invisible (private in a supertype) in 'ClassAA1' at line 27, column 25

View File

@@ -1,4 +1,4 @@
Cannot access 'funA': it is 'internal' in 'test' at line 4, column 5
Cannot access 'funB': it is 'internal' in 'test' at line 4, column 5
Cannot access 'testFunA': it is 'internal' in 'test' at line 5, column 5
Cannot access 'testFunB': it is 'internal' in 'test' at line 5, column 5
Cannot access 'funA': it is internal in 'test' at line 4, column 5
Cannot access 'funB': it is internal in 'test' at line 4, column 5
Cannot access 'testFunA': it is internal in 'test' at line 5, column 5
Cannot access 'testFunB': it is internal in 'test' at line 5, column 5

View File

@@ -1,8 +1,8 @@
'internal open val member: Int defined in test.ClassBB1' has no access to 'internal abstract val member: Int defined in test.ClassB1', so it cannot override it at line 14, column 14
'public' subclass exposes its 'internal' supertype InternalClass1 at line 8, column 36
'public' subclass exposes its 'internal' supertype InternalClass2 at line 18, column 36
Cannot access 'InternalClass1': it is 'internal' in 'test' at line 5, column 13
Cannot access 'InternalClass1': it is 'internal' in 'test' at line 8, column 36
Cannot access 'InternalClassAnnotation': it is 'internal' in 'test' at line 10, column 2
Cannot access 'InternalTestAnnotation': it is 'internal' in 'test' at line 1, column 7
Cannot access 'member': it is 'invisible (private in a supertype)' in 'ClassAA1' at line 27, column 25
Cannot access 'InternalClass1': it is internal in 'test' at line 5, column 13
Cannot access 'InternalClass1': it is internal in 'test' at line 8, column 36
Cannot access 'InternalClassAnnotation': it is internal in 'test' at line 10, column 2
Cannot access 'InternalTestAnnotation': it is internal in 'test' at line 1, column 7
Cannot access 'member': it is invisible (private in a supertype) in 'ClassAA1' at line 27, column 25

View File

@@ -51,22 +51,22 @@ End of files
Exit code: ABORT
------------------------------------------
COMPILATION FAILED
Cannot access 'A': it is 'private' in file
Cannot access 'A': it is private in file
'public' subclass exposes its 'private' supertype A
'public' generic exposes its 'private' parameter bound type A
Cannot access 'A': it is 'private' in file
Cannot access 'A': it is 'private' in file
Cannot access 'A': it is private in file
Cannot access 'A': it is private in file
'public' function exposes its 'private' parameter type A
Cannot access 'A': it is 'private' in file
Cannot access 'A': it is 'private' in file
Cannot access 'A': it is private in file
Cannot access 'A': it is private in file
'public' function exposes its 'private' return type A
Cannot access 'A': it is 'private' in file
Cannot access 'A': it is 'private' in file
Cannot access 'A': it is 'private' in file
Cannot access 'A': it is 'private' in file
Cannot access 'A': it is private in file
Cannot access 'A': it is private in file
Cannot access 'A': it is private in file
Cannot access 'A': it is private in file
'public' function exposes its 'private' return type A
Cannot access 'A': it is 'private' in file
Cannot access 'A': it is 'private' in file
Cannot access 'A': it is private in file
Cannot access 'A': it is private in file
'public' function exposes its 'private' return type A
================ Step #2 =================

View File

@@ -23,8 +23,8 @@ End of files
Exit code: ABORT
------------------------------------------
COMPILATION FAILED
Cannot access '<init>': it is 'private' in 'A'
Cannot access '<init>': it is 'private' in 'A'
Cannot access '<init>': it is private in 'A'
Cannot access '<init>': it is private in 'A'
================ Step #2 =================

View File

@@ -32,13 +32,13 @@ End of files
Exit code: ABORT
------------------------------------------
COMPILATION FAILED
Cannot access 'A': it is 'private' in file
Cannot access 'A': it is private in file
'public' subclass exposes its 'private' supertype A
'public' function exposes its 'private' return type A
Cannot access 'A': it is 'private' in file
Cannot access 'A': it is 'private' in file
Cannot access 'A': it is private in file
Cannot access 'A': it is private in file
Only safe (?.) or non-null asserted (!!.) calls are allowed on a nullable receiver of type Any?
Cannot access 'x': it is 'invisible (private in a supertype)' in 'B'
Cannot access 'x': it is invisible (private in a supertype) in 'B'
Only safe (?.) or non-null asserted (!!.) calls are allowed on a nullable receiver of type Any?
================ Step #2 =================

View File

@@ -26,7 +26,7 @@ End of files
Exit code: ABORT
------------------------------------------
COMPILATION FAILED
Cannot access 'A': it is 'private' in file
Cannot access 'A': it is private in file
'public' subclass exposes its 'private' supertype A
================ Step #2 =================

View File

@@ -26,9 +26,9 @@ End of files
Exit code: ABORT
------------------------------------------
COMPILATION FAILED
Cannot access 'A': it is 'private' in file
Cannot access 'A': it is private in file
'public' subclass exposes its 'private' supertype A
Cannot access 'A': it is 'private' in file
Cannot access 'A': it is private in file
================ Step #2 =================

View File

@@ -25,11 +25,11 @@ End of files
Exit code: ABORT
------------------------------------------
COMPILATION FAILED
Cannot access 'FileAnnotation': it is 'internal' in 'a'
Cannot access 'A': it is 'internal' in 'a'
Cannot access 'FileAnnotation': it is 'internal' in 'a'
Cannot access 'ClassAnnotation': it is 'internal' in 'a'
Cannot access 'ClassAnnotation': it is 'internal' in 'a'
Cannot access 'FileAnnotation': it is internal in 'a'
Cannot access 'A': it is internal in 'a'
Cannot access 'FileAnnotation': it is internal in 'a'
Cannot access 'ClassAnnotation': it is internal in 'a'
Cannot access 'ClassAnnotation': it is internal in 'a'
'public' function exposes its 'internal' parameter type A
Cannot access 'A': it is 'internal' in 'a'
Cannot access 'a': it is 'internal' in 'a'
Cannot access 'A': it is internal in 'a'
Cannot access 'a': it is internal in 'a'

View File

@@ -29,11 +29,11 @@ End of files
Exit code: ABORT
------------------------------------------
COMPILATION FAILED
Cannot access 'FileAnnotation': it is 'internal' in 'a'
Cannot access 'A': it is 'internal' in 'a'
Cannot access 'FileAnnotation': it is 'internal' in 'a'
Cannot access 'ClassAnnotation': it is 'internal' in 'a'
Cannot access 'ClassAnnotation': it is 'internal' in 'a'
Cannot access 'FileAnnotation': it is internal in 'a'
Cannot access 'A': it is internal in 'a'
Cannot access 'FileAnnotation': it is internal in 'a'
Cannot access 'ClassAnnotation': it is internal in 'a'
Cannot access 'ClassAnnotation': it is internal in 'a'
'public' function exposes its 'internal' parameter type A
Cannot access 'A': it is 'internal' in 'a'
Cannot access 'a': it is 'internal' in 'a'
Cannot access 'A': it is internal in 'a'
Cannot access 'a': it is internal in 'a'

View File

@@ -26,9 +26,9 @@ End of files
Exit code: ABORT
------------------------------------------
COMPILATION FAILED
Cannot access 'InternalFileAnnotation': it is 'internal' in 'a'
Cannot access 'InternalFileAnnotation': it is 'internal' in 'a'
Cannot access 'InternalClassAnnotation': it is 'internal' in 'a'
Cannot access 'InternalClassAnnotation': it is 'internal' in 'a'
Cannot access 'InternalFileAnnotation': it is internal in 'a'
Cannot access 'InternalFileAnnotation': it is internal in 'a'
Cannot access 'InternalClassAnnotation': it is internal in 'a'
Cannot access 'InternalClassAnnotation': it is internal in 'a'
Unresolved reference: InternalA
Unresolved reference: internalA

View File

@@ -10,7 +10,7 @@ End of files
Exit code: ABORT
------------------------------------------
COMPILATION FAILED
Cannot access 'foo': it is 'private' in file
Cannot access 'foo': it is private in file
================ Step #2 =================

View File

@@ -27,11 +27,11 @@ End of files
Exit code: ABORT
------------------------------------------
COMPILATION FAILED
Cannot access 'FileAnnotation': it is 'internal' in 'a'
Cannot access 'A': it is 'internal' in 'a'
Cannot access 'FileAnnotation': it is 'internal' in 'a'
Cannot access 'ClassAnnotation': it is 'internal' in 'a'
Cannot access 'ClassAnnotation': it is 'internal' in 'a'
Cannot access 'FileAnnotation': it is internal in 'a'
Cannot access 'A': it is internal in 'a'
Cannot access 'FileAnnotation': it is internal in 'a'
Cannot access 'ClassAnnotation': it is internal in 'a'
Cannot access 'ClassAnnotation': it is internal in 'a'
Function effective visibility 'public' should be the same or less permissive than its parameter type effective visibility 'internal'
Cannot access 'A': it is 'internal' in 'a'
Cannot access 'a': it is 'internal' in 'a'
Cannot access 'A': it is internal in 'a'
Cannot access 'a': it is internal in 'a'

View File

@@ -6,11 +6,11 @@ module2/src/module2_b.kt
End of files
------------------------------------------
COMPILATION FAILED
Cannot access 'FileAnnotation': it is 'internal' in 'a'
Cannot access 'A': it is 'internal' in 'a'
Cannot access 'FileAnnotation': it is 'internal' in 'a'
Cannot access 'ClassAnnotation': it is 'internal' in 'a'
Cannot access 'ClassAnnotation': it is 'internal' in 'a'
Cannot access 'FileAnnotation': it is internal in 'a'
Cannot access 'A': it is internal in 'a'
Cannot access 'FileAnnotation': it is internal in 'a'
Cannot access 'ClassAnnotation': it is internal in 'a'
Cannot access 'ClassAnnotation': it is internal in 'a'
Function effective visibility 'public' should be the same or less permissive than its parameter type effective visibility 'internal'
Cannot access 'A': it is 'internal' in 'a'
Cannot access 'a': it is 'internal' in 'a'
Cannot access 'A': it is internal in 'a'
Cannot access 'a': it is internal in 'a'