decompiler: generate line number matching for return and some other statements

This commit is contained in:
Egor.Ushakov
2015-03-25 13:59:04 +03:00
parent f3af4dd681
commit 7e30facd33
4 changed files with 18 additions and 7 deletions

View File

@@ -13,7 +13,7 @@ public class TestClassLoop {
while(true) {
try {
if(!var0) {// 33
return;
return;// 34
}
} finally {
System.out.println("1");// 38
@@ -37,7 +37,7 @@ public class TestClassLoop {
}
}
System.out.println("4");
System.out.println("4");// 58
}
}
}
@@ -54,6 +54,7 @@ class 'pkg/TestClassLoop' {
4 10
d 10
f 14
1a 15
26 18
27 18
2a 18
@@ -71,6 +72,9 @@ class 'pkg/TestClassLoop' {
2a 33
2d 33
2f 33
37 39
3a 39
3c 39
}
}
@@ -78,13 +82,13 @@ Lines mapping:
23 <-> 6
29 <-> 11
33 <-> 15
34 <-> 16
38 <-> 19
45 <-> 25
49 <-> 30
52 <-> 33
53 <-> 34
58 <-> 40
Not mapped:
34
39
54
58

View File

@@ -50,6 +50,7 @@ class 'pkg/TestClassVar' {
20 11
26 12
29 12
2e 7
34 18
}

View File

@@ -36,7 +36,7 @@ public class TestTryCatchFinally {
System.out.println("Finally");// 55
}
return -1;
return -1;// 56
}
}
@@ -67,13 +67,16 @@ class 'pkg/TestTryCatchFinally' {
method 'test (Ljava/lang/String;)I' {
1 30
4 30
e 31
10 33
1a 33
23 33
26 33
31 38
34 35
35 35
38 35
3f 38
}
}
@@ -90,11 +93,11 @@ Lines mapping:
51 <-> 31
53 <-> 34
55 <-> 36
56 <-> 39
57 <-> 39
Not mapped:
25
28
32
35
52
56
57