Skip to content

Commit 86198e3

Browse files
committed
C#: Add tests for out writeacceses.
1 parent bd1c6e6 commit 86198e3

File tree

8 files changed

+280
-0
lines changed

8 files changed

+280
-0
lines changed

csharp/ql/test/library-tests/controlflow/graph/Assignments.cs

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,4 +21,26 @@ void M()
2121

2222
delegate void EventHandler(object sender, object e);
2323
event EventHandler Event;
24+
int IntField;
25+
string StringField;
26+
27+
void SetParamSingle(out int x)
28+
{
29+
x = 42;
30+
}
31+
32+
void SetParamMulti(out int x, object o, out string y)
33+
{
34+
x = 42;
35+
y = "Hello";
36+
}
37+
38+
void M2()
39+
{
40+
int x1;
41+
SetParamSingle(out x1);
42+
SetParamSingle(out IntField);
43+
SetParamMulti(out var y, null, out StringField);
44+
SetParamMulti(out IntField, null, out StringField);
45+
}
2446
}

csharp/ql/test/library-tests/controlflow/graph/BasicBlock.expected

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -167,6 +167,9 @@
167167
| Assignments.cs:3:10:3:10 | enter M | Assignments.cs:3:10:3:10 | exit M | 34 |
168168
| Assignments.cs:14:18:14:35 | enter (...) => ... | Assignments.cs:14:18:14:35 | exit (...) => ... | 4 |
169169
| Assignments.cs:17:40:17:40 | enter + | Assignments.cs:17:40:17:40 | exit + | 6 |
170+
| Assignments.cs:27:10:27:23 | enter SetParamSingle | Assignments.cs:27:10:27:23 | exit SetParamSingle | 7 |
171+
| Assignments.cs:32:10:32:22 | enter SetParamMulti | Assignments.cs:32:10:32:22 | exit SetParamMulti | 10 |
172+
| Assignments.cs:38:10:38:11 | enter M2 | Assignments.cs:38:10:38:11 | exit M2 | 28 |
170173
| BreakInTry.cs:1:7:1:16 | enter BreakInTry | BreakInTry.cs:1:7:1:16 | exit BreakInTry | 7 |
171174
| BreakInTry.cs:3:10:3:11 | enter M1 | BreakInTry.cs:7:33:7:36 | access to parameter args | 5 |
172175
| BreakInTry.cs:3:10:3:11 | exit M1 (normal) | BreakInTry.cs:3:10:3:11 | exit M1 | 2 |

csharp/ql/test/library-tests/controlflow/graph/Dominance.expected

Lines changed: 90 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -766,6 +766,48 @@ dominance
766766
| Assignments.cs:18:5:20:5 | {...} | Assignments.cs:19:16:19:16 | access to parameter x |
767767
| Assignments.cs:19:9:19:17 | return ...; | Assignments.cs:17:40:17:40 | exit + (normal) |
768768
| Assignments.cs:19:16:19:16 | access to parameter x | Assignments.cs:19:9:19:17 | return ...; |
769+
| Assignments.cs:27:10:27:23 | enter SetParamSingle | Assignments.cs:28:5:30:5 | {...} |
770+
| Assignments.cs:27:10:27:23 | exit SetParamSingle (normal) | Assignments.cs:27:10:27:23 | exit SetParamSingle |
771+
| Assignments.cs:28:5:30:5 | {...} | Assignments.cs:29:9:29:15 | ...; |
772+
| Assignments.cs:29:9:29:14 | ... = ... | Assignments.cs:27:10:27:23 | exit SetParamSingle (normal) |
773+
| Assignments.cs:29:9:29:15 | ...; | Assignments.cs:29:13:29:14 | 42 |
774+
| Assignments.cs:29:13:29:14 | 42 | Assignments.cs:29:9:29:14 | ... = ... |
775+
| Assignments.cs:32:10:32:22 | enter SetParamMulti | Assignments.cs:33:5:36:5 | {...} |
776+
| Assignments.cs:32:10:32:22 | exit SetParamMulti (normal) | Assignments.cs:32:10:32:22 | exit SetParamMulti |
777+
| Assignments.cs:33:5:36:5 | {...} | Assignments.cs:34:9:34:15 | ...; |
778+
| Assignments.cs:34:9:34:14 | ... = ... | Assignments.cs:35:9:35:20 | ...; |
779+
| Assignments.cs:34:9:34:15 | ...; | Assignments.cs:34:13:34:14 | 42 |
780+
| Assignments.cs:34:13:34:14 | 42 | Assignments.cs:34:9:34:14 | ... = ... |
781+
| Assignments.cs:35:9:35:19 | ... = ... | Assignments.cs:32:10:32:22 | exit SetParamMulti (normal) |
782+
| Assignments.cs:35:9:35:20 | ...; | Assignments.cs:35:13:35:19 | "Hello" |
783+
| Assignments.cs:35:13:35:19 | "Hello" | Assignments.cs:35:9:35:19 | ... = ... |
784+
| Assignments.cs:38:10:38:11 | enter M2 | Assignments.cs:39:5:45:5 | {...} |
785+
| Assignments.cs:38:10:38:11 | exit M2 (normal) | Assignments.cs:38:10:38:11 | exit M2 |
786+
| Assignments.cs:39:5:45:5 | {...} | Assignments.cs:40:9:40:15 | ... ...; |
787+
| Assignments.cs:40:9:40:15 | ... ...; | Assignments.cs:40:13:40:14 | Int32 x1 |
788+
| Assignments.cs:40:13:40:14 | Int32 x1 | Assignments.cs:41:9:41:31 | ...; |
789+
| Assignments.cs:41:9:41:30 | call to method SetParamSingle | Assignments.cs:42:9:42:37 | ...; |
790+
| Assignments.cs:41:9:41:30 | this access | Assignments.cs:41:9:41:30 | call to method SetParamSingle |
791+
| Assignments.cs:41:9:41:31 | ...; | Assignments.cs:41:9:41:30 | this access |
792+
| Assignments.cs:42:9:42:36 | call to method SetParamSingle | Assignments.cs:42:28:42:35 | access to field IntField |
793+
| Assignments.cs:42:9:42:36 | this access | Assignments.cs:42:28:42:35 | this access |
794+
| Assignments.cs:42:9:42:37 | ...; | Assignments.cs:42:9:42:36 | this access |
795+
| Assignments.cs:42:28:42:35 | access to field IntField | Assignments.cs:43:9:43:56 | ...; |
796+
| Assignments.cs:42:28:42:35 | this access | Assignments.cs:42:9:42:36 | call to method SetParamSingle |
797+
| Assignments.cs:43:9:43:55 | call to method SetParamMulti | Assignments.cs:43:44:43:54 | access to field StringField |
798+
| Assignments.cs:43:9:43:55 | this access | Assignments.cs:43:34:43:37 | null |
799+
| Assignments.cs:43:9:43:56 | ...; | Assignments.cs:43:9:43:55 | this access |
800+
| Assignments.cs:43:34:43:37 | null | Assignments.cs:43:44:43:54 | this access |
801+
| Assignments.cs:43:44:43:54 | access to field StringField | Assignments.cs:44:9:44:59 | ...; |
802+
| Assignments.cs:43:44:43:54 | this access | Assignments.cs:43:9:43:55 | call to method SetParamMulti |
803+
| Assignments.cs:44:9:44:58 | call to method SetParamMulti | Assignments.cs:44:27:44:34 | access to field IntField |
804+
| Assignments.cs:44:9:44:58 | this access | Assignments.cs:44:27:44:34 | this access |
805+
| Assignments.cs:44:9:44:59 | ...; | Assignments.cs:44:9:44:58 | this access |
806+
| Assignments.cs:44:27:44:34 | access to field IntField | Assignments.cs:44:47:44:57 | access to field StringField |
807+
| Assignments.cs:44:27:44:34 | this access | Assignments.cs:44:37:44:40 | null |
808+
| Assignments.cs:44:37:44:40 | null | Assignments.cs:44:47:44:57 | this access |
809+
| Assignments.cs:44:47:44:57 | access to field StringField | Assignments.cs:38:10:38:11 | exit M2 (normal) |
810+
| Assignments.cs:44:47:44:57 | this access | Assignments.cs:44:9:44:58 | call to method SetParamMulti |
769811
| BreakInTry.cs:1:7:1:16 | call to constructor Object | BreakInTry.cs:1:7:1:16 | {...} |
770812
| BreakInTry.cs:1:7:1:16 | call to method <object initializer> | BreakInTry.cs:1:7:1:16 | call to constructor Object |
771813
| BreakInTry.cs:1:7:1:16 | enter BreakInTry | BreakInTry.cs:1:7:1:16 | this access |
@@ -4722,6 +4764,48 @@ postDominance
47224764
| Assignments.cs:18:5:20:5 | {...} | Assignments.cs:17:40:17:40 | enter + |
47234765
| Assignments.cs:19:9:19:17 | return ...; | Assignments.cs:19:16:19:16 | access to parameter x |
47244766
| Assignments.cs:19:16:19:16 | access to parameter x | Assignments.cs:18:5:20:5 | {...} |
4767+
| Assignments.cs:27:10:27:23 | exit SetParamSingle | Assignments.cs:27:10:27:23 | exit SetParamSingle (normal) |
4768+
| Assignments.cs:27:10:27:23 | exit SetParamSingle (normal) | Assignments.cs:29:9:29:14 | ... = ... |
4769+
| Assignments.cs:28:5:30:5 | {...} | Assignments.cs:27:10:27:23 | enter SetParamSingle |
4770+
| Assignments.cs:29:9:29:14 | ... = ... | Assignments.cs:29:13:29:14 | 42 |
4771+
| Assignments.cs:29:9:29:15 | ...; | Assignments.cs:28:5:30:5 | {...} |
4772+
| Assignments.cs:29:13:29:14 | 42 | Assignments.cs:29:9:29:15 | ...; |
4773+
| Assignments.cs:32:10:32:22 | exit SetParamMulti | Assignments.cs:32:10:32:22 | exit SetParamMulti (normal) |
4774+
| Assignments.cs:32:10:32:22 | exit SetParamMulti (normal) | Assignments.cs:35:9:35:19 | ... = ... |
4775+
| Assignments.cs:33:5:36:5 | {...} | Assignments.cs:32:10:32:22 | enter SetParamMulti |
4776+
| Assignments.cs:34:9:34:14 | ... = ... | Assignments.cs:34:13:34:14 | 42 |
4777+
| Assignments.cs:34:9:34:15 | ...; | Assignments.cs:33:5:36:5 | {...} |
4778+
| Assignments.cs:34:13:34:14 | 42 | Assignments.cs:34:9:34:15 | ...; |
4779+
| Assignments.cs:35:9:35:19 | ... = ... | Assignments.cs:35:13:35:19 | "Hello" |
4780+
| Assignments.cs:35:9:35:20 | ...; | Assignments.cs:34:9:34:14 | ... = ... |
4781+
| Assignments.cs:35:13:35:19 | "Hello" | Assignments.cs:35:9:35:20 | ...; |
4782+
| Assignments.cs:38:10:38:11 | exit M2 | Assignments.cs:38:10:38:11 | exit M2 (normal) |
4783+
| Assignments.cs:38:10:38:11 | exit M2 (normal) | Assignments.cs:44:47:44:57 | access to field StringField |
4784+
| Assignments.cs:39:5:45:5 | {...} | Assignments.cs:38:10:38:11 | enter M2 |
4785+
| Assignments.cs:40:9:40:15 | ... ...; | Assignments.cs:39:5:45:5 | {...} |
4786+
| Assignments.cs:40:13:40:14 | Int32 x1 | Assignments.cs:40:9:40:15 | ... ...; |
4787+
| Assignments.cs:41:9:41:30 | call to method SetParamSingle | Assignments.cs:41:9:41:30 | this access |
4788+
| Assignments.cs:41:9:41:30 | this access | Assignments.cs:41:9:41:31 | ...; |
4789+
| Assignments.cs:41:9:41:31 | ...; | Assignments.cs:40:13:40:14 | Int32 x1 |
4790+
| Assignments.cs:42:9:42:36 | call to method SetParamSingle | Assignments.cs:42:28:42:35 | this access |
4791+
| Assignments.cs:42:9:42:36 | this access | Assignments.cs:42:9:42:37 | ...; |
4792+
| Assignments.cs:42:9:42:37 | ...; | Assignments.cs:41:9:41:30 | call to method SetParamSingle |
4793+
| Assignments.cs:42:28:42:35 | access to field IntField | Assignments.cs:42:9:42:36 | call to method SetParamSingle |
4794+
| Assignments.cs:42:28:42:35 | this access | Assignments.cs:42:9:42:36 | this access |
4795+
| Assignments.cs:43:9:43:55 | call to method SetParamMulti | Assignments.cs:43:44:43:54 | this access |
4796+
| Assignments.cs:43:9:43:55 | this access | Assignments.cs:43:9:43:56 | ...; |
4797+
| Assignments.cs:43:9:43:56 | ...; | Assignments.cs:42:28:42:35 | access to field IntField |
4798+
| Assignments.cs:43:34:43:37 | null | Assignments.cs:43:9:43:55 | this access |
4799+
| Assignments.cs:43:44:43:54 | access to field StringField | Assignments.cs:43:9:43:55 | call to method SetParamMulti |
4800+
| Assignments.cs:43:44:43:54 | this access | Assignments.cs:43:34:43:37 | null |
4801+
| Assignments.cs:44:9:44:58 | call to method SetParamMulti | Assignments.cs:44:47:44:57 | this access |
4802+
| Assignments.cs:44:9:44:58 | this access | Assignments.cs:44:9:44:59 | ...; |
4803+
| Assignments.cs:44:9:44:59 | ...; | Assignments.cs:43:44:43:54 | access to field StringField |
4804+
| Assignments.cs:44:27:44:34 | access to field IntField | Assignments.cs:44:9:44:58 | call to method SetParamMulti |
4805+
| Assignments.cs:44:27:44:34 | this access | Assignments.cs:44:9:44:58 | this access |
4806+
| Assignments.cs:44:37:44:40 | null | Assignments.cs:44:27:44:34 | this access |
4807+
| Assignments.cs:44:47:44:57 | access to field StringField | Assignments.cs:44:27:44:34 | access to field IntField |
4808+
| Assignments.cs:44:47:44:57 | this access | Assignments.cs:44:37:44:40 | null |
47254809
| BreakInTry.cs:1:7:1:16 | call to constructor Object | BreakInTry.cs:1:7:1:16 | call to method <object initializer> |
47264810
| BreakInTry.cs:1:7:1:16 | call to method <object initializer> | BreakInTry.cs:1:7:1:16 | this access |
47274811
| BreakInTry.cs:1:7:1:16 | exit BreakInTry | BreakInTry.cs:1:7:1:16 | exit BreakInTry (normal) |
@@ -8811,6 +8895,9 @@ blockDominance
88118895
| Assignments.cs:3:10:3:10 | enter M | Assignments.cs:3:10:3:10 | enter M |
88128896
| Assignments.cs:14:18:14:35 | enter (...) => ... | Assignments.cs:14:18:14:35 | enter (...) => ... |
88138897
| Assignments.cs:17:40:17:40 | enter + | Assignments.cs:17:40:17:40 | enter + |
8898+
| Assignments.cs:27:10:27:23 | enter SetParamSingle | Assignments.cs:27:10:27:23 | enter SetParamSingle |
8899+
| Assignments.cs:32:10:32:22 | enter SetParamMulti | Assignments.cs:32:10:32:22 | enter SetParamMulti |
8900+
| Assignments.cs:38:10:38:11 | enter M2 | Assignments.cs:38:10:38:11 | enter M2 |
88148901
| BreakInTry.cs:1:7:1:16 | enter BreakInTry | BreakInTry.cs:1:7:1:16 | enter BreakInTry |
88158902
| BreakInTry.cs:3:10:3:11 | enter M1 | BreakInTry.cs:3:10:3:11 | enter M1 |
88168903
| BreakInTry.cs:3:10:3:11 | enter M1 | BreakInTry.cs:3:10:3:11 | exit M1 (normal) |
@@ -12758,6 +12845,9 @@ postBlockDominance
1275812845
| Assignments.cs:3:10:3:10 | enter M | Assignments.cs:3:10:3:10 | enter M |
1275912846
| Assignments.cs:14:18:14:35 | enter (...) => ... | Assignments.cs:14:18:14:35 | enter (...) => ... |
1276012847
| Assignments.cs:17:40:17:40 | enter + | Assignments.cs:17:40:17:40 | enter + |
12848+
| Assignments.cs:27:10:27:23 | enter SetParamSingle | Assignments.cs:27:10:27:23 | enter SetParamSingle |
12849+
| Assignments.cs:32:10:32:22 | enter SetParamMulti | Assignments.cs:32:10:32:22 | enter SetParamMulti |
12850+
| Assignments.cs:38:10:38:11 | enter M2 | Assignments.cs:38:10:38:11 | enter M2 |
1276112851
| BreakInTry.cs:1:7:1:16 | enter BreakInTry | BreakInTry.cs:1:7:1:16 | enter BreakInTry |
1276212852
| BreakInTry.cs:3:10:3:11 | enter M1 | BreakInTry.cs:3:10:3:11 | enter M1 |
1276312853
| BreakInTry.cs:3:10:3:11 | exit M1 (normal) | BreakInTry.cs:3:10:3:11 | enter M1 |

csharp/ql/test/library-tests/controlflow/graph/EnclosingCallable.expected

Lines changed: 48 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -839,6 +839,51 @@ nodeEnclosing
839839
| Assignments.cs:18:5:20:5 | {...} | Assignments.cs:17:40:17:40 | + |
840840
| Assignments.cs:19:9:19:17 | return ...; | Assignments.cs:17:40:17:40 | + |
841841
| Assignments.cs:19:16:19:16 | access to parameter x | Assignments.cs:17:40:17:40 | + |
842+
| Assignments.cs:27:10:27:23 | enter SetParamSingle | Assignments.cs:27:10:27:23 | SetParamSingle |
843+
| Assignments.cs:27:10:27:23 | exit SetParamSingle | Assignments.cs:27:10:27:23 | SetParamSingle |
844+
| Assignments.cs:27:10:27:23 | exit SetParamSingle (normal) | Assignments.cs:27:10:27:23 | SetParamSingle |
845+
| Assignments.cs:28:5:30:5 | {...} | Assignments.cs:27:10:27:23 | SetParamSingle |
846+
| Assignments.cs:29:9:29:14 | ... = ... | Assignments.cs:27:10:27:23 | SetParamSingle |
847+
| Assignments.cs:29:9:29:15 | ...; | Assignments.cs:27:10:27:23 | SetParamSingle |
848+
| Assignments.cs:29:13:29:14 | 42 | Assignments.cs:27:10:27:23 | SetParamSingle |
849+
| Assignments.cs:32:10:32:22 | enter SetParamMulti | Assignments.cs:32:10:32:22 | SetParamMulti |
850+
| Assignments.cs:32:10:32:22 | exit SetParamMulti | Assignments.cs:32:10:32:22 | SetParamMulti |
851+
| Assignments.cs:32:10:32:22 | exit SetParamMulti (normal) | Assignments.cs:32:10:32:22 | SetParamMulti |
852+
| Assignments.cs:33:5:36:5 | {...} | Assignments.cs:32:10:32:22 | SetParamMulti |
853+
| Assignments.cs:34:9:34:14 | ... = ... | Assignments.cs:32:10:32:22 | SetParamMulti |
854+
| Assignments.cs:34:9:34:15 | ...; | Assignments.cs:32:10:32:22 | SetParamMulti |
855+
| Assignments.cs:34:13:34:14 | 42 | Assignments.cs:32:10:32:22 | SetParamMulti |
856+
| Assignments.cs:35:9:35:19 | ... = ... | Assignments.cs:32:10:32:22 | SetParamMulti |
857+
| Assignments.cs:35:9:35:20 | ...; | Assignments.cs:32:10:32:22 | SetParamMulti |
858+
| Assignments.cs:35:13:35:19 | "Hello" | Assignments.cs:32:10:32:22 | SetParamMulti |
859+
| Assignments.cs:38:10:38:11 | enter M2 | Assignments.cs:38:10:38:11 | M2 |
860+
| Assignments.cs:38:10:38:11 | exit M2 | Assignments.cs:38:10:38:11 | M2 |
861+
| Assignments.cs:38:10:38:11 | exit M2 (normal) | Assignments.cs:38:10:38:11 | M2 |
862+
| Assignments.cs:39:5:45:5 | {...} | Assignments.cs:38:10:38:11 | M2 |
863+
| Assignments.cs:40:9:40:15 | ... ...; | Assignments.cs:38:10:38:11 | M2 |
864+
| Assignments.cs:40:13:40:14 | Int32 x1 | Assignments.cs:38:10:38:11 | M2 |
865+
| Assignments.cs:41:9:41:30 | call to method SetParamSingle | Assignments.cs:38:10:38:11 | M2 |
866+
| Assignments.cs:41:9:41:30 | this access | Assignments.cs:38:10:38:11 | M2 |
867+
| Assignments.cs:41:9:41:31 | ...; | Assignments.cs:38:10:38:11 | M2 |
868+
| Assignments.cs:42:9:42:36 | call to method SetParamSingle | Assignments.cs:38:10:38:11 | M2 |
869+
| Assignments.cs:42:9:42:36 | this access | Assignments.cs:38:10:38:11 | M2 |
870+
| Assignments.cs:42:9:42:37 | ...; | Assignments.cs:38:10:38:11 | M2 |
871+
| Assignments.cs:42:28:42:35 | access to field IntField | Assignments.cs:38:10:38:11 | M2 |
872+
| Assignments.cs:42:28:42:35 | this access | Assignments.cs:38:10:38:11 | M2 |
873+
| Assignments.cs:43:9:43:55 | call to method SetParamMulti | Assignments.cs:38:10:38:11 | M2 |
874+
| Assignments.cs:43:9:43:55 | this access | Assignments.cs:38:10:38:11 | M2 |
875+
| Assignments.cs:43:9:43:56 | ...; | Assignments.cs:38:10:38:11 | M2 |
876+
| Assignments.cs:43:34:43:37 | null | Assignments.cs:38:10:38:11 | M2 |
877+
| Assignments.cs:43:44:43:54 | access to field StringField | Assignments.cs:38:10:38:11 | M2 |
878+
| Assignments.cs:43:44:43:54 | this access | Assignments.cs:38:10:38:11 | M2 |
879+
| Assignments.cs:44:9:44:58 | call to method SetParamMulti | Assignments.cs:38:10:38:11 | M2 |
880+
| Assignments.cs:44:9:44:58 | this access | Assignments.cs:38:10:38:11 | M2 |
881+
| Assignments.cs:44:9:44:59 | ...; | Assignments.cs:38:10:38:11 | M2 |
882+
| Assignments.cs:44:27:44:34 | access to field IntField | Assignments.cs:38:10:38:11 | M2 |
883+
| Assignments.cs:44:27:44:34 | this access | Assignments.cs:38:10:38:11 | M2 |
884+
| Assignments.cs:44:37:44:40 | null | Assignments.cs:38:10:38:11 | M2 |
885+
| Assignments.cs:44:47:44:57 | access to field StringField | Assignments.cs:38:10:38:11 | M2 |
886+
| Assignments.cs:44:47:44:57 | this access | Assignments.cs:38:10:38:11 | M2 |
842887
| BreakInTry.cs:1:7:1:16 | call to constructor Object | BreakInTry.cs:1:7:1:16 | BreakInTry |
843888
| BreakInTry.cs:1:7:1:16 | call to method <object initializer> | BreakInTry.cs:1:7:1:16 | BreakInTry |
844889
| BreakInTry.cs:1:7:1:16 | enter BreakInTry | BreakInTry.cs:1:7:1:16 | BreakInTry |
@@ -4538,6 +4583,9 @@ blockEnclosing
45384583
| Assignments.cs:3:10:3:10 | enter M | Assignments.cs:3:10:3:10 | M |
45394584
| Assignments.cs:14:18:14:35 | enter (...) => ... | Assignments.cs:14:18:14:35 | (...) => ... |
45404585
| Assignments.cs:17:40:17:40 | enter + | Assignments.cs:17:40:17:40 | + |
4586+
| Assignments.cs:27:10:27:23 | enter SetParamSingle | Assignments.cs:27:10:27:23 | SetParamSingle |
4587+
| Assignments.cs:32:10:32:22 | enter SetParamMulti | Assignments.cs:32:10:32:22 | SetParamMulti |
4588+
| Assignments.cs:38:10:38:11 | enter M2 | Assignments.cs:38:10:38:11 | M2 |
45414589
| BreakInTry.cs:1:7:1:16 | enter BreakInTry | BreakInTry.cs:1:7:1:16 | BreakInTry |
45424590
| BreakInTry.cs:3:10:3:11 | enter M1 | BreakInTry.cs:3:10:3:11 | M1 |
45434591
| BreakInTry.cs:3:10:3:11 | exit M1 (normal) | BreakInTry.cs:3:10:3:11 | M1 |

0 commit comments

Comments
 (0)