From e74977d4673055980267bb3ee64da9b6d8d6e527 Mon Sep 17 00:00:00 2001 From: Roman Shevchenko Date: Fri, 12 Sep 2014 10:28:54 +0400 Subject: [PATCH] IDEA-128685 (test added) --- .../java/decompiler/SingleClassesTest.java | 1 + testData/classes/pkg/TestClassCast.class | Bin 0 -> 625 bytes testData/results/TestClassCast.dec | 15 ++++++++++ testData/src/pkg/TestClassCast.java | 28 ++++++++++++++++++ 4 files changed, 44 insertions(+) create mode 100644 testData/classes/pkg/TestClassCast.class create mode 100644 testData/results/TestClassCast.dec create mode 100644 testData/src/pkg/TestClassCast.java diff --git a/test/org/jetbrains/java/decompiler/SingleClassesTest.java b/test/org/jetbrains/java/decompiler/SingleClassesTest.java index 109fbc7..6261591 100644 --- a/test/org/jetbrains/java/decompiler/SingleClassesTest.java +++ b/test/org/jetbrains/java/decompiler/SingleClassesTest.java @@ -50,6 +50,7 @@ public class SingleClassesTest { @Test public void testClassTypes() { doTest("TestClassTypes"); } @Test public void testClassVar() { doTest("TestClassVar"); } @Test public void testClassNestedInitializer() { doTest("TestClassNestedInitializer"); } + @Test public void testClassCast() { doTest("TestClassCast"); } @Test public void testDeprecations() { doTest("TestDeprecations"); } @Test public void testExtendsList() { doTest("TestExtendsList"); } @Test public void testMethodParameters() { doTest("TestMethodParameters"); } diff --git a/testData/classes/pkg/TestClassCast.class b/testData/classes/pkg/TestClassCast.class new file mode 100644 index 0000000000000000000000000000000000000000..5b71ce8524543fbd7a0f54f3f82b2b3bced22da0 GIT binary patch literal 625 zcmY+BT}vB56o%ik`Iux~HAZ9OXHBa$(bR>ucPRx42tr~D5sUU}k}NX1*$umsg8f%| zQBk3nz36We>6x`fvkPa=%)aM2d*1o;aQh3u2kh9eQ4*N9Vc|s%JDC&88$`lt5xwz@eIBv>V?-+uE2{_DqqU}bJyf8@f z={3Q6_nt`(*0CY*#=$144r7U{mr%^i@qjxT1?G4zsaKy;cqb(|QzeFm~9UXac&|uqQ z^@9yybNBxbJFX#!p{ei#7FYLcN2nmr_h%jpWL)An$-5O^iPy~5HRzHPo{VGm@sQ&* z3LK5}8&doN8{6&rZStIfJqi)I2hr3*O}zn@5?u VuXFzyKFxvdQ5Gn2i`k@N?k{9SfWH6$ literal 0 HcmV?d00001 diff --git a/testData/results/TestClassCast.dec b/testData/results/TestClassCast.dec new file mode 100644 index 0000000..e09162c --- /dev/null +++ b/testData/results/TestClassCast.dec @@ -0,0 +1,15 @@ +package pkg; + +import java.util.ArrayList; +import java.util.List; + +public class TestClassCast { + public void test(List var1) { + Object var2 = var1; + if(var1 != null) { + ((List)(var2 = new ArrayList(var1))).add("23"); + } + + System.out.println(((List)var2).size()); + } +} diff --git a/testData/src/pkg/TestClassCast.java b/testData/src/pkg/TestClassCast.java new file mode 100644 index 0000000..a831e54 --- /dev/null +++ b/testData/src/pkg/TestClassCast.java @@ -0,0 +1,28 @@ +/* + * Copyright 2000-2014 JetBrains s.r.o. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package pkg; + +import java.util.*; + +public class TestClassCast { + public void test(List list) { + List a = list; + if (a != null) { + (a = new ArrayList(a)).add("23"); + } + System.out.println(a.size()); + } +} \ No newline at end of file