A separate test for unsafe property initializers
diff --git a/analysis/symbol-light-classes/tests/org/jetbrains/kotlin/light/classes/symbol/decompiled/SymbolLightClassesByPsiForLibraryTestGenerated.java b/analysis/symbol-light-classes/tests/org/jetbrains/kotlin/light/classes/symbol/decompiled/SymbolLightClassesByPsiForLibraryTestGenerated.java
index 5ac6367..2b8b284 100644
--- a/analysis/symbol-light-classes/tests/org/jetbrains/kotlin/light/classes/symbol/decompiled/SymbolLightClassesByPsiForLibraryTestGenerated.java
+++ b/analysis/symbol-light-classes/tests/org/jetbrains/kotlin/light/classes/symbol/decompiled/SymbolLightClassesByPsiForLibraryTestGenerated.java
@@ -313,6 +313,12 @@
     }
 
     @Test
+    @TestMetadata("unsafePropertyInitializers.kt")
+    public void testUnsafePropertyInitializers() throws Exception {
+        runTest("compiler/testData/asJava/lightClasses/lightClassByPsi/unsafePropertyInitializers.kt");
+    }
+
+    @Test
     @TestMetadata("valueClassInSignature.kt")
     public void testValueClassInSignature() throws Exception {
         runTest("compiler/testData/asJava/lightClasses/lightClassByPsi/valueClassInSignature.kt");
diff --git a/analysis/symbol-light-classes/tests/org/jetbrains/kotlin/light/classes/symbol/source/SymbolLightClassesByPsiForSourceTestGenerated.java b/analysis/symbol-light-classes/tests/org/jetbrains/kotlin/light/classes/symbol/source/SymbolLightClassesByPsiForSourceTestGenerated.java
index 84bb20e..bc9e6b4 100644
--- a/analysis/symbol-light-classes/tests/org/jetbrains/kotlin/light/classes/symbol/source/SymbolLightClassesByPsiForSourceTestGenerated.java
+++ b/analysis/symbol-light-classes/tests/org/jetbrains/kotlin/light/classes/symbol/source/SymbolLightClassesByPsiForSourceTestGenerated.java
@@ -313,6 +313,12 @@
     }
 
     @Test
+    @TestMetadata("unsafePropertyInitializers.kt")
+    public void testUnsafePropertyInitializers() throws Exception {
+        runTest("compiler/testData/asJava/lightClasses/lightClassByPsi/unsafePropertyInitializers.kt");
+    }
+
+    @Test
     @TestMetadata("valueClassInSignature.kt")
     public void testValueClassInSignature() throws Exception {
         runTest("compiler/testData/asJava/lightClasses/lightClassByPsi/valueClassInSignature.kt");
diff --git a/compiler/testData/asJava/lightClasses/lightClassByPsi/facades/properties.fir.java b/compiler/testData/asJava/lightClasses/lightClassByPsi/facades/properties.fir.java
index a726adb..84f814d 100644
--- a/compiler/testData/asJava/lightClasses/lightClassByPsi/facades/properties.fir.java
+++ b/compiler/testData/asJava/lightClasses/lightClassByPsi/facades/properties.fir.java
@@ -3,9 +3,6 @@
   private static final error.NonExistentClass delegatedProp$delegate;
 
   @org.jetbrains.annotations.NotNull()
-  private static final java.lang.Double[] doubleArrayConst = {-1.0, 1.0 / 0.0, -1.0 / 0.0, 0.0 / 0.0} /* initializer type: null */;
-
-  @org.jetbrains.annotations.NotNull()
   private static final java.lang.Object arrayConst = {1L, 2L} /* initializer type: null */;
 
   @org.jetbrains.annotations.NotNull()
@@ -30,9 +27,6 @@
   public static final java.lang.String SUBSYSTEM_DEPRECATED = "This subsystem is deprecated" /* initializer type: java.lang.String */ /* constant value This subsystem is deprecated */;
 
   @org.jetbrains.annotations.Nullable()
-  private static final java.lang.String nothing = null /* initializer type: null */;
-
-  @org.jetbrains.annotations.Nullable()
   private static java.lang.Boolean isEmptyMutable;
 
   @org.jetbrains.annotations.Nullable()
@@ -79,9 +73,6 @@
   protected static final java.lang.String getProtectedWithPrivateSet();//  getProtectedWithPrivateSet()
 
   @org.jetbrains.annotations.NotNull()
-  public static final java.lang.Double[] getDoubleArrayConst();//  getDoubleArrayConst()
-
-  @org.jetbrains.annotations.NotNull()
   public static final java.lang.Object getArrayConst();//  getArrayConst()
 
   @org.jetbrains.annotations.NotNull()
@@ -123,9 +114,6 @@
   @org.jetbrains.annotations.Nullable()
   public static final java.lang.Integer isEmptyInt();//  isEmptyInt()
 
-  @org.jetbrains.annotations.Nullable()
-  public static final java.lang.String getNothing();//  getNothing()
-
   private static final int privateFun();//  privateFun()
 
   protected static final int getF2();//  getF2()
diff --git a/compiler/testData/asJava/lightClasses/lightClassByPsi/facades/properties.java b/compiler/testData/asJava/lightClasses/lightClassByPsi/facades/properties.java
index 0390eb4..3db2791 100644
--- a/compiler/testData/asJava/lightClasses/lightClassByPsi/facades/properties.java
+++ b/compiler/testData/asJava/lightClasses/lightClassByPsi/facades/properties.java
@@ -1,27 +1,14 @@
-public final class C /* C*/ {
-  public  C();//  .ctor()
-}
-
 public final class PropertiesKt /* PropertiesKt*/ {
   @org.jetbrains.annotations.NotNull()
-  private static final java.lang.Double[] doubleArrayConst;
-
-  @org.jetbrains.annotations.NotNull()
   private static final java.lang.Object arrayConst;
 
   @org.jetbrains.annotations.NotNull()
   private static final java.lang.String x;
 
   @org.jetbrains.annotations.NotNull()
-  private static final kotlin.annotation.AnnotationTarget[] enums;
-
-  @org.jetbrains.annotations.NotNull()
   private static final kotlin.jvm.functions.Function1<java.lang.Integer, java.lang.Integer> sum;
 
   @org.jetbrains.annotations.NotNull()
-  private static final kotlin.reflect.KClass<? extends java.lang.Object>[] classes;
-
-  @org.jetbrains.annotations.NotNull()
   private static java.lang.String name;
 
   @org.jetbrains.annotations.NotNull()
@@ -34,9 +21,6 @@
   public static final java.lang.String SUBSYSTEM_DEPRECATED = "This subsystem is deprecated" /* initializer type: java.lang.String */ /* constant value This subsystem is deprecated */;
 
   @org.jetbrains.annotations.Nullable()
-  private static final java.lang.String nothing;
-
-  @org.jetbrains.annotations.Nullable()
   private static java.lang.Boolean isEmptyMutable;
 
   @org.jetbrains.annotations.Nullable()
@@ -87,9 +71,6 @@
   protected static final java.lang.String getProtectedWithPrivateSet();//  getProtectedWithPrivateSet()
 
   @org.jetbrains.annotations.NotNull()
-  public static final java.lang.Double[] getDoubleArrayConst();//  getDoubleArrayConst()
-
-  @org.jetbrains.annotations.NotNull()
   public static final java.lang.Object getArrayConst();//  getArrayConst()
 
   @org.jetbrains.annotations.NotNull()
@@ -114,14 +95,8 @@
   public static final java.lang.String getX();//  getX()
 
   @org.jetbrains.annotations.NotNull()
-  public static final kotlin.annotation.AnnotationTarget[] getEnums();//  getEnums()
-
-  @org.jetbrains.annotations.NotNull()
   public static final kotlin.jvm.functions.Function1<java.lang.Integer, java.lang.Integer> getSum();//  getSum()
 
-  @org.jetbrains.annotations.NotNull()
-  public static final kotlin.reflect.KClass<? extends java.lang.Object>[] getClasses();//  getClasses()
-
   @org.jetbrains.annotations.Nullable()
   public static final java.lang.Boolean getIslowercase();//  getIslowercase()
 
@@ -137,9 +112,6 @@
   @org.jetbrains.annotations.Nullable()
   public static final java.lang.Integer isEmptyInt();//  isEmptyInt()
 
-  @org.jetbrains.annotations.Nullable()
-  public static final java.lang.String getNothing();//  getNothing()
-
   private static final int privateFun();//  privateFun()
 
   protected static final int getF2();//  getF2()
diff --git a/compiler/testData/asJava/lightClasses/lightClassByPsi/facades/properties.kt b/compiler/testData/asJava/lightClasses/lightClassByPsi/facades/properties.kt
index a1351bf..956e274 100644
--- a/compiler/testData/asJava/lightClasses/lightClassByPsi/facades/properties.kt
+++ b/compiler/testData/asJava/lightClasses/lightClassByPsi/facades/properties.kt
@@ -3,11 +3,8 @@
 
 val f1 = 2
 
-val nothing: String? = null
-
 val intConst: dynamic = 30
 val arrayConst: Any = byteArrayOf(1,2)
-val doubleArrayConst = arrayOf(-1.0, 1.0 / 0.0, -1.0 / 0.0, 0.0 / 0.0)
 
 protected var f2 = 3
 
diff --git a/compiler/testData/asJava/lightClasses/lightClassByPsi/unsafePropertyInitializers.java b/compiler/testData/asJava/lightClasses/lightClassByPsi/unsafePropertyInitializers.java
new file mode 100644
index 0000000..dfbd68cc
--- /dev/null
+++ b/compiler/testData/asJava/lightClasses/lightClassByPsi/unsafePropertyInitializers.java
@@ -0,0 +1,91 @@
+public final class UnsafePropertyInitializersKt /* UnsafePropertyInitializersKt*/ {
+  @org.jetbrains.annotations.NotNull()
+  private static final char[] arrayOfCharPrimitives;
+
+  @org.jetbrains.annotations.NotNull()
+  private static final double[] arrayOfDoublePrimitives = {5.0, -1.23E-7, 4.9E-324, 1.7976931348623157E308, 0.0 / 0.0, 1.0 / 0.0, -1.0 / 0.0, 0.0 / 0.0, 1.0 / 0.0, -1.0 / 0.0} /* initializer type: null */;
+
+  @org.jetbrains.annotations.NotNull()
+  private static final float[] arrayOfFloatPrimitives = {5.0f, -1.23E-7f, 1.4E-45f, 3.4028235E38f, 0.0F / 0.0F, 1.0F / 0.0F, -1.0F / 0.0F, 0.0F / 0.0F, 1.0F / 0.0F, -1.0F / 0.0F} /* initializer type: null */;
+
+  @org.jetbrains.annotations.NotNull()
+  private static final int[] arrayOfIntPrimitives = {5, -1L, 2147483647, -2147483648} /* initializer type: null */;
+
+  @org.jetbrains.annotations.NotNull()
+  private static final java.lang.Character[] arrayOfCharObjects;
+
+  @org.jetbrains.annotations.NotNull()
+  private static final java.lang.Double[] arrayOfDoubleObjects = {5.0, -1.23E-7, 4.9E-324, 1.7976931348623157E308, 0.0 / 0.0, 1.0 / 0.0, -1.0 / 0.0, 0.0 / 0.0, 1.0 / 0.0, -1.0 / 0.0} /* initializer type: null */;
+
+  @org.jetbrains.annotations.NotNull()
+  private static final java.lang.Float[] arrayOfFloatObjects = {5.0f, -1.23E-7f, 1.4E-45f, 3.4028235E38f, 0.0F / 0.0F, 1.0F / 0.0F, -1.0F / 0.0F, 0.0F / 0.0F, 1.0F / 0.0F, -1.0F / 0.0F} /* initializer type: null */;
+
+  @org.jetbrains.annotations.NotNull()
+  private static final java.lang.Integer[] arrayOfIntObjects = {5, -1L, 2147483647, -2147483648} /* initializer type: null */;
+
+  @org.jetbrains.annotations.NotNull()
+  private static final java.lang.Long[] arrayOfLongObjects = {5L, -1L, 9223372036854775807L, -9223372036854775808L} /* initializer type: null */;
+
+  @org.jetbrains.annotations.NotNull()
+  private static final java.lang.Object[] arrayOfNAny = {1L, 2L, "abc", kotlin.annotation.AnnotationTarget.CLASS, null} /* initializer type: null */;
+
+  @org.jetbrains.annotations.NotNull()
+  private static final java.lang.String[] arrayOfStrings = {"", "quotes \" ''quotes", "\r\n", "\u4F60\u597D\u4E16\u754C"} /* initializer type: null */;
+
+  @org.jetbrains.annotations.NotNull()
+  private static final java.util.List<java.lang.String> listOfStrings;
+
+  @org.jetbrains.annotations.NotNull()
+  private static final kotlin.annotation.AnnotationTarget[] arrayOfEnums = {kotlin.annotation.AnnotationTarget.CLASS, kotlin.annotation.AnnotationTarget.PROPERTY} /* initializer type: null */;
+
+  @org.jetbrains.annotations.NotNull()
+  private static final long[] arrayOfLongPrimitives = {5L, -1L, 9223372036854775807L, -9223372036854775808L} /* initializer type: null */;
+
+  @org.jetbrains.annotations.Nullable()
+  private static final java.lang.String nullable = null /* initializer type: null */;
+
+  @org.jetbrains.annotations.NotNull()
+  public static final char[] getArrayOfCharPrimitives();//  getArrayOfCharPrimitives()
+
+  @org.jetbrains.annotations.NotNull()
+  public static final double[] getArrayOfDoublePrimitives();//  getArrayOfDoublePrimitives()
+
+  @org.jetbrains.annotations.NotNull()
+  public static final float[] getArrayOfFloatPrimitives();//  getArrayOfFloatPrimitives()
+
+  @org.jetbrains.annotations.NotNull()
+  public static final int[] getArrayOfIntPrimitives();//  getArrayOfIntPrimitives()
+
+  @org.jetbrains.annotations.NotNull()
+  public static final java.lang.Character[] getArrayOfCharObjects();//  getArrayOfCharObjects()
+
+  @org.jetbrains.annotations.NotNull()
+  public static final java.lang.Double[] getArrayOfDoubleObjects();//  getArrayOfDoubleObjects()
+
+  @org.jetbrains.annotations.NotNull()
+  public static final java.lang.Float[] getArrayOfFloatObjects();//  getArrayOfFloatObjects()
+
+  @org.jetbrains.annotations.NotNull()
+  public static final java.lang.Integer[] getArrayOfIntObjects();//  getArrayOfIntObjects()
+
+  @org.jetbrains.annotations.NotNull()
+  public static final java.lang.Long[] getArrayOfLongObjects();//  getArrayOfLongObjects()
+
+  @org.jetbrains.annotations.NotNull()
+  public static final java.lang.Object[] getArrayOfNAny();//  getArrayOfNAny()
+
+  @org.jetbrains.annotations.NotNull()
+  public static final java.lang.String[] getArrayOfStrings();//  getArrayOfStrings()
+
+  @org.jetbrains.annotations.NotNull()
+  public static final java.util.List<java.lang.String> getListOfStrings();//  getListOfStrings()
+
+  @org.jetbrains.annotations.NotNull()
+  public static final kotlin.annotation.AnnotationTarget[] getArrayOfEnums();//  getArrayOfEnums()
+
+  @org.jetbrains.annotations.NotNull()
+  public static final long[] getArrayOfLongPrimitives();//  getArrayOfLongPrimitives()
+
+  @org.jetbrains.annotations.Nullable()
+  public static final java.lang.String getNullable();//  getNullable()
+}
diff --git a/compiler/testData/asJava/lightClasses/lightClassByPsi/unsafePropertyInitializers.kt b/compiler/testData/asJava/lightClasses/lightClassByPsi/unsafePropertyInitializers.kt
new file mode 100644
index 0000000..3e1568e
--- /dev/null
+++ b/compiler/testData/asJava/lightClasses/lightClassByPsi/unsafePropertyInitializers.kt
@@ -0,0 +1,15 @@
+val nullable: String? = null
+val listOfStrings = listOf("no lists, sorry")
+val arrayOfIntObjects = arrayOf(2 + 3, -1, Int.MAX_VALUE, Int.MIN_VALUE)
+val arrayOfIntPrimitives = intArrayOf(2 + 3, -1, Int.MAX_VALUE, Int.MIN_VALUE)
+val arrayOfLongObjects = arrayOf(2L + 3L, -1L, Long.MAX_VALUE, Long.MIN_VALUE)
+val arrayOfLongPrimitives = longArrayOf(2L + 3L, -1L, Long.MAX_VALUE, Long.MIN_VALUE)
+val arrayOfCharObjects = arrayOf('C', 0.toChar(), '\n', '\r', '\'', 0xff.toChar())
+val arrayOfCharPrimitives = charArrayOf('C', 0.toChar(), '\n', '\r', '\'', 0xff.toChar())
+val arrayOfDoubleObjects = arrayOf(2.0 + 3.0, -1.23E-7, Double.MIN_VALUE, Double.MAX_VALUE, Double.NaN, Double.POSITIVE_INFINITY, Double.NEGATIVE_INFINITY, 0.0 / 0.0, 1.0 / 0.0, -1.0 / 0.0)
+val arrayOfDoublePrimitives = doubleArrayOf(2.0 + 3.0, -1.23E-7, Double.MIN_VALUE, Double.MAX_VALUE, Double.NaN, Double.POSITIVE_INFINITY, Double.NEGATIVE_INFINITY, 0.0 / 0.0, 1.0 / 0.0, -1.0 / 0.0)
+val arrayOfFloatObjects = arrayOf(2f + 3f, -1.23E-7f, Float.MIN_VALUE, Float.MAX_VALUE, Float.NaN, Float.POSITIVE_INFINITY, Float.NEGATIVE_INFINITY, 0.0f / 0.0f, 1.0f / 0.0f, -1.0f / 0.0f)
+val arrayOfFloatPrimitives = floatArrayOf(2f + 3f, -1.23E-7f, Float.MIN_VALUE, Float.MAX_VALUE, Float.NaN, Float.POSITIVE_INFINITY, Float.NEGATIVE_INFINITY, 0.0f / 0.0f, 1.0f / 0.0f, -1.0f / 0.0f)
+val arrayOfStrings = arrayOf("", "quotes \" ''quotes", "\r\n", "你好世界")
+val arrayOfEnums = arrayOf(AnnotationTarget.CLASS, AnnotationTarget.PROPERTY)
+val arrayOfNAny = arrayOf(1, 2L, "abc", AnnotationTarget.CLASS, null)
\ No newline at end of file
diff --git a/compiler/testData/asJava/lightClasses/lightClassByPsi/unsafePropertyInitializers.lib.java b/compiler/testData/asJava/lightClasses/lightClassByPsi/unsafePropertyInitializers.lib.java
new file mode 100644
index 0000000..c52f005
--- /dev/null
+++ b/compiler/testData/asJava/lightClasses/lightClassByPsi/unsafePropertyInitializers.lib.java
@@ -0,0 +1,91 @@
+public final class UnsafePropertyInitializersKt /* UnsafePropertyInitializersKt*/ {
+  @org.jetbrains.annotations.NotNull()
+  private static final char[] arrayOfCharPrimitives;
+
+  @org.jetbrains.annotations.NotNull()
+  private static final double[] arrayOfDoublePrimitives;
+
+  @org.jetbrains.annotations.NotNull()
+  private static final float[] arrayOfFloatPrimitives;
+
+  @org.jetbrains.annotations.NotNull()
+  private static final int[] arrayOfIntPrimitives;
+
+  @org.jetbrains.annotations.NotNull()
+  private static final java.lang.Character[] arrayOfCharObjects;
+
+  @org.jetbrains.annotations.NotNull()
+  private static final java.lang.Double[] arrayOfDoubleObjects;
+
+  @org.jetbrains.annotations.NotNull()
+  private static final java.lang.Float[] arrayOfFloatObjects;
+
+  @org.jetbrains.annotations.NotNull()
+  private static final java.lang.Integer[] arrayOfIntObjects;
+
+  @org.jetbrains.annotations.NotNull()
+  private static final java.lang.Long[] arrayOfLongObjects;
+
+  @org.jetbrains.annotations.NotNull()
+  private static final java.lang.Object[] arrayOfNAny;
+
+  @org.jetbrains.annotations.NotNull()
+  private static final java.lang.String[] arrayOfStrings;
+
+  @org.jetbrains.annotations.NotNull()
+  private static final java.util.List<java.lang.String> listOfStrings;
+
+  @org.jetbrains.annotations.NotNull()
+  private static final kotlin.annotation.AnnotationTarget[] arrayOfEnums;
+
+  @org.jetbrains.annotations.NotNull()
+  private static final long[] arrayOfLongPrimitives;
+
+  @org.jetbrains.annotations.Nullable()
+  private static final java.lang.String nullable;
+
+  @org.jetbrains.annotations.NotNull()
+  public static final char[] getArrayOfCharPrimitives();//  getArrayOfCharPrimitives()
+
+  @org.jetbrains.annotations.NotNull()
+  public static final double[] getArrayOfDoublePrimitives();//  getArrayOfDoublePrimitives()
+
+  @org.jetbrains.annotations.NotNull()
+  public static final float[] getArrayOfFloatPrimitives();//  getArrayOfFloatPrimitives()
+
+  @org.jetbrains.annotations.NotNull()
+  public static final int[] getArrayOfIntPrimitives();//  getArrayOfIntPrimitives()
+
+  @org.jetbrains.annotations.NotNull()
+  public static final java.lang.Character[] getArrayOfCharObjects();//  getArrayOfCharObjects()
+
+  @org.jetbrains.annotations.NotNull()
+  public static final java.lang.Double[] getArrayOfDoubleObjects();//  getArrayOfDoubleObjects()
+
+  @org.jetbrains.annotations.NotNull()
+  public static final java.lang.Float[] getArrayOfFloatObjects();//  getArrayOfFloatObjects()
+
+  @org.jetbrains.annotations.NotNull()
+  public static final java.lang.Integer[] getArrayOfIntObjects();//  getArrayOfIntObjects()
+
+  @org.jetbrains.annotations.NotNull()
+  public static final java.lang.Long[] getArrayOfLongObjects();//  getArrayOfLongObjects()
+
+  @org.jetbrains.annotations.NotNull()
+  public static final java.lang.Object[] getArrayOfNAny();//  getArrayOfNAny()
+
+  @org.jetbrains.annotations.NotNull()
+  public static final java.lang.String[] getArrayOfStrings();//  getArrayOfStrings()
+
+  @org.jetbrains.annotations.NotNull()
+  public static final java.util.List<java.lang.String> getListOfStrings();//  getListOfStrings()
+
+  @org.jetbrains.annotations.NotNull()
+  public static final kotlin.annotation.AnnotationTarget[] getArrayOfEnums();//  getArrayOfEnums()
+
+  @org.jetbrains.annotations.NotNull()
+  public static final long[] getArrayOfLongPrimitives();//  getArrayOfLongPrimitives()
+
+  @org.jetbrains.annotations.Nullable()
+  public static final java.lang.String getNullable();//  getNullable()
+}