diff --git a/compiler/frontend/src/org/jetbrains/kotlin/resolve/DescriptorResolver.java b/compiler/frontend/src/org/jetbrains/kotlin/resolve/DescriptorResolver.java
index b04e366830e..b1271ea6491 100644
--- a/compiler/frontend/src/org/jetbrains/kotlin/resolve/DescriptorResolver.java
+++ b/compiler/frontend/src/org/jetbrains/kotlin/resolve/DescriptorResolver.java
@@ -462,7 +462,7 @@ public class DescriptorResolver {
parameterDescriptors,
returnType,
Modality.FINAL,
- classDescriptor.getVisibility()
+ Visibilities.PUBLIC // TODO: test
);
trace.record(BindingContext.DATA_CLASS_COPY_FUNCTION, classDescriptor, functionDescriptor);
diff --git a/compiler/testData/diagnostics/tests/annotations/onMultiDeclaration.txt b/compiler/testData/diagnostics/tests/annotations/onMultiDeclaration.txt
index 4dc0567a984..64919807789 100644
--- a/compiler/testData/diagnostics/tests/annotations/onMultiDeclaration.txt
+++ b/compiler/testData/diagnostics/tests/annotations/onMultiDeclaration.txt
@@ -8,7 +8,7 @@ kotlin.data() internal final class P {
internal final val b: kotlin.Int
internal final /*synthesized*/ fun component1(): kotlin.Int
internal final /*synthesized*/ fun component2(): kotlin.Int
- internal final /*synthesized*/ fun copy(/*0*/ a: kotlin.Int = ..., /*1*/ b: kotlin.Int = ...): P
+ public final /*synthesized*/ fun copy(/*0*/ a: kotlin.Int = ..., /*1*/ b: kotlin.Int = ...): P
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
diff --git a/compiler/testData/diagnostics/tests/dataClasses/bothParamsAreNotProperties.txt b/compiler/testData/diagnostics/tests/dataClasses/bothParamsAreNotProperties.txt
index 607bf25ec79..02dae97bfd5 100644
--- a/compiler/testData/diagnostics/tests/dataClasses/bothParamsAreNotProperties.txt
+++ b/compiler/testData/diagnostics/tests/dataClasses/bothParamsAreNotProperties.txt
@@ -4,7 +4,7 @@ internal fun foo(/*0*/ a: A): kotlin.Unit
kotlin.data() internal final class A {
public constructor A(/*0*/ x: kotlin.Int, /*1*/ y: kotlin.String)
- internal final /*synthesized*/ fun copy(/*0*/ x: kotlin.Int, /*1*/ y: kotlin.String): A
+ public final /*synthesized*/ fun copy(/*0*/ x: kotlin.Int, /*1*/ y: kotlin.String): A
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
diff --git a/compiler/testData/diagnostics/tests/dataClasses/componentFunctionInSubClass.txt b/compiler/testData/diagnostics/tests/dataClasses/componentFunctionInSubClass.txt
index 43db13735dd..7498912c2aa 100644
--- a/compiler/testData/diagnostics/tests/dataClasses/componentFunctionInSubClass.txt
+++ b/compiler/testData/diagnostics/tests/dataClasses/componentFunctionInSubClass.txt
@@ -6,7 +6,7 @@ kotlin.data() internal open class A {
public constructor A(/*0*/ x: kotlin.Int)
private final val x: kotlin.Int
private final /*synthesized*/ fun component1(): kotlin.Int
- internal final /*synthesized*/ fun copy(/*0*/ x: kotlin.Int = ...): A
+ public final /*synthesized*/ fun copy(/*0*/ x: kotlin.Int = ...): A
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
@@ -16,7 +16,7 @@ internal final class B : A {
public constructor B()
invisible_fake final override /*1*/ /*fake_override*/ val x: kotlin.Int
internal final fun component1(): kotlin.String
- internal final override /*1*/ /*fake_override*/ fun copy(/*0*/ x: kotlin.Int = ...): A
+ public final override /*1*/ /*fake_override*/ fun copy(/*0*/ x: kotlin.Int = ...): A
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
diff --git a/compiler/testData/diagnostics/tests/dataClasses/componentFunctionVisibility.txt b/compiler/testData/diagnostics/tests/dataClasses/componentFunctionVisibility.txt
index af3c8ce15a2..b7fb6581717 100644
--- a/compiler/testData/diagnostics/tests/dataClasses/componentFunctionVisibility.txt
+++ b/compiler/testData/diagnostics/tests/dataClasses/componentFunctionVisibility.txt
@@ -10,7 +10,7 @@ kotlin.data() internal open class A {
private final /*synthesized*/ fun component1(): kotlin.Int
protected final /*synthesized*/ fun component2(): kotlin.String
public final /*synthesized*/ fun component3(): kotlin.Any
- internal final /*synthesized*/ fun copy(/*0*/ x: kotlin.Int = ..., /*1*/ y: kotlin.String = ..., /*2*/ z: kotlin.Any = ...): A
+ public final /*synthesized*/ fun copy(/*0*/ x: kotlin.Int = ..., /*1*/ y: kotlin.String = ..., /*2*/ z: kotlin.Any = ...): A
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
@@ -24,7 +24,7 @@ internal final class B : A {
invisible_fake final override /*1*/ /*fake_override*/ fun component1(): kotlin.Int
protected final override /*1*/ /*fake_override*/ fun component2(): kotlin.String
public final override /*1*/ /*fake_override*/ fun component3(): kotlin.Any
- internal final override /*1*/ /*fake_override*/ fun copy(/*0*/ x: kotlin.Int = ..., /*1*/ y: kotlin.String = ..., /*2*/ z: kotlin.Any = ...): A
+ public final override /*1*/ /*fake_override*/ fun copy(/*0*/ x: kotlin.Int = ..., /*1*/ y: kotlin.String = ..., /*2*/ z: kotlin.Any = ...): A
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
internal final fun foo(): kotlin.Unit
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
diff --git a/compiler/testData/diagnostics/tests/dataClasses/componentFunctionsAreFinal.txt b/compiler/testData/diagnostics/tests/dataClasses/componentFunctionsAreFinal.txt
index 0926f65096b..3f6e7de8def 100644
--- a/compiler/testData/diagnostics/tests/dataClasses/componentFunctionsAreFinal.txt
+++ b/compiler/testData/diagnostics/tests/dataClasses/componentFunctionsAreFinal.txt
@@ -8,7 +8,7 @@ kotlin.data() internal open class A {
internal final val y: kotlin.String
internal final /*synthesized*/ fun component1(): kotlin.Int
internal final /*synthesized*/ fun component2(): kotlin.String
- internal final /*synthesized*/ fun copy(/*0*/ x: kotlin.Int = ..., /*1*/ y: kotlin.String = ...): A
+ public final /*synthesized*/ fun copy(/*0*/ x: kotlin.Int = ..., /*1*/ y: kotlin.String = ...): A
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
@@ -20,7 +20,7 @@ internal final class B : A {
internal final override /*1*/ /*fake_override*/ val y: kotlin.String
internal open override /*1*/ fun component1(): kotlin.Int
internal open override /*1*/ fun component2(): kotlin.Int
- internal final override /*1*/ /*fake_override*/ fun copy(/*0*/ x: kotlin.Int = ..., /*1*/ y: kotlin.String = ...): A
+ public final override /*1*/ /*fake_override*/ fun copy(/*0*/ x: kotlin.Int = ..., /*1*/ y: kotlin.String = ...): A
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
diff --git a/compiler/testData/diagnostics/tests/dataClasses/componentNamedComponent1.txt b/compiler/testData/diagnostics/tests/dataClasses/componentNamedComponent1.txt
index cbc5296814a..b7dd1ee321f 100644
--- a/compiler/testData/diagnostics/tests/dataClasses/componentNamedComponent1.txt
+++ b/compiler/testData/diagnostics/tests/dataClasses/componentNamedComponent1.txt
@@ -6,7 +6,7 @@ kotlin.data() internal final class A {
public constructor A(/*0*/ component1: kotlin.Int)
internal final val component1: kotlin.Int
internal final /*synthesized*/ fun component1(): kotlin.Int
- internal final /*synthesized*/ fun copy(/*0*/ component1: kotlin.Int = ...): A
+ public final /*synthesized*/ fun copy(/*0*/ component1: kotlin.Int = ...): A
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
diff --git a/compiler/testData/diagnostics/tests/dataClasses/conflictingCopyOverloads.txt b/compiler/testData/diagnostics/tests/dataClasses/conflictingCopyOverloads.txt
index 65677453ff8..8441b2e7845 100644
--- a/compiler/testData/diagnostics/tests/dataClasses/conflictingCopyOverloads.txt
+++ b/compiler/testData/diagnostics/tests/dataClasses/conflictingCopyOverloads.txt
@@ -8,7 +8,7 @@ kotlin.data() internal final class A {
internal final /*synthesized*/ fun component2(): kotlin.String
internal final fun copy(/*0*/ x: kotlin.Int, /*1*/ y: kotlin.String): A
internal final fun copy(/*0*/ x: kotlin.Int, /*1*/ y: kotlin.String): kotlin.Int
- internal final /*synthesized*/ fun copy(/*0*/ x: kotlin.Int = ..., /*1*/ y: kotlin.String = ...): A
+ public final /*synthesized*/ fun copy(/*0*/ x: kotlin.Int = ..., /*1*/ y: kotlin.String = ...): A
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
diff --git a/compiler/testData/diagnostics/tests/dataClasses/conflictingOverloads.txt b/compiler/testData/diagnostics/tests/dataClasses/conflictingOverloads.txt
index e33da4d7a28..04dcb26c7b6 100644
--- a/compiler/testData/diagnostics/tests/dataClasses/conflictingOverloads.txt
+++ b/compiler/testData/diagnostics/tests/dataClasses/conflictingOverloads.txt
@@ -8,7 +8,7 @@ kotlin.data() internal final class A {
internal final /*synthesized*/ fun component1(): kotlin.Int
internal final fun component2(): kotlin.Int
internal final /*synthesized*/ fun component2(): kotlin.String
- internal final /*synthesized*/ fun copy(/*0*/ x: kotlin.Int = ..., /*1*/ y: kotlin.String = ...): A
+ public final /*synthesized*/ fun copy(/*0*/ x: kotlin.Int = ..., /*1*/ y: kotlin.String = ...): A
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
diff --git a/compiler/testData/diagnostics/tests/dataClasses/dataClassOverrideConflict.txt b/compiler/testData/diagnostics/tests/dataClasses/dataClassOverrideConflict.txt
index dcc86454188..48b4da7fa16 100644
--- a/compiler/testData/diagnostics/tests/dataClasses/dataClassOverrideConflict.txt
+++ b/compiler/testData/diagnostics/tests/dataClasses/dataClassOverrideConflict.txt
@@ -6,7 +6,7 @@ kotlin.data() internal open class A {
internal final val y: kotlin.String
internal final /*synthesized*/ fun component1(): kotlin.Int
internal final /*synthesized*/ fun component2(): kotlin.String
- internal final /*synthesized*/ fun copy(/*0*/ x: kotlin.Int = ..., /*1*/ y: kotlin.String = ...): A
+ public final /*synthesized*/ fun copy(/*0*/ x: kotlin.Int = ..., /*1*/ y: kotlin.String = ...): A
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
@@ -19,8 +19,8 @@ kotlin.data() internal final class B : A {
internal final val z: kotlin.String
internal final override /*1*/ /*synthesized*/ fun component1(): kotlin.String
internal final override /*1*/ /*fake_override*/ fun component2(): kotlin.String
- internal final override /*1*/ /*fake_override*/ fun copy(/*0*/ x: kotlin.Int = ..., /*1*/ y: kotlin.String = ...): A
- internal final /*synthesized*/ fun copy(/*0*/ z: kotlin.String = ...): B
+ public final override /*1*/ /*fake_override*/ fun copy(/*0*/ x: kotlin.Int = ..., /*1*/ y: kotlin.String = ...): A
+ public final /*synthesized*/ fun copy(/*0*/ z: kotlin.String = ...): B
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
diff --git a/compiler/testData/diagnostics/tests/dataClasses/emptyConstructor.txt b/compiler/testData/diagnostics/tests/dataClasses/emptyConstructor.txt
index 5c53ff4d815..88a821d1813 100644
--- a/compiler/testData/diagnostics/tests/dataClasses/emptyConstructor.txt
+++ b/compiler/testData/diagnostics/tests/dataClasses/emptyConstructor.txt
@@ -4,7 +4,7 @@ internal fun foo(/*0*/ a: A): kotlin.Unit
kotlin.data() internal final class A {
public constructor A()
- internal final /*synthesized*/ fun copy(): A
+ public final /*synthesized*/ fun copy(): A
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
diff --git a/compiler/testData/diagnostics/tests/dataClasses/firstParamIsVal.txt b/compiler/testData/diagnostics/tests/dataClasses/firstParamIsVal.txt
index 6f3732f7191..822f50fc011 100644
--- a/compiler/testData/diagnostics/tests/dataClasses/firstParamIsVal.txt
+++ b/compiler/testData/diagnostics/tests/dataClasses/firstParamIsVal.txt
@@ -6,7 +6,7 @@ kotlin.data() internal final class A {
public constructor A(/*0*/ x: kotlin.Int, /*1*/ y: kotlin.String)
internal final val x: kotlin.Int
internal final /*synthesized*/ fun component1(): kotlin.Int
- internal final /*synthesized*/ fun copy(/*0*/ x: kotlin.Int = ..., /*1*/ y: kotlin.String): A
+ public final /*synthesized*/ fun copy(/*0*/ x: kotlin.Int = ..., /*1*/ y: kotlin.String): A
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
diff --git a/compiler/testData/diagnostics/tests/dataClasses/firstParamIsVar.txt b/compiler/testData/diagnostics/tests/dataClasses/firstParamIsVar.txt
index dbb2fe2b384..f5939611929 100644
--- a/compiler/testData/diagnostics/tests/dataClasses/firstParamIsVar.txt
+++ b/compiler/testData/diagnostics/tests/dataClasses/firstParamIsVar.txt
@@ -6,7 +6,7 @@ kotlin.data() internal final class A {
public constructor A(/*0*/ x: kotlin.Int, /*1*/ y: kotlin.String)
internal final var x: kotlin.Int
internal final /*synthesized*/ fun component1(): kotlin.Int
- internal final /*synthesized*/ fun copy(/*0*/ x: kotlin.Int = ..., /*1*/ y: kotlin.String): A
+ public final /*synthesized*/ fun copy(/*0*/ x: kotlin.Int = ..., /*1*/ y: kotlin.String): A
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
diff --git a/compiler/testData/diagnostics/tests/dataClasses/implementTraitWhichHasComponent1.txt b/compiler/testData/diagnostics/tests/dataClasses/implementTraitWhichHasComponent1.txt
index e8f1f874a7a..3a9d8458078 100644
--- a/compiler/testData/diagnostics/tests/dataClasses/implementTraitWhichHasComponent1.txt
+++ b/compiler/testData/diagnostics/tests/dataClasses/implementTraitWhichHasComponent1.txt
@@ -4,7 +4,7 @@ kotlin.data() internal final class A : T {
public constructor A(/*0*/ x: kotlin.Int)
internal final val x: kotlin.Int
internal final override /*1*/ /*synthesized*/ fun component1(): kotlin.Int
- internal final /*synthesized*/ fun copy(/*0*/ x: kotlin.Int = ...): A
+ public final /*synthesized*/ fun copy(/*0*/ x: kotlin.Int = ...): A
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
diff --git a/compiler/testData/diagnostics/tests/dataClasses/implementTraitWhichHasFinalComponent1.txt b/compiler/testData/diagnostics/tests/dataClasses/implementTraitWhichHasFinalComponent1.txt
index b4cb32f8591..9d64802d140 100644
--- a/compiler/testData/diagnostics/tests/dataClasses/implementTraitWhichHasFinalComponent1.txt
+++ b/compiler/testData/diagnostics/tests/dataClasses/implementTraitWhichHasFinalComponent1.txt
@@ -4,7 +4,7 @@ kotlin.data() internal final class A : T {
public constructor A(/*0*/ x: kotlin.Int)
internal final val x: kotlin.Int
internal final override /*1*/ /*synthesized*/ fun component1(): kotlin.Int
- internal final /*synthesized*/ fun copy(/*0*/ x: kotlin.Int = ...): A
+ public final /*synthesized*/ fun copy(/*0*/ x: kotlin.Int = ...): A
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
diff --git a/compiler/testData/diagnostics/tests/dataClasses/multiDeclaration.txt b/compiler/testData/diagnostics/tests/dataClasses/multiDeclaration.txt
index a75cc91f2de..21ed2ce345f 100644
--- a/compiler/testData/diagnostics/tests/dataClasses/multiDeclaration.txt
+++ b/compiler/testData/diagnostics/tests/dataClasses/multiDeclaration.txt
@@ -8,7 +8,7 @@ kotlin.data() internal final class A {
internal final val y: kotlin.String
internal final /*synthesized*/ fun component1(): kotlin.Int
internal final /*synthesized*/ fun component2(): kotlin.String
- internal final /*synthesized*/ fun copy(/*0*/ x: kotlin.Int = ..., /*1*/ y: kotlin.String = ...): A
+ public final /*synthesized*/ fun copy(/*0*/ x: kotlin.Int = ..., /*1*/ y: kotlin.String = ...): A
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
diff --git a/compiler/testData/diagnostics/tests/dataClasses/multiDeclarationFor.txt b/compiler/testData/diagnostics/tests/dataClasses/multiDeclarationFor.txt
index cddf9ea1a77..c302f696223 100644
--- a/compiler/testData/diagnostics/tests/dataClasses/multiDeclarationFor.txt
+++ b/compiler/testData/diagnostics/tests/dataClasses/multiDeclarationFor.txt
@@ -8,7 +8,7 @@ kotlin.data() internal final class A {
internal final val y: kotlin.String
internal final /*synthesized*/ fun component1(): kotlin.Int
internal final /*synthesized*/ fun component2(): kotlin.String
- internal final /*synthesized*/ fun copy(/*0*/ x: kotlin.Int = ..., /*1*/ y: kotlin.String = ...): A
+ public final /*synthesized*/ fun copy(/*0*/ x: kotlin.Int = ..., /*1*/ y: kotlin.String = ...): A
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
diff --git a/compiler/testData/diagnostics/tests/dataClasses/noConstructor.txt b/compiler/testData/diagnostics/tests/dataClasses/noConstructor.txt
index 5c53ff4d815..88a821d1813 100644
--- a/compiler/testData/diagnostics/tests/dataClasses/noConstructor.txt
+++ b/compiler/testData/diagnostics/tests/dataClasses/noConstructor.txt
@@ -4,7 +4,7 @@ internal fun foo(/*0*/ a: A): kotlin.Unit
kotlin.data() internal final class A {
public constructor A()
- internal final /*synthesized*/ fun copy(): A
+ public final /*synthesized*/ fun copy(): A
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
diff --git a/compiler/testData/diagnostics/tests/dataClasses/oneValParam.txt b/compiler/testData/diagnostics/tests/dataClasses/oneValParam.txt
index a49ce461593..5357e22ed9b 100644
--- a/compiler/testData/diagnostics/tests/dataClasses/oneValParam.txt
+++ b/compiler/testData/diagnostics/tests/dataClasses/oneValParam.txt
@@ -6,7 +6,7 @@ kotlin.data() internal final class A {
public constructor A(/*0*/ x: kotlin.Int)
internal final val x: kotlin.Int
internal final /*synthesized*/ fun component1(): kotlin.Int
- internal final /*synthesized*/ fun copy(/*0*/ x: kotlin.Int = ...): A
+ public final /*synthesized*/ fun copy(/*0*/ x: kotlin.Int = ...): A
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
diff --git a/compiler/testData/diagnostics/tests/dataClasses/overrideInvisibleMember.txt b/compiler/testData/diagnostics/tests/dataClasses/overrideInvisibleMember.txt
index 61c5d1d985a..5c76abbd8f7 100644
--- a/compiler/testData/diagnostics/tests/dataClasses/overrideInvisibleMember.txt
+++ b/compiler/testData/diagnostics/tests/dataClasses/overrideInvisibleMember.txt
@@ -4,7 +4,7 @@ kotlin.data() internal open class D {
public constructor D(/*0*/ x: kotlin.Int)
private final val x: kotlin.Int
private final /*synthesized*/ fun component1(): kotlin.Int
- internal final /*synthesized*/ fun copy(/*0*/ x: kotlin.Int = ...): D
+ public final /*synthesized*/ fun copy(/*0*/ x: kotlin.Int = ...): D
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
@@ -14,7 +14,7 @@ kotlin.data() internal final class E : D {
public constructor E(/*0*/ x: kotlin.Int)
internal open val x: kotlin.Int
internal final /*synthesized*/ fun component1(): kotlin.Int
- internal final override /*1*/ /*synthesized*/ fun copy(/*0*/ x: kotlin.Int = ...): E
+ public final override /*1*/ /*synthesized*/ fun copy(/*0*/ x: kotlin.Int = ...): E
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
diff --git a/compiler/testData/diagnostics/tests/dataClasses/paramNameSameToField.txt b/compiler/testData/diagnostics/tests/dataClasses/paramNameSameToField.txt
index 612a5e40095..42aee981d44 100644
--- a/compiler/testData/diagnostics/tests/dataClasses/paramNameSameToField.txt
+++ b/compiler/testData/diagnostics/tests/dataClasses/paramNameSameToField.txt
@@ -8,7 +8,7 @@ kotlin.data() internal final class A {
internal final val foo: kotlin.String
internal final val other: kotlin.Long
internal final /*synthesized*/ fun component1(): kotlin.Int
- internal final /*synthesized*/ fun copy(/*0*/ foo: kotlin.String, /*1*/ bar: kotlin.Int = ..., /*2*/ other: kotlin.Long): A
+ public final /*synthesized*/ fun copy(/*0*/ foo: kotlin.String, /*1*/ bar: kotlin.Int = ..., /*2*/ other: kotlin.Long): A
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
diff --git a/compiler/testData/diagnostics/tests/dataClasses/secondParamIsVal.txt b/compiler/testData/diagnostics/tests/dataClasses/secondParamIsVal.txt
index 24dedd4511d..0c4ede76a5e 100644
--- a/compiler/testData/diagnostics/tests/dataClasses/secondParamIsVal.txt
+++ b/compiler/testData/diagnostics/tests/dataClasses/secondParamIsVal.txt
@@ -6,7 +6,7 @@ kotlin.data() internal final class A {
public constructor A(/*0*/ x: kotlin.Int, /*1*/ y: kotlin.String)
internal final val y: kotlin.String
internal final /*synthesized*/ fun component1(): kotlin.String
- internal final /*synthesized*/ fun copy(/*0*/ x: kotlin.Int, /*1*/ y: kotlin.String = ...): A
+ public final /*synthesized*/ fun copy(/*0*/ x: kotlin.Int, /*1*/ y: kotlin.String = ...): A
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
diff --git a/compiler/testData/diagnostics/tests/dataClasses/secondParamIsVar.txt b/compiler/testData/diagnostics/tests/dataClasses/secondParamIsVar.txt
index 9931135dc62..255f81c3550 100644
--- a/compiler/testData/diagnostics/tests/dataClasses/secondParamIsVar.txt
+++ b/compiler/testData/diagnostics/tests/dataClasses/secondParamIsVar.txt
@@ -6,7 +6,7 @@ kotlin.data() internal final class A {
public constructor A(/*0*/ x: kotlin.Int, /*1*/ y: kotlin.String)
internal final var y: kotlin.String
internal final /*synthesized*/ fun component1(): kotlin.String
- internal final /*synthesized*/ fun copy(/*0*/ x: kotlin.Int, /*1*/ y: kotlin.String = ...): A
+ public final /*synthesized*/ fun copy(/*0*/ x: kotlin.Int, /*1*/ y: kotlin.String = ...): A
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
diff --git a/compiler/testData/diagnostics/tests/dataClasses/twoValParams.txt b/compiler/testData/diagnostics/tests/dataClasses/twoValParams.txt
index a75cc91f2de..21ed2ce345f 100644
--- a/compiler/testData/diagnostics/tests/dataClasses/twoValParams.txt
+++ b/compiler/testData/diagnostics/tests/dataClasses/twoValParams.txt
@@ -8,7 +8,7 @@ kotlin.data() internal final class A {
internal final val y: kotlin.String
internal final /*synthesized*/ fun component1(): kotlin.Int
internal final /*synthesized*/ fun component2(): kotlin.String
- internal final /*synthesized*/ fun copy(/*0*/ x: kotlin.Int = ..., /*1*/ y: kotlin.String = ...): A
+ public final /*synthesized*/ fun copy(/*0*/ x: kotlin.Int = ..., /*1*/ y: kotlin.String = ...): A
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
diff --git a/compiler/testData/diagnostics/tests/dataClasses/twoVarParams.txt b/compiler/testData/diagnostics/tests/dataClasses/twoVarParams.txt
index 494a9c2a9a7..8a57a6913d3 100644
--- a/compiler/testData/diagnostics/tests/dataClasses/twoVarParams.txt
+++ b/compiler/testData/diagnostics/tests/dataClasses/twoVarParams.txt
@@ -8,7 +8,7 @@ kotlin.data() internal final class A {
internal final var y: kotlin.String
internal final /*synthesized*/ fun component1(): kotlin.Int
internal final /*synthesized*/ fun component2(): kotlin.String
- internal final /*synthesized*/ fun copy(/*0*/ x: kotlin.Int = ..., /*1*/ y: kotlin.String = ...): A
+ public final /*synthesized*/ fun copy(/*0*/ x: kotlin.Int = ..., /*1*/ y: kotlin.String = ...): A
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
diff --git a/compiler/testData/diagnostics/tests/declarationChecks/multiDeclarations/kt2829.txt b/compiler/testData/diagnostics/tests/declarationChecks/multiDeclarations/kt2829.txt
index ee7438e4666..9760a5c1d91 100644
--- a/compiler/testData/diagnostics/tests/declarationChecks/multiDeclarations/kt2829.txt
+++ b/compiler/testData/diagnostics/tests/declarationChecks/multiDeclarations/kt2829.txt
@@ -11,7 +11,7 @@ package test {
internal final val b: B
internal final /*synthesized*/ fun component1(): A
internal final /*synthesized*/ fun component2(): B
- internal final /*synthesized*/ fun copy(/*0*/ a: A = ..., /*1*/ b: B = ...): test.Pair
+ public final /*synthesized*/ fun copy(/*0*/ a: A = ..., /*1*/ b: B = ...): test.Pair
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
diff --git a/compiler/testData/diagnostics/tests/duplicateJvmSignature/specialNames/dataClassCopy.txt b/compiler/testData/diagnostics/tests/duplicateJvmSignature/specialNames/dataClassCopy.txt
index 8d26af4348c..dd9299661e2 100644
--- a/compiler/testData/diagnostics/tests/duplicateJvmSignature/specialNames/dataClassCopy.txt
+++ b/compiler/testData/diagnostics/tests/duplicateJvmSignature/specialNames/dataClassCopy.txt
@@ -4,7 +4,7 @@ kotlin.data() internal final class C {
public constructor C(/*0*/ c: kotlin.Int)
internal final val c: kotlin.Int
internal final /*synthesized*/ fun component1(): kotlin.Int
- internal final /*synthesized*/ fun copy(/*0*/ c: kotlin.Int = ...): C
+ public final /*synthesized*/ fun copy(/*0*/ c: kotlin.Int = ...): C
internal final fun `copy$default`(/*0*/ c: C, /*1*/ x: kotlin.Int, /*2*/ m: kotlin.Int): C
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
diff --git a/compiler/testData/diagnostics/tests/operatorsOverloading/kt3450.txt b/compiler/testData/diagnostics/tests/operatorsOverloading/kt3450.txt
index 637a0e6dc1d..df778dd9373 100644
--- a/compiler/testData/diagnostics/tests/operatorsOverloading/kt3450.txt
+++ b/compiler/testData/diagnostics/tests/operatorsOverloading/kt3450.txt
@@ -30,7 +30,7 @@ kotlin.data() internal final class Pair*0*/ out A, /*1*/ out B> {
internal final val second: B
internal final /*synthesized*/ fun component1(): A
internal final /*synthesized*/ fun component2(): B
- internal final /*synthesized*/ fun copy(/*0*/ first: A = ..., /*1*/ second: B = ...): Pair
+ public final /*synthesized*/ fun copy(/*0*/ first: A = ..., /*1*/ second: B = ...): Pair
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
diff --git a/compiler/testData/diagnostics/testsWithStdLib/functionLiterals/pseudocodeMemoryOverhead.txt b/compiler/testData/diagnostics/testsWithStdLib/functionLiterals/pseudocodeMemoryOverhead.txt
index 68c750f6fd4..984cb66deb3 100644
--- a/compiler/testData/diagnostics/testsWithStdLib/functionLiterals/pseudocodeMemoryOverhead.txt
+++ b/compiler/testData/diagnostics/testsWithStdLib/functionLiterals/pseudocodeMemoryOverhead.txt
@@ -41,7 +41,7 @@ kotlin.data() private final class BinaryOperationKey*0*/ A, /*1*/ B> {
internal final /*synthesized*/ fun component1(): CompileTimeType
internal final /*synthesized*/ fun component2(): CompileTimeType
internal final /*synthesized*/ fun component3(): kotlin.String
- private final /*synthesized*/ fun copy(/*0*/ f: CompileTimeType = ..., /*1*/ g: CompileTimeType = ..., /*2*/ functionName: kotlin.String = ...): BinaryOperationKey
+ public final /*synthesized*/ fun copy(/*0*/ f: CompileTimeType = ..., /*1*/ g: CompileTimeType = ..., /*2*/ functionName: kotlin.String = ...): BinaryOperationKey
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
@@ -60,7 +60,7 @@ kotlin.data() private final class UnaryOperationKey*0*/ A> {
internal final val functionName: kotlin.String
internal final /*synthesized*/ fun component1(): CompileTimeType
internal final /*synthesized*/ fun component2(): kotlin.String
- private final /*synthesized*/ fun copy(/*0*/ f: CompileTimeType = ..., /*1*/ functionName: kotlin.String = ...): UnaryOperationKey
+ public final /*synthesized*/ fun copy(/*0*/ f: CompileTimeType = ..., /*1*/ functionName: kotlin.String = ...): UnaryOperationKey
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
diff --git a/compiler/testData/loadJava/compiledKotlin/dataClass/MixedComponents.txt b/compiler/testData/loadJava/compiledKotlin/dataClass/MixedComponents.txt
index 4d21f83acd2..f5d01e7f38c 100644
--- a/compiler/testData/loadJava/compiledKotlin/dataClass/MixedComponents.txt
+++ b/compiler/testData/loadJava/compiledKotlin/dataClass/MixedComponents.txt
@@ -9,5 +9,5 @@ kotlin.data() internal final class DataClass {
internal final fun (): kotlin.Double
internal final /*synthesized*/ fun component1(): kotlin.String
internal final /*synthesized*/ fun component2(): kotlin.Double
- internal final /*synthesized*/ fun copy(/*0*/ x: kotlin.String = ..., /*1*/ y: kotlin.Int, /*2*/ z: kotlin.Double = ...): test.DataClass
+ public final /*synthesized*/ fun copy(/*0*/ x: kotlin.String = ..., /*1*/ y: kotlin.Int, /*2*/ z: kotlin.Double = ...): test.DataClass
}
diff --git a/compiler/testData/loadJava/compiledKotlin/dataClass/NoComponents.txt b/compiler/testData/loadJava/compiledKotlin/dataClass/NoComponents.txt
index c32e3b6f026..fdd730a692b 100644
--- a/compiler/testData/loadJava/compiledKotlin/dataClass/NoComponents.txt
+++ b/compiler/testData/loadJava/compiledKotlin/dataClass/NoComponents.txt
@@ -2,10 +2,10 @@ package test
kotlin.data() internal final class DataClass {
/*primary*/ public constructor DataClass()
- internal final /*synthesized*/ fun copy(): test.DataClass
+ public final /*synthesized*/ fun copy(): test.DataClass
}
kotlin.data() internal final class OtherDataClass {
/*primary*/ public constructor OtherDataClass()
- internal final /*synthesized*/ fun copy(): test.OtherDataClass
+ public final /*synthesized*/ fun copy(): test.OtherDataClass
}
diff --git a/compiler/testData/loadJava/compiledKotlin/dataClass/OneVal.txt b/compiler/testData/loadJava/compiledKotlin/dataClass/OneVal.txt
index 5c36cf86d10..9ece5919f21 100644
--- a/compiler/testData/loadJava/compiledKotlin/dataClass/OneVal.txt
+++ b/compiler/testData/loadJava/compiledKotlin/dataClass/OneVal.txt
@@ -5,5 +5,5 @@ kotlin.data() internal final class DataClass {
internal final val x: kotlin.String
internal final fun (): kotlin.String
internal final /*synthesized*/ fun component1(): kotlin.String
- internal final /*synthesized*/ fun copy(/*0*/ x: kotlin.String = ...): test.DataClass
+ public final /*synthesized*/ fun copy(/*0*/ x: kotlin.String = ...): test.DataClass
}
diff --git a/compiler/testData/loadJava/compiledKotlin/dataClass/OpenDataClass.txt b/compiler/testData/loadJava/compiledKotlin/dataClass/OpenDataClass.txt
index 6779a04b780..3038f4e2751 100644
--- a/compiler/testData/loadJava/compiledKotlin/dataClass/OpenDataClass.txt
+++ b/compiler/testData/loadJava/compiledKotlin/dataClass/OpenDataClass.txt
@@ -5,5 +5,5 @@ kotlin.data() internal open class DataClass {
internal final val x: kotlin.String
internal final fun (): kotlin.String
internal final /*synthesized*/ fun component1(): kotlin.String
- internal final /*synthesized*/ fun copy(/*0*/ x: kotlin.String = ...): test.DataClass
+ public final /*synthesized*/ fun copy(/*0*/ x: kotlin.String = ...): test.DataClass
}
diff --git a/compiler/testData/loadJava/compiledKotlin/dataClass/OpenPropertyFinalComponent.txt b/compiler/testData/loadJava/compiledKotlin/dataClass/OpenPropertyFinalComponent.txt
index fbeb8127950..eef8cd21b9b 100644
--- a/compiler/testData/loadJava/compiledKotlin/dataClass/OpenPropertyFinalComponent.txt
+++ b/compiler/testData/loadJava/compiledKotlin/dataClass/OpenPropertyFinalComponent.txt
@@ -5,5 +5,5 @@ kotlin.data() internal open class DataClass {
internal open val x: kotlin.String
internal open fun (): kotlin.String
internal final /*synthesized*/ fun component1(): kotlin.String
- internal final /*synthesized*/ fun copy(/*0*/ x: kotlin.String = ...): test.DataClass
+ public final /*synthesized*/ fun copy(/*0*/ x: kotlin.String = ...): test.DataClass
}
diff --git a/compiler/testData/loadJava/compiledKotlin/dataClass/ParamNameSameToField.txt b/compiler/testData/loadJava/compiledKotlin/dataClass/ParamNameSameToField.txt
index 2b3250149b7..beea476a598 100644
--- a/compiler/testData/loadJava/compiledKotlin/dataClass/ParamNameSameToField.txt
+++ b/compiler/testData/loadJava/compiledKotlin/dataClass/ParamNameSameToField.txt
@@ -9,5 +9,5 @@ kotlin.data() internal final class A {
internal final val other: kotlin.Long
internal final fun (): kotlin.Long
internal final /*synthesized*/ fun component1(): kotlin.Int
- internal final /*synthesized*/ fun copy(/*0*/ foo: kotlin.String, /*1*/ bar: kotlin.Int = ..., /*2*/ other: kotlin.Long): test.A
+ public final /*synthesized*/ fun copy(/*0*/ foo: kotlin.String, /*1*/ bar: kotlin.Int = ..., /*2*/ other: kotlin.Long): test.A
}
diff --git a/compiler/testData/loadJava/compiledKotlin/dataClass/TwoVals.txt b/compiler/testData/loadJava/compiledKotlin/dataClass/TwoVals.txt
index 246252f70d6..f1f336a9d2e 100644
--- a/compiler/testData/loadJava/compiledKotlin/dataClass/TwoVals.txt
+++ b/compiler/testData/loadJava/compiledKotlin/dataClass/TwoVals.txt
@@ -8,5 +8,5 @@ kotlin.data() internal final class DataClass {
internal final fun (): kotlin.Int
internal final /*synthesized*/ fun component1(): kotlin.String
internal final /*synthesized*/ fun component2(): kotlin.Int
- internal final /*synthesized*/ fun copy(/*0*/ x: kotlin.String = ..., /*1*/ y: kotlin.Int = ...): test.DataClass
+ public final /*synthesized*/ fun copy(/*0*/ x: kotlin.String = ..., /*1*/ y: kotlin.Int = ...): test.DataClass
}
diff --git a/compiler/testData/loadJava/compiledKotlin/dataClass/TwoVars.txt b/compiler/testData/loadJava/compiledKotlin/dataClass/TwoVars.txt
index f3dfb52d4e3..76f251d89e0 100644
--- a/compiler/testData/loadJava/compiledKotlin/dataClass/TwoVars.txt
+++ b/compiler/testData/loadJava/compiledKotlin/dataClass/TwoVars.txt
@@ -10,5 +10,5 @@ kotlin.data() internal final class DataClass {
internal final fun (/*0*/ : kotlin.Int): kotlin.Unit
internal final /*synthesized*/ fun component1(): kotlin.String
internal final /*synthesized*/ fun component2(): kotlin.Int
- internal final /*synthesized*/ fun copy(/*0*/ x: kotlin.String = ..., /*1*/ y: kotlin.Int = ...): test.DataClass
+ public final /*synthesized*/ fun copy(/*0*/ x: kotlin.String = ..., /*1*/ y: kotlin.Int = ...): test.DataClass
}