Deserializing an object from untrusted input may result in security problems, such
as denial of service or remote code execution.
+
+Note that a deserialization method is only dangerous if it can instantiate
+arbitrary classes. Serialization frameworks that use a schema to instantiate
+only expected, predefined types are generally not tracked by this query. Such
+frameworks are generally safe with respect to arbitrary-class-instantiation and
+gadget-chain attacks when the schema is trusted and does not permit
+user-controlled type resolution. However, care must be taken to ensure the schema
+strictly limits the allowed types. Permitting common standard library classes
+can still leave the application vulnerable to gadget-chain attacks.
+
Deserializing an object from untrusted input may result in security problems, such
as denial of service or remote code execution.
+
+Note that a deserialization method is only dangerous if it can instantiate
+arbitrary classes. Serialization frameworks that use a schema to instantiate
+only expected, predefined types are generally not tracked by this query. Such
+frameworks are generally safe with respect to arbitrary-class-instantiation and
+gadget-chain attacks when the schema is trusted and does not permit
+user-controlled type resolution. However, care must be taken to ensure the schema
+strictly limits the allowed types. Permitting common standard library classes
+can still leave the application vulnerable to gadget-chain attacks.
+
+
diff --git a/csharp/ql/src/change-notes/released/1.7.2.md b/csharp/ql/src/change-notes/released/1.7.2.md
new file mode 100644
index 00000000000..b950385c16d
--- /dev/null
+++ b/csharp/ql/src/change-notes/released/1.7.2.md
@@ -0,0 +1,3 @@
+## 1.7.2
+
+No user-facing changes.
diff --git a/csharp/ql/src/change-notes/released/1.7.3.md b/csharp/ql/src/change-notes/released/1.7.3.md
new file mode 100644
index 00000000000..a629082e215
--- /dev/null
+++ b/csharp/ql/src/change-notes/released/1.7.3.md
@@ -0,0 +1,3 @@
+## 1.7.3
+
+No user-facing changes.
diff --git a/csharp/ql/src/change-notes/released/1.7.4.md b/csharp/ql/src/change-notes/released/1.7.4.md
new file mode 100644
index 00000000000..801ed5f5e71
--- /dev/null
+++ b/csharp/ql/src/change-notes/released/1.7.4.md
@@ -0,0 +1,3 @@
+## 1.7.4
+
+No user-facing changes.
diff --git a/csharp/ql/src/codeql-pack.release.yml b/csharp/ql/src/codeql-pack.release.yml
index 7bdec0d85c7..f4f3a4d5120 100644
--- a/csharp/ql/src/codeql-pack.release.yml
+++ b/csharp/ql/src/codeql-pack.release.yml
@@ -1,2 +1,2 @@
---
-lastReleaseVersion: 1.7.1
+lastReleaseVersion: 1.7.4
diff --git a/csharp/ql/src/qlpack.yml b/csharp/ql/src/qlpack.yml
index 25b04cf2dc6..378d02fee3f 100644
--- a/csharp/ql/src/qlpack.yml
+++ b/csharp/ql/src/qlpack.yml
@@ -1,5 +1,5 @@
name: codeql/csharp-queries
-version: 1.7.2-dev
+version: 1.7.5-dev
groups:
- csharp
- queries
diff --git a/csharp/ql/test/library-tests/controlflow/graph/BasicBlock.expected b/csharp/ql/test/library-tests/controlflow/graph/BasicBlock.expected
index 50fb2c69531..819674d2746 100644
--- a/csharp/ql/test/library-tests/controlflow/graph/BasicBlock.expected
+++ b/csharp/ql/test/library-tests/controlflow/graph/BasicBlock.expected
@@ -912,7 +912,7 @@
| PartialImplementationB.cs:4:12:4:18 | Entry | PartialImplementationB.cs:4:12:4:18 | Exit | 11 |
| Patterns.cs:3:7:3:14 | Entry | Patterns.cs:3:7:3:14 | Exit | 11 |
| Patterns.cs:5:10:5:11 | Entry | Patterns.cs:8:13:8:23 | ... is ... | 13 |
-| Patterns.cs:8:9:18:9 | After if (...) ... | Patterns.cs:22:13:22:23 | case ...: | 4 |
+| Patterns.cs:8:9:18:9 | After if (...) ... | Patterns.cs:22:18:22:22 | "xyz" | 5 |
| Patterns.cs:8:13:8:23 | After ... is ... [false] | Patterns.cs:12:18:12:31 | ... is ... | 5 |
| Patterns.cs:8:13:8:23 | [MatchTrue] ... is ... | Patterns.cs:9:9:11:9 | After {...} | 18 |
| Patterns.cs:12:14:18:9 | After if (...) ... | Patterns.cs:12:14:18:9 | After if (...) ... | 1 |
@@ -922,19 +922,19 @@
| Patterns.cs:16:18:16:28 | After ... is ... [false] | Patterns.cs:16:18:16:28 | After ... is ... [false] | 1 |
| Patterns.cs:16:18:16:28 | [MatchTrue] ... is ... | Patterns.cs:17:9:18:9 | {...} | 4 |
| Patterns.cs:20:9:38:9 | After switch (...) {...} | Patterns.cs:5:10:5:11 | Exit | 7 |
-| Patterns.cs:22:13:22:23 | After case ...: [match] | Patterns.cs:23:17:23:22 | break; | 4 |
-| Patterns.cs:22:13:22:23 | After case ...: [no-match] | Patterns.cs:24:13:24:36 | case ...: | 2 |
-| Patterns.cs:24:13:24:36 | After case ...: [match] | Patterns.cs:24:30:24:35 | ... > ... | 6 |
-| Patterns.cs:24:13:24:36 | After case ...: [no-match] | Patterns.cs:24:13:24:36 | After case ...: [no-match] | 1 |
+| Patterns.cs:22:18:22:22 | After "xyz" [match] | Patterns.cs:23:17:23:22 | break; | 4 |
+| Patterns.cs:22:18:22:22 | After "xyz" [no-match] | Patterns.cs:24:18:24:23 | Int32 i2 | 4 |
+| Patterns.cs:24:18:24:23 | After Int32 i2 [match] | Patterns.cs:24:30:24:35 | ... > ... | 6 |
+| Patterns.cs:24:18:24:23 | After Int32 i2 [no-match] | Patterns.cs:24:13:24:36 | After case ...: [no-match] | 2 |
| Patterns.cs:24:30:24:35 | After ... > ... [false] | Patterns.cs:24:30:24:35 | After ... > ... [false] | 1 |
| Patterns.cs:24:30:24:35 | After ... > ... [true] | Patterns.cs:26:17:26:22 | break; | 16 |
-| Patterns.cs:27:13:27:24 | After case ...: [match] | Patterns.cs:29:17:29:22 | break; | 17 |
-| Patterns.cs:27:13:27:24 | After case ...: [no-match] | Patterns.cs:30:13:30:27 | case ...: | 2 |
-| Patterns.cs:27:13:27:24 | case ...: | Patterns.cs:27:13:27:24 | case ...: | 1 |
-| Patterns.cs:30:13:30:27 | After case ...: [match] | Patterns.cs:32:17:32:22 | break; | 17 |
-| Patterns.cs:30:13:30:27 | After case ...: [no-match] | Patterns.cs:33:13:33:24 | case ...: | 2 |
-| Patterns.cs:33:13:33:24 | After case ...: [match] | Patterns.cs:34:17:34:22 | break; | 4 |
-| Patterns.cs:33:13:33:24 | After case ...: [no-match] | Patterns.cs:37:17:37:22 | break; | 11 |
+| Patterns.cs:27:13:27:24 | case ...: | Patterns.cs:27:18:27:23 | Int32 i3 | 2 |
+| Patterns.cs:27:18:27:23 | After Int32 i3 [match] | Patterns.cs:29:17:29:22 | break; | 17 |
+| Patterns.cs:27:18:27:23 | After Int32 i3 [no-match] | Patterns.cs:30:18:30:26 | String s2 | 4 |
+| Patterns.cs:30:18:30:26 | After String s2 [match] | Patterns.cs:32:17:32:22 | break; | 17 |
+| Patterns.cs:30:18:30:26 | After String s2 [no-match] | Patterns.cs:33:18:33:23 | Object v2 | 4 |
+| Patterns.cs:33:18:33:23 | After Object v2 [match] | Patterns.cs:34:17:34:22 | break; | 4 |
+| Patterns.cs:33:18:33:23 | After Object v2 [no-match] | Patterns.cs:37:17:37:22 | break; | 12 |
| Patterns.cs:47:24:47:25 | Entry | Patterns.cs:48:9:48:20 | ... is ... | 5 |
| Patterns.cs:48:9:48:20 | After ... is ... | Patterns.cs:47:24:47:25 | Exit | 3 |
| Patterns.cs:48:9:48:20 | [MatchTrue] ... is ... | Patterns.cs:48:14:48:20 | After not ... | 5 |
@@ -949,24 +949,24 @@
| Patterns.cs:53:24:53:25 | Entry | Patterns.cs:54:9:54:37 | ... is ... | 5 |
| Patterns.cs:54:9:54:37 | After ... is ... | Patterns.cs:53:24:53:25 | Exit | 3 |
| Patterns.cs:54:9:54:37 | [MatchTrue] ... is ... | Patterns.cs:54:14:54:37 | After not ... | 13 |
-| Patterns.cs:56:26:56:27 | Entry | Patterns.cs:60:13:60:28 | ... => ... | 7 |
+| Patterns.cs:56:26:56:27 | Entry | Patterns.cs:60:13:60:17 | not ... | 10 |
| Patterns.cs:58:16:62:9 | After ... switch { ... } | Patterns.cs:56:26:56:27 | Exit | 4 |
-| Patterns.cs:60:13:60:28 | After ... => ... [match] | Patterns.cs:60:22:60:28 | "not 1" | 6 |
-| Patterns.cs:60:13:60:28 | After ... => ... [no-match] | Patterns.cs:61:18:61:24 | "other" | 5 |
-| Patterns.cs:65:26:65:27 | Entry | Patterns.cs:69:13:69:33 | ... => ... | 6 |
+| Patterns.cs:60:13:60:17 | After not ... [match] | Patterns.cs:60:22:60:28 | "not 1" | 3 |
+| Patterns.cs:60:13:60:17 | After not ... [no-match] | Patterns.cs:61:18:61:24 | "other" | 7 |
+| Patterns.cs:65:26:65:27 | Entry | Patterns.cs:69:13:69:17 | not ... | 9 |
| Patterns.cs:67:16:71:9 | After ... switch { ... } | Patterns.cs:65:26:65:27 | Exit | 4 |
-| Patterns.cs:69:13:69:33 | After ... => ... [match] | Patterns.cs:69:22:69:33 | "impossible" | 6 |
-| Patterns.cs:69:13:69:33 | After ... => ... [no-match] | Patterns.cs:70:13:70:27 | ... => ... | 2 |
-| Patterns.cs:70:13:70:27 | After ... => ... [match] | Patterns.cs:70:18:70:27 | "possible" | 3 |
-| Patterns.cs:70:13:70:27 | After ... => ... [no-match] | Patterns.cs:70:13:70:27 | After ... => ... [no-match] | 1 |
-| Patterns.cs:74:26:74:27 | Entry | Patterns.cs:78:13:78:24 | ... => ... | 7 |
+| Patterns.cs:69:13:69:17 | After not ... [match] | Patterns.cs:69:22:69:33 | "impossible" | 3 |
+| Patterns.cs:69:13:69:17 | After not ... [no-match] | Patterns.cs:70:13:70:13 | 2 | 4 |
+| Patterns.cs:70:13:70:13 | After 2 [match] | Patterns.cs:70:18:70:27 | "possible" | 3 |
+| Patterns.cs:70:13:70:13 | After 2 [no-match] | Patterns.cs:70:13:70:27 | After ... => ... [no-match] | 2 |
+| Patterns.cs:74:26:74:27 | Entry | Patterns.cs:78:13:78:15 | > ... | 10 |
| Patterns.cs:76:16:82:9 | After ... switch { ... } | Patterns.cs:74:26:74:27 | Exit | 4 |
-| Patterns.cs:78:13:78:24 | After ... => ... [match] | Patterns.cs:78:20:78:24 | "> 1" | 6 |
-| Patterns.cs:78:13:78:24 | After ... => ... [no-match] | Patterns.cs:79:13:79:24 | ... => ... | 2 |
-| Patterns.cs:79:13:79:24 | After ... => ... [match] | Patterns.cs:79:20:79:24 | "< 0" | 6 |
-| Patterns.cs:79:13:79:24 | After ... => ... [no-match] | Patterns.cs:80:13:80:20 | ... => ... | 2 |
-| Patterns.cs:80:13:80:20 | After ... => ... [match] | Patterns.cs:80:18:80:20 | "1" | 3 |
-| Patterns.cs:80:13:80:20 | After ... => ... [no-match] | Patterns.cs:81:18:81:20 | "0" | 5 |
+| Patterns.cs:78:13:78:15 | After > ... [match] | Patterns.cs:78:20:78:24 | "> 1" | 3 |
+| Patterns.cs:78:13:78:15 | After > ... [no-match] | Patterns.cs:79:13:79:15 | < ... | 6 |
+| Patterns.cs:79:13:79:15 | After < ... [match] | Patterns.cs:79:20:79:24 | "< 0" | 3 |
+| Patterns.cs:79:13:79:15 | After < ... [no-match] | Patterns.cs:80:13:80:13 | 1 | 4 |
+| Patterns.cs:80:13:80:13 | After 1 [match] | Patterns.cs:80:18:80:20 | "1" | 3 |
+| Patterns.cs:80:13:80:13 | After 1 [no-match] | Patterns.cs:81:18:81:20 | "0" | 7 |
| Patterns.cs:85:26:85:27 | Entry | Patterns.cs:85:39:85:53 | ... is ... | 6 |
| Patterns.cs:85:39:85:53 | After ... is ... [false] | Patterns.cs:85:67:85:69 | "2" | 2 |
| Patterns.cs:85:39:85:53 | [MatchTrue] ... is ... | Patterns.cs:85:57:85:63 | "not 2" | 11 |
@@ -995,129 +995,130 @@
| Qualifiers.cs:10:10:10:10 | Entry | Qualifiers.cs:10:10:10:10 | Exit | 149 |
| Switch.cs:3:7:3:12 | Entry | Switch.cs:3:7:3:12 | Exit | 11 |
| Switch.cs:5:10:5:11 | Entry | Switch.cs:5:10:5:11 | Exit | 9 |
-| Switch.cs:10:10:10:11 | Entry | Switch.cs:14:13:14:21 | case ...: | 6 |
+| Switch.cs:10:10:10:11 | Entry | Switch.cs:14:18:14:20 | "a" | 7 |
| Switch.cs:10:10:10:11 | Exceptional Exit | Switch.cs:10:10:10:11 | Exceptional Exit | 1 |
| Switch.cs:10:10:10:11 | Exit | Switch.cs:10:10:10:11 | Exit | 1 |
| Switch.cs:10:10:10:11 | Normal Exit | Switch.cs:10:10:10:11 | Normal Exit | 1 |
-| Switch.cs:14:13:14:21 | After case ...: [match] | Switch.cs:15:17:15:23 | return ...; | 4 |
-| Switch.cs:14:13:14:21 | After case ...: [no-match] | Switch.cs:16:13:16:19 | case ...: | 2 |
-| Switch.cs:16:13:16:19 | After case ...: [match] | Switch.cs:17:17:17:38 | throw ...; | 7 |
-| Switch.cs:16:13:16:19 | After case ...: [no-match] | Switch.cs:18:13:18:22 | case ...: | 2 |
-| Switch.cs:18:13:18:22 | After case ...: [match] | Switch.cs:19:17:19:29 | goto default; | 4 |
-| Switch.cs:18:13:18:22 | After case ...: [no-match] | Switch.cs:20:13:20:23 | case ...: | 2 |
-| Switch.cs:20:13:20:23 | After case ...: [match] | Switch.cs:21:21:21:29 | ... == ... | 7 |
-| Switch.cs:20:13:20:23 | After case ...: [no-match] | Switch.cs:24:13:24:56 | case ...: | 2 |
+| Switch.cs:14:18:14:20 | After "a" [match] | Switch.cs:15:17:15:23 | return ...; | 4 |
+| Switch.cs:14:18:14:20 | After "a" [no-match] | Switch.cs:16:18:16:18 | 0 | 4 |
+| Switch.cs:16:13:16:19 | After case ...: [match] | Switch.cs:17:17:17:38 | throw ...; | 6 |
+| Switch.cs:16:18:16:18 | After 0 [match] | Switch.cs:16:18:16:18 | After 0 [match] | 1 |
+| Switch.cs:16:18:16:18 | After 0 [no-match] | Switch.cs:18:18:18:21 | null | 4 |
+| Switch.cs:18:18:18:21 | After null [match] | Switch.cs:19:17:19:29 | goto default; | 4 |
+| Switch.cs:18:18:18:21 | After null [no-match] | Switch.cs:20:18:20:22 | Int32 i | 4 |
+| Switch.cs:20:18:20:22 | After Int32 i [match] | Switch.cs:21:21:21:29 | ... == ... | 7 |
+| Switch.cs:20:18:20:22 | After Int32 i [no-match] | Switch.cs:24:18:24:25 | String s | 4 |
| Switch.cs:21:21:21:29 | After ... == ... [false] | Switch.cs:23:17:23:28 | goto case ...; | 5 |
| Switch.cs:21:21:21:29 | After ... == ... [true] | Switch.cs:22:21:22:27 | return ...; | 3 |
-| Switch.cs:24:13:24:56 | After case ...: [match] | Switch.cs:24:32:24:43 | ... > ... | 10 |
-| Switch.cs:24:13:24:56 | After case ...: [no-match] | Switch.cs:24:13:24:56 | After case ...: [no-match] | 1 |
+| Switch.cs:24:18:24:25 | After String s [match] | Switch.cs:24:32:24:43 | ... > ... | 10 |
+| Switch.cs:24:18:24:25 | After String s [no-match] | Switch.cs:24:13:24:56 | After case ...: [no-match] | 2 |
| Switch.cs:24:32:24:43 | After ... > ... [false] | Switch.cs:24:32:24:43 | After ... > ... [false] | 1 |
| Switch.cs:24:32:24:43 | After ... > ... [true] | Switch.cs:24:48:24:55 | ... != ... | 5 |
| Switch.cs:24:32:24:55 | After ... && ... [false] | Switch.cs:24:32:24:55 | After ... && ... [false] | 1 |
| Switch.cs:24:48:24:55 | After ... != ... [false] | Switch.cs:24:48:24:55 | After ... != ... [false] | 1 |
| Switch.cs:24:48:24:55 | After ... != ... [true] | Switch.cs:26:17:26:23 | return ...; | 10 |
-| Switch.cs:27:13:27:39 | After case ...: [match] | Switch.cs:27:32:27:38 | call to method Throw | 4 |
-| Switch.cs:27:13:27:39 | After case ...: [no-match] | Switch.cs:30:13:30:20 | default: | 2 |
-| Switch.cs:27:13:27:39 | case ...: | Switch.cs:27:13:27:39 | case ...: | 1 |
+| Switch.cs:27:13:27:39 | case ...: | Switch.cs:27:18:27:25 | Double d | 2 |
+| Switch.cs:27:18:27:25 | After Double d [match] | Switch.cs:27:32:27:38 | call to method Throw | 4 |
+| Switch.cs:27:18:27:25 | After Double d [no-match] | Switch.cs:30:13:30:20 | default: | 3 |
| Switch.cs:30:13:30:20 | After default: [match] | Switch.cs:29:17:29:23 | return ...; | 6 |
| Switch.cs:35:10:35:11 | Entry | Switch.cs:35:10:35:11 | Exit | 7 |
-| Switch.cs:44:10:44:11 | Entry | Switch.cs:48:13:48:23 | case ...: | 6 |
+| Switch.cs:44:10:44:11 | Entry | Switch.cs:48:18:48:20 | access to type Int32 | 7 |
| Switch.cs:46:9:52:9 | After switch (...) {...} | Switch.cs:44:10:44:11 | Exit | 4 |
-| Switch.cs:48:13:48:23 | After case ...: [match] | Switch.cs:49:17:49:22 | break; | 4 |
-| Switch.cs:48:13:48:23 | After case ...: [no-match] | Switch.cs:50:13:50:39 | case ...: | 2 |
-| Switch.cs:50:13:50:39 | After case ...: [match] | Switch.cs:50:30:50:38 | ... != ... | 6 |
-| Switch.cs:50:13:50:39 | After case ...: [no-match] | Switch.cs:50:13:50:39 | After case ...: [no-match] | 1 |
+| Switch.cs:48:18:48:20 | After access to type Int32 [match] | Switch.cs:49:17:49:22 | break; | 4 |
+| Switch.cs:48:18:48:20 | After access to type Int32 [no-match] | Switch.cs:50:18:50:21 | access to type Boolean | 4 |
+| Switch.cs:50:18:50:21 | After access to type Boolean [match] | Switch.cs:50:30:50:38 | ... != ... | 6 |
+| Switch.cs:50:18:50:21 | After access to type Boolean [no-match] | Switch.cs:50:13:50:39 | After case ...: [no-match] | 2 |
| Switch.cs:50:30:50:38 | After ... != ... [false] | Switch.cs:50:30:50:38 | After ... != ... [false] | 1 |
| Switch.cs:50:30:50:38 | After ... != ... [true] | Switch.cs:51:17:51:22 | break; | 3 |
-| Switch.cs:55:10:55:11 | Entry | Switch.cs:59:13:59:19 | case ...: | 9 |
+| Switch.cs:55:10:55:11 | Entry | Switch.cs:59:18:59:18 | 2 | 10 |
| Switch.cs:57:9:63:9 | After switch (...) {...} | Switch.cs:55:10:55:11 | Exit | 4 |
-| Switch.cs:59:13:59:19 | After case ...: [match] | Switch.cs:60:17:60:22 | break; | 4 |
-| Switch.cs:59:13:59:19 | After case ...: [no-match] | Switch.cs:61:13:61:19 | case ...: | 2 |
-| Switch.cs:61:13:61:19 | After case ...: [match] | Switch.cs:62:17:62:22 | break; | 4 |
-| Switch.cs:61:13:61:19 | After case ...: [no-match] | Switch.cs:61:13:61:19 | After case ...: [no-match] | 1 |
-| Switch.cs:66:10:66:11 | Entry | Switch.cs:70:13:70:23 | case ...: | 9 |
+| Switch.cs:59:18:59:18 | After 2 [match] | Switch.cs:60:17:60:22 | break; | 4 |
+| Switch.cs:59:18:59:18 | After 2 [no-match] | Switch.cs:61:18:61:18 | 3 | 4 |
+| Switch.cs:61:18:61:18 | After 3 [match] | Switch.cs:62:17:62:22 | break; | 4 |
+| Switch.cs:61:18:61:18 | After 3 [no-match] | Switch.cs:61:13:61:19 | After case ...: [no-match] | 2 |
+| Switch.cs:66:10:66:11 | Entry | Switch.cs:70:18:70:20 | access to type Int32 | 10 |
| Switch.cs:68:9:74:9 | After switch (...) {...} | Switch.cs:66:10:66:11 | Exit | 4 |
-| Switch.cs:70:13:70:23 | After case ...: [match] | Switch.cs:71:17:71:22 | break; | 4 |
-| Switch.cs:70:13:70:23 | After case ...: [no-match] | Switch.cs:72:13:72:20 | case ...: | 2 |
-| Switch.cs:72:13:72:20 | After case ...: [match] | Switch.cs:73:17:73:22 | break; | 4 |
-| Switch.cs:72:13:72:20 | After case ...: [no-match] | Switch.cs:72:13:72:20 | After case ...: [no-match] | 1 |
-| Switch.cs:77:10:77:11 | Entry | Switch.cs:81:13:81:19 | case ...: | 7 |
+| Switch.cs:70:18:70:20 | After access to type Int32 [match] | Switch.cs:71:17:71:22 | break; | 4 |
+| Switch.cs:70:18:70:20 | After access to type Int32 [no-match] | Switch.cs:72:18:72:19 | "" | 4 |
+| Switch.cs:72:18:72:19 | After "" [match] | Switch.cs:73:17:73:22 | break; | 4 |
+| Switch.cs:72:18:72:19 | After "" [no-match] | Switch.cs:72:13:72:20 | After case ...: [no-match] | 2 |
+| Switch.cs:77:10:77:11 | Entry | Switch.cs:81:18:81:18 | 1 | 8 |
| Switch.cs:77:10:77:11 | Normal Exit | Switch.cs:77:10:77:11 | Exit | 2 |
| Switch.cs:79:9:87:9 | After switch (...) {...} | Switch.cs:88:9:88:21 | return ...; | 4 |
-| Switch.cs:81:13:81:19 | After case ...: [match] | Switch.cs:82:17:82:28 | return ...; | 5 |
-| Switch.cs:81:13:81:19 | After case ...: [no-match] | Switch.cs:83:13:83:19 | case ...: | 2 |
-| Switch.cs:83:13:83:19 | After case ...: [match] | Switch.cs:84:21:84:25 | ... > ... | 7 |
-| Switch.cs:83:13:83:19 | After case ...: [no-match] | Switch.cs:83:13:83:19 | After case ...: [no-match] | 1 |
+| Switch.cs:81:18:81:18 | After 1 [match] | Switch.cs:82:17:82:28 | return ...; | 5 |
+| Switch.cs:81:18:81:18 | After 1 [no-match] | Switch.cs:83:18:83:18 | 2 | 4 |
+| Switch.cs:83:18:83:18 | After 2 [match] | Switch.cs:84:21:84:25 | ... > ... | 7 |
+| Switch.cs:83:18:83:18 | After 2 [no-match] | Switch.cs:83:13:83:19 | After case ...: [no-match] | 2 |
| Switch.cs:84:21:84:25 | After ... > ... [false] | Switch.cs:86:17:86:28 | return ...; | 5 |
| Switch.cs:84:21:84:25 | After ... > ... [true] | Switch.cs:85:21:85:26 | break; | 3 |
-| Switch.cs:91:10:91:11 | Entry | Switch.cs:95:13:95:23 | case ...: | 6 |
+| Switch.cs:91:10:91:11 | Entry | Switch.cs:95:18:95:20 | access to type Int32 | 7 |
| Switch.cs:91:10:91:11 | Normal Exit | Switch.cs:91:10:91:11 | Exit | 2 |
-| Switch.cs:95:13:95:23 | After case ...: [match] | Switch.cs:96:17:96:28 | return ...; | 5 |
-| Switch.cs:95:13:95:23 | After case ...: [no-match] | Switch.cs:98:9:98:21 | return ...; | 5 |
+| Switch.cs:95:18:95:20 | After access to type Int32 [match] | Switch.cs:96:17:96:28 | return ...; | 5 |
+| Switch.cs:95:18:95:20 | After access to type Int32 [no-match] | Switch.cs:98:9:98:21 | return ...; | 6 |
| Switch.cs:101:9:101:10 | Entry | Switch.cs:103:17:103:17 | access to parameter s | 6 |
| Switch.cs:101:9:101:10 | Normal Exit | Switch.cs:101:9:101:10 | Exit | 2 |
| Switch.cs:103:17:103:17 | After access to parameter s [non-null] | Switch.cs:103:17:103:25 | access to property Length | 2 |
| Switch.cs:103:17:103:17 | After access to parameter s [null] | Switch.cs:103:17:103:17 | After access to parameter s [null] | 1 |
-| Switch.cs:103:17:103:25 | After access to property Length | Switch.cs:105:13:105:19 | case ...: | 2 |
-| Switch.cs:105:13:105:19 | After case ...: [match] | Switch.cs:105:21:105:29 | return ...; | 5 |
-| Switch.cs:105:13:105:19 | After case ...: [no-match] | Switch.cs:106:13:106:19 | case ...: | 2 |
-| Switch.cs:106:13:106:19 | After case ...: [match] | Switch.cs:106:21:106:29 | return ...; | 5 |
-| Switch.cs:106:13:106:19 | After case ...: [no-match] | Switch.cs:108:9:108:18 | return ...; | 8 |
+| Switch.cs:103:17:103:25 | After access to property Length | Switch.cs:105:18:105:18 | 0 | 3 |
+| Switch.cs:105:18:105:18 | After 0 [match] | Switch.cs:105:21:105:29 | return ...; | 5 |
+| Switch.cs:105:18:105:18 | After 0 [no-match] | Switch.cs:106:18:106:18 | 1 | 4 |
+| Switch.cs:106:18:106:18 | After 1 [match] | Switch.cs:106:21:106:29 | return ...; | 5 |
+| Switch.cs:106:18:106:18 | After 1 [no-match] | Switch.cs:108:9:108:18 | return ...; | 9 |
| Switch.cs:111:17:111:21 | Entry | Switch.cs:111:17:111:21 | Exit | 8 |
-| Switch.cs:113:9:113:11 | Entry | Switch.cs:117:13:117:35 | case ...: | 9 |
+| Switch.cs:113:9:113:11 | Entry | Switch.cs:117:18:117:18 | 3 | 10 |
| Switch.cs:113:9:113:11 | Normal Exit | Switch.cs:113:9:113:11 | Exit | 2 |
| Switch.cs:115:9:119:9 | After switch (...) {...} | Switch.cs:120:9:120:18 | return ...; | 7 |
-| Switch.cs:117:13:117:35 | After case ...: [match] | Switch.cs:117:25:117:34 | ... == ... | 6 |
-| Switch.cs:117:13:117:35 | After case ...: [no-match] | Switch.cs:117:13:117:35 | After case ...: [no-match] | 1 |
+| Switch.cs:117:18:117:18 | After 3 [match] | Switch.cs:117:25:117:34 | ... == ... | 6 |
+| Switch.cs:117:18:117:18 | After 3 [no-match] | Switch.cs:117:13:117:35 | After case ...: [no-match] | 2 |
| Switch.cs:117:25:117:34 | After ... == ... [false] | Switch.cs:117:25:117:34 | After ... == ... [false] | 1 |
| Switch.cs:117:25:117:34 | After ... == ... [true] | Switch.cs:117:37:117:45 | return ...; | 4 |
-| Switch.cs:118:13:118:34 | After case ...: [match] | Switch.cs:118:25:118:33 | ... == ... | 6 |
-| Switch.cs:118:13:118:34 | After case ...: [no-match] | Switch.cs:118:13:118:34 | After case ...: [no-match] | 1 |
-| Switch.cs:118:13:118:34 | case ...: | Switch.cs:118:13:118:34 | case ...: | 1 |
+| Switch.cs:118:13:118:34 | case ...: | Switch.cs:118:18:118:18 | 2 | 2 |
+| Switch.cs:118:18:118:18 | After 2 [match] | Switch.cs:118:25:118:33 | ... == ... | 6 |
+| Switch.cs:118:18:118:18 | After 2 [no-match] | Switch.cs:118:13:118:34 | After case ...: [no-match] | 2 |
| Switch.cs:118:25:118:33 | After ... == ... [false] | Switch.cs:118:25:118:33 | After ... == ... [false] | 1 |
| Switch.cs:118:25:118:33 | After ... == ... [true] | Switch.cs:118:36:118:44 | return ...; | 4 |
-| Switch.cs:123:10:123:12 | Entry | Switch.cs:125:24:125:34 | ... => ... | 7 |
+| Switch.cs:123:10:123:12 | Entry | Switch.cs:125:24:125:29 | Boolean b | 8 |
| Switch.cs:123:10:123:12 | Normal Exit | Switch.cs:123:10:123:12 | Exit | 2 |
| Switch.cs:125:13:125:48 | After ... switch { ... } [false] | Switch.cs:124:5:127:5 | After {...} | 3 |
| Switch.cs:125:13:125:48 | After ... switch { ... } [true] | Switch.cs:126:13:126:19 | return ...; | 3 |
-| Switch.cs:125:24:125:34 | After ... => ... [match] | Switch.cs:125:34:125:34 | access to local variable b | 3 |
-| Switch.cs:125:24:125:34 | After ... => ... [no-match] | Switch.cs:125:42:125:46 | false | 5 |
-| Switch.cs:129:12:129:14 | Entry | Switch.cs:131:28:131:40 | ... => ... | 8 |
+| Switch.cs:125:24:125:29 | After Boolean b [match] | Switch.cs:125:34:125:34 | access to local variable b | 3 |
+| Switch.cs:125:24:125:29 | After Boolean b [no-match] | Switch.cs:125:42:125:46 | false | 7 |
+| Switch.cs:129:12:129:14 | Entry | Switch.cs:131:28:131:35 | String s | 9 |
| Switch.cs:131:16:131:66 | After call to method ToString | Switch.cs:129:12:129:14 | Exit | 4 |
| Switch.cs:131:17:131:53 | After ... switch { ... } [non-null] | Switch.cs:131:16:131:66 | call to method ToString | 2 |
| Switch.cs:131:17:131:53 | After ... switch { ... } [null] | Switch.cs:131:17:131:53 | After ... switch { ... } [null] | 1 |
-| Switch.cs:131:28:131:40 | After ... => ... [match] | Switch.cs:131:40:131:40 | access to local variable s | 3 |
-| Switch.cs:131:28:131:40 | After ... => ... [no-match] | Switch.cs:131:48:131:51 | null | 5 |
-| Switch.cs:134:9:134:11 | Entry | Switch.cs:139:13:139:19 | case ...: | 6 |
+| Switch.cs:131:28:131:35 | After String s [match] | Switch.cs:131:40:131:40 | access to local variable s | 3 |
+| Switch.cs:131:28:131:35 | After String s [no-match] | Switch.cs:131:48:131:51 | null | 7 |
+| Switch.cs:134:9:134:11 | Entry | Switch.cs:139:18:139:18 | 1 | 7 |
| Switch.cs:134:9:134:11 | Normal Exit | Switch.cs:134:9:134:11 | Exit | 2 |
-| Switch.cs:139:13:139:19 | After case ...: [match] | Switch.cs:139:21:139:29 | return ...; | 5 |
-| Switch.cs:139:13:139:19 | After case ...: [no-match] | Switch.cs:140:13:140:19 | case ...: | 2 |
-| Switch.cs:140:13:140:19 | After case ...: [match] | Switch.cs:140:21:140:29 | return ...; | 5 |
-| Switch.cs:140:13:140:19 | After case ...: [no-match] | Switch.cs:138:22:138:31 | return ...; | 9 |
-| Switch.cs:144:9:144:11 | Entry | Switch.cs:148:13:148:19 | case ...: | 6 |
+| Switch.cs:139:18:139:18 | After 1 [match] | Switch.cs:139:21:139:29 | return ...; | 5 |
+| Switch.cs:139:18:139:18 | After 1 [no-match] | Switch.cs:140:18:140:18 | 2 | 4 |
+| Switch.cs:140:18:140:18 | After 2 [match] | Switch.cs:140:21:140:29 | return ...; | 5 |
+| Switch.cs:140:18:140:18 | After 2 [no-match] | Switch.cs:138:22:138:31 | return ...; | 10 |
+| Switch.cs:144:9:144:11 | Entry | Switch.cs:148:18:148:18 | 1 | 7 |
| Switch.cs:144:9:144:11 | Normal Exit | Switch.cs:144:9:144:11 | Exit | 2 |
-| Switch.cs:148:13:148:19 | After case ...: [match] | Switch.cs:148:21:148:29 | return ...; | 5 |
-| Switch.cs:148:13:148:19 | After case ...: [no-match] | Switch.cs:150:13:150:19 | case ...: | 2 |
-| Switch.cs:150:13:150:19 | After case ...: [match] | Switch.cs:150:21:150:29 | return ...; | 5 |
-| Switch.cs:150:13:150:19 | After case ...: [no-match] | Switch.cs:149:22:149:31 | return ...; | 9 |
-| Switch.cs:154:10:154:12 | Entry | Switch.cs:156:28:156:38 | ... => ... | 9 |
+| Switch.cs:148:18:148:18 | After 1 [match] | Switch.cs:148:21:148:29 | return ...; | 5 |
+| Switch.cs:148:18:148:18 | After 1 [no-match] | Switch.cs:150:18:150:18 | 2 | 4 |
+| Switch.cs:150:18:150:18 | After 2 [match] | Switch.cs:150:21:150:29 | return ...; | 5 |
+| Switch.cs:150:18:150:18 | After 2 [no-match] | Switch.cs:149:22:149:31 | return ...; | 10 |
+| Switch.cs:154:10:154:12 | Entry | Switch.cs:156:28:156:31 | true | 10 |
| Switch.cs:156:17:156:54 | After ... switch { ... } | Switch.cs:157:13:157:13 | access to parameter b | 6 |
-| Switch.cs:156:28:156:38 | After ... => ... [match] | Switch.cs:156:36:156:38 | "a" | 3 |
-| Switch.cs:156:28:156:38 | After ... => ... [no-match] | Switch.cs:156:41:156:52 | ... => ... | 2 |
-| Switch.cs:156:41:156:52 | After ... => ... [match] | Switch.cs:156:50:156:52 | "b" | 3 |
-| Switch.cs:156:41:156:52 | After ... => ... [no-match] | Switch.cs:156:41:156:52 | After ... => ... [no-match] | 1 |
+| Switch.cs:156:28:156:31 | After true [match] | Switch.cs:156:36:156:38 | "a" | 3 |
+| Switch.cs:156:28:156:31 | After true [no-match] | Switch.cs:156:41:156:45 | false | 4 |
+| Switch.cs:156:41:156:45 | After false [match] | Switch.cs:156:50:156:52 | "b" | 3 |
+| Switch.cs:156:41:156:45 | After false [no-match] | Switch.cs:156:41:156:52 | After ... => ... [no-match] | 2 |
| Switch.cs:157:9:160:49 | After if (...) ... | Switch.cs:154:10:154:12 | Exit | 4 |
| Switch.cs:157:13:157:13 | After access to parameter b [false] | Switch.cs:160:13:160:49 | After ...; | 14 |
| Switch.cs:157:13:157:13 | After access to parameter b [true] | Switch.cs:158:13:158:49 | After ...; | 14 |
-| Switch.cs:163:10:163:12 | Entry | Switch.cs:167:13:167:19 | case ...: | 6 |
+| Switch.cs:163:10:163:12 | Entry | Switch.cs:167:18:167:18 | 1 | 7 |
| Switch.cs:165:9:177:9 | After switch (...) {...} | Switch.cs:163:10:163:12 | Exit | 4 |
-| Switch.cs:167:13:167:19 | After case ...: [match] | Switch.cs:167:18:167:18 | 1 | 2 |
-| Switch.cs:167:13:167:19 | After case ...: [no-match] | Switch.cs:168:13:168:19 | case ...: | 2 |
-| Switch.cs:168:13:168:19 | After case ...: [match] | Switch.cs:168:18:168:18 | 2 | 2 |
-| Switch.cs:168:13:168:19 | After case ...: [no-match] | Switch.cs:171:13:171:19 | case ...: | 2 |
+| Switch.cs:167:18:167:18 | After 1 [match] | Switch.cs:167:13:167:19 | After case ...: [match] | 2 |
+| Switch.cs:167:18:167:18 | After 1 [no-match] | Switch.cs:168:18:168:18 | 2 | 4 |
+| Switch.cs:168:18:168:18 | After 2 [match] | Switch.cs:168:13:168:19 | After case ...: [match] | 2 |
+| Switch.cs:168:18:168:18 | After 2 [no-match] | Switch.cs:171:18:171:18 | 3 | 4 |
| Switch.cs:169:17:169:51 | ...; | Switch.cs:170:17:170:22 | break; | 8 |
-| Switch.cs:171:13:171:19 | After case ...: [match] | Switch.cs:173:17:173:22 | break; | 10 |
-| Switch.cs:171:13:171:19 | After case ...: [no-match] | Switch.cs:176:17:176:22 | break; | 11 |
+| Switch.cs:171:18:171:18 | After 3 [match] | Switch.cs:173:17:173:22 | break; | 10 |
+| Switch.cs:171:18:171:18 | After 3 [no-match] | Switch.cs:176:17:176:22 | break; | 12 |
| TypeAccesses.cs:1:7:1:18 | Entry | TypeAccesses.cs:1:7:1:18 | Exit | 11 |
| TypeAccesses.cs:3:10:3:10 | Entry | TypeAccesses.cs:7:13:7:22 | ... is ... | 27 |
| TypeAccesses.cs:7:9:7:25 | After if (...) ... | TypeAccesses.cs:3:10:3:10 | Exit | 11 |
@@ -1157,21 +1158,23 @@
| cflow.cs:30:18:33:37 | After if (...) ... | cflow.cs:30:18:33:37 | After if (...) ... | 1 |
| cflow.cs:30:22:30:31 | After ... == ... [false] | cflow.cs:33:17:33:37 | After ...; | 7 |
| cflow.cs:30:22:30:31 | After ... == ... [true] | cflow.cs:31:17:31:42 | After ...; | 7 |
-| cflow.cs:37:17:37:22 | Entry | cflow.cs:41:13:41:19 | case ...: | 6 |
+| cflow.cs:37:17:37:22 | Entry | cflow.cs:41:18:41:18 | 1 | 7 |
| cflow.cs:37:17:37:22 | Exit | cflow.cs:37:17:37:22 | Exit | 1 |
-| cflow.cs:39:9:50:9 | After switch (...) {...} | cflow.cs:53:13:53:20 | case ...: | 4 |
-| cflow.cs:41:13:41:19 | After case ...: [match] | cflow.cs:43:17:43:28 | goto case ...; | 11 |
-| cflow.cs:41:13:41:19 | After case ...: [no-match] | cflow.cs:44:13:44:19 | case ...: | 2 |
-| cflow.cs:44:13:44:19 | After case ...: [match] | cflow.cs:46:17:46:28 | goto case ...; | 11 |
-| cflow.cs:44:13:44:19 | After case ...: [no-match] | cflow.cs:47:13:47:19 | case ...: | 2 |
-| cflow.cs:47:13:47:19 | After case ...: [match] | cflow.cs:49:17:49:22 | break; | 10 |
-| cflow.cs:47:13:47:19 | After case ...: [no-match] | cflow.cs:47:13:47:19 | After case ...: [no-match] | 1 |
-| cflow.cs:51:9:59:9 | After switch (...) {...} | cflow.cs:62:13:62:19 | case ...: | 10 |
-| cflow.cs:53:13:53:20 | After case ...: [match] | cflow.cs:55:17:55:22 | break; | 10 |
-| cflow.cs:53:13:53:20 | After case ...: [no-match] | cflow.cs:58:17:58:22 | break; | 11 |
+| cflow.cs:39:9:50:9 | After switch (...) {...} | cflow.cs:53:18:53:19 | 42 | 5 |
+| cflow.cs:41:13:41:19 | After case ...: [match] | cflow.cs:43:17:43:28 | goto case ...; | 10 |
+| cflow.cs:41:18:41:18 | After 1 [match] | cflow.cs:41:18:41:18 | After 1 [match] | 1 |
+| cflow.cs:41:18:41:18 | After 1 [no-match] | cflow.cs:44:18:44:18 | 2 | 4 |
+| cflow.cs:44:13:44:19 | After case ...: [match] | cflow.cs:46:17:46:28 | goto case ...; | 10 |
+| cflow.cs:44:18:44:18 | After 2 [match] | cflow.cs:44:18:44:18 | After 2 [match] | 1 |
+| cflow.cs:44:18:44:18 | After 2 [no-match] | cflow.cs:47:18:47:18 | 3 | 4 |
+| cflow.cs:47:18:47:18 | After 3 [match] | cflow.cs:49:17:49:22 | break; | 10 |
+| cflow.cs:47:18:47:18 | After 3 [no-match] | cflow.cs:47:13:47:19 | After case ...: [no-match] | 2 |
+| cflow.cs:51:9:59:9 | After switch (...) {...} | cflow.cs:62:18:62:18 | 0 | 11 |
+| cflow.cs:53:18:53:19 | After 42 [match] | cflow.cs:55:17:55:22 | break; | 10 |
+| cflow.cs:53:18:53:19 | After 42 [no-match] | cflow.cs:58:17:58:22 | break; | 12 |
| cflow.cs:60:9:66:9 | After switch (...) {...} | cflow.cs:37:17:37:22 | Normal Exit | 5 |
-| cflow.cs:62:13:62:19 | After case ...: [match] | cflow.cs:63:23:63:33 | ... == ... | 11 |
-| cflow.cs:62:13:62:19 | After case ...: [no-match] | cflow.cs:62:13:62:19 | After case ...: [no-match] | 1 |
+| cflow.cs:62:18:62:18 | After 0 [match] | cflow.cs:63:23:63:33 | ... == ... | 11 |
+| cflow.cs:62:18:62:18 | After 0 [no-match] | cflow.cs:62:13:62:19 | After case ...: [no-match] | 2 |
| cflow.cs:63:23:63:33 | After ... == ... [false] | cflow.cs:37:17:37:22 | Exceptional Exit | 8 |
| cflow.cs:63:23:63:33 | After ... == ... [true] | cflow.cs:65:17:65:22 | break; | 5 |
| cflow.cs:70:18:70:18 | Entry | cflow.cs:72:13:72:21 | ... == ... | 8 |
@@ -1293,15 +1296,15 @@
| cflow.cs:242:12:242:41 | After if (...) ... | cflow.cs:244:13:244:28 | ... > ... | 12 |
| cflow.cs:242:19:242:35 | After ... == ... [false] | cflow.cs:242:16:242:36 | After !... [false] | 3 |
| cflow.cs:242:19:242:35 | After ... == ... [true] | cflow.cs:242:39:242:41 | {...} | 4 |
-| cflow.cs:244:13:244:28 | After ... > ... [false] | cflow.cs:248:13:248:19 | case ...: | 15 |
+| cflow.cs:244:13:244:28 | After ... > ... [false] | cflow.cs:248:18:248:18 | 0 | 16 |
| cflow.cs:244:13:244:28 | After ... > ... [true] | cflow.cs:244:31:244:41 | goto ...; | 3 |
| cflow.cs:246:9:258:9 | After switch (...) {...} | cflow.cs:240:10:240:13 | Exit | 4 |
-| cflow.cs:248:13:248:19 | After case ...: [match] | cflow.cs:249:17:249:29 | goto default; | 4 |
-| cflow.cs:248:13:248:19 | After case ...: [no-match] | cflow.cs:250:13:250:19 | case ...: | 2 |
-| cflow.cs:250:13:250:19 | After case ...: [match] | cflow.cs:252:17:252:22 | break; | 10 |
-| cflow.cs:250:13:250:19 | After case ...: [no-match] | cflow.cs:253:13:253:19 | case ...: | 2 |
-| cflow.cs:253:13:253:19 | After case ...: [match] | cflow.cs:254:17:254:27 | goto ...; | 4 |
-| cflow.cs:253:13:253:19 | After case ...: [no-match] | cflow.cs:255:13:255:20 | default: | 2 |
+| cflow.cs:248:18:248:18 | After 0 [match] | cflow.cs:249:17:249:29 | goto default; | 4 |
+| cflow.cs:248:18:248:18 | After 0 [no-match] | cflow.cs:250:18:250:18 | 1 | 4 |
+| cflow.cs:250:18:250:18 | After 1 [match] | cflow.cs:252:17:252:22 | break; | 10 |
+| cflow.cs:250:18:250:18 | After 1 [no-match] | cflow.cs:253:18:253:18 | 2 | 4 |
+| cflow.cs:253:18:253:18 | After 2 [match] | cflow.cs:254:17:254:27 | goto ...; | 4 |
+| cflow.cs:253:18:253:18 | After 2 [no-match] | cflow.cs:255:13:255:20 | default: | 3 |
| cflow.cs:255:13:255:20 | After default: [match] | cflow.cs:257:17:257:22 | break; | 9 |
| cflow.cs:261:49:261:53 | Entry | cflow.cs:264:18:264:22 | After Int32 i = ... | 12 |
| cflow.cs:261:49:261:53 | Exceptional Exit | cflow.cs:261:49:261:53 | Exceptional Exit | 1 |
diff --git a/csharp/ql/test/library-tests/controlflow/graph/Condition.expected b/csharp/ql/test/library-tests/controlflow/graph/Condition.expected
index 94ae5455517..4ed3508dd69 100644
--- a/csharp/ql/test/library-tests/controlflow/graph/Condition.expected
+++ b/csharp/ql/test/library-tests/controlflow/graph/Condition.expected
@@ -541,19 +541,19 @@ conditionBlock
| Patterns.cs:5:10:5:11 | Entry | Patterns.cs:16:14:18:9 | After if (...) ... | false |
| Patterns.cs:5:10:5:11 | Entry | Patterns.cs:16:18:16:28 | After ... is ... [false] | false |
| Patterns.cs:5:10:5:11 | Entry | Patterns.cs:16:18:16:28 | [MatchTrue] ... is ... | false |
-| Patterns.cs:8:9:18:9 | After if (...) ... | Patterns.cs:22:13:22:23 | After case ...: [match] | true |
-| Patterns.cs:8:9:18:9 | After if (...) ... | Patterns.cs:22:13:22:23 | After case ...: [no-match] | false |
-| Patterns.cs:8:9:18:9 | After if (...) ... | Patterns.cs:24:13:24:36 | After case ...: [match] | false |
-| Patterns.cs:8:9:18:9 | After if (...) ... | Patterns.cs:24:13:24:36 | After case ...: [no-match] | false |
+| Patterns.cs:8:9:18:9 | After if (...) ... | Patterns.cs:22:18:22:22 | After "xyz" [match] | true |
+| Patterns.cs:8:9:18:9 | After if (...) ... | Patterns.cs:22:18:22:22 | After "xyz" [no-match] | false |
+| Patterns.cs:8:9:18:9 | After if (...) ... | Patterns.cs:24:18:24:23 | After Int32 i2 [match] | false |
+| Patterns.cs:8:9:18:9 | After if (...) ... | Patterns.cs:24:18:24:23 | After Int32 i2 [no-match] | false |
| Patterns.cs:8:9:18:9 | After if (...) ... | Patterns.cs:24:30:24:35 | After ... > ... [false] | false |
| Patterns.cs:8:9:18:9 | After if (...) ... | Patterns.cs:24:30:24:35 | After ... > ... [true] | false |
-| Patterns.cs:8:9:18:9 | After if (...) ... | Patterns.cs:27:13:27:24 | After case ...: [match] | false |
-| Patterns.cs:8:9:18:9 | After if (...) ... | Patterns.cs:27:13:27:24 | After case ...: [no-match] | false |
| Patterns.cs:8:9:18:9 | After if (...) ... | Patterns.cs:27:13:27:24 | case ...: | false |
-| Patterns.cs:8:9:18:9 | After if (...) ... | Patterns.cs:30:13:30:27 | After case ...: [match] | false |
-| Patterns.cs:8:9:18:9 | After if (...) ... | Patterns.cs:30:13:30:27 | After case ...: [no-match] | false |
-| Patterns.cs:8:9:18:9 | After if (...) ... | Patterns.cs:33:13:33:24 | After case ...: [match] | false |
-| Patterns.cs:8:9:18:9 | After if (...) ... | Patterns.cs:33:13:33:24 | After case ...: [no-match] | false |
+| Patterns.cs:8:9:18:9 | After if (...) ... | Patterns.cs:27:18:27:23 | After Int32 i3 [match] | false |
+| Patterns.cs:8:9:18:9 | After if (...) ... | Patterns.cs:27:18:27:23 | After Int32 i3 [no-match] | false |
+| Patterns.cs:8:9:18:9 | After if (...) ... | Patterns.cs:30:18:30:26 | After String s2 [match] | false |
+| Patterns.cs:8:9:18:9 | After if (...) ... | Patterns.cs:30:18:30:26 | After String s2 [no-match] | false |
+| Patterns.cs:8:9:18:9 | After if (...) ... | Patterns.cs:33:18:33:23 | After Object v2 [match] | false |
+| Patterns.cs:8:9:18:9 | After if (...) ... | Patterns.cs:33:18:33:23 | After Object v2 [no-match] | false |
| Patterns.cs:8:13:8:23 | After ... is ... [false] | Patterns.cs:12:18:12:31 | After ... is ... [false] | false |
| Patterns.cs:8:13:8:23 | After ... is ... [false] | Patterns.cs:12:18:12:31 | [MatchTrue] ... is ... | true |
| Patterns.cs:8:13:8:23 | After ... is ... [false] | Patterns.cs:16:14:18:9 | After if (...) ... | false |
@@ -561,24 +561,24 @@ conditionBlock
| Patterns.cs:8:13:8:23 | After ... is ... [false] | Patterns.cs:16:18:16:28 | [MatchTrue] ... is ... | false |
| Patterns.cs:12:18:12:31 | After ... is ... [false] | Patterns.cs:16:18:16:28 | After ... is ... [false] | false |
| Patterns.cs:12:18:12:31 | After ... is ... [false] | Patterns.cs:16:18:16:28 | [MatchTrue] ... is ... | true |
-| Patterns.cs:22:13:22:23 | After case ...: [no-match] | Patterns.cs:24:13:24:36 | After case ...: [match] | true |
-| Patterns.cs:22:13:22:23 | After case ...: [no-match] | Patterns.cs:24:13:24:36 | After case ...: [no-match] | false |
-| Patterns.cs:22:13:22:23 | After case ...: [no-match] | Patterns.cs:24:30:24:35 | After ... > ... [false] | true |
-| Patterns.cs:22:13:22:23 | After case ...: [no-match] | Patterns.cs:24:30:24:35 | After ... > ... [true] | true |
-| Patterns.cs:24:13:24:36 | After case ...: [match] | Patterns.cs:24:30:24:35 | After ... > ... [false] | false |
-| Patterns.cs:24:13:24:36 | After case ...: [match] | Patterns.cs:24:30:24:35 | After ... > ... [true] | true |
-| Patterns.cs:27:13:27:24 | After case ...: [no-match] | Patterns.cs:30:13:30:27 | After case ...: [match] | true |
-| Patterns.cs:27:13:27:24 | After case ...: [no-match] | Patterns.cs:30:13:30:27 | After case ...: [no-match] | false |
-| Patterns.cs:27:13:27:24 | After case ...: [no-match] | Patterns.cs:33:13:33:24 | After case ...: [match] | false |
-| Patterns.cs:27:13:27:24 | After case ...: [no-match] | Patterns.cs:33:13:33:24 | After case ...: [no-match] | false |
-| Patterns.cs:27:13:27:24 | case ...: | Patterns.cs:27:13:27:24 | After case ...: [match] | true |
-| Patterns.cs:27:13:27:24 | case ...: | Patterns.cs:27:13:27:24 | After case ...: [no-match] | false |
-| Patterns.cs:27:13:27:24 | case ...: | Patterns.cs:30:13:30:27 | After case ...: [match] | false |
-| Patterns.cs:27:13:27:24 | case ...: | Patterns.cs:30:13:30:27 | After case ...: [no-match] | false |
-| Patterns.cs:27:13:27:24 | case ...: | Patterns.cs:33:13:33:24 | After case ...: [match] | false |
-| Patterns.cs:27:13:27:24 | case ...: | Patterns.cs:33:13:33:24 | After case ...: [no-match] | false |
-| Patterns.cs:30:13:30:27 | After case ...: [no-match] | Patterns.cs:33:13:33:24 | After case ...: [match] | true |
-| Patterns.cs:30:13:30:27 | After case ...: [no-match] | Patterns.cs:33:13:33:24 | After case ...: [no-match] | false |
+| Patterns.cs:22:18:22:22 | After "xyz" [no-match] | Patterns.cs:24:18:24:23 | After Int32 i2 [match] | true |
+| Patterns.cs:22:18:22:22 | After "xyz" [no-match] | Patterns.cs:24:18:24:23 | After Int32 i2 [no-match] | false |
+| Patterns.cs:22:18:22:22 | After "xyz" [no-match] | Patterns.cs:24:30:24:35 | After ... > ... [false] | true |
+| Patterns.cs:22:18:22:22 | After "xyz" [no-match] | Patterns.cs:24:30:24:35 | After ... > ... [true] | true |
+| Patterns.cs:24:18:24:23 | After Int32 i2 [match] | Patterns.cs:24:30:24:35 | After ... > ... [false] | false |
+| Patterns.cs:24:18:24:23 | After Int32 i2 [match] | Patterns.cs:24:30:24:35 | After ... > ... [true] | true |
+| Patterns.cs:27:13:27:24 | case ...: | Patterns.cs:27:18:27:23 | After Int32 i3 [match] | true |
+| Patterns.cs:27:13:27:24 | case ...: | Patterns.cs:27:18:27:23 | After Int32 i3 [no-match] | false |
+| Patterns.cs:27:13:27:24 | case ...: | Patterns.cs:30:18:30:26 | After String s2 [match] | false |
+| Patterns.cs:27:13:27:24 | case ...: | Patterns.cs:30:18:30:26 | After String s2 [no-match] | false |
+| Patterns.cs:27:13:27:24 | case ...: | Patterns.cs:33:18:33:23 | After Object v2 [match] | false |
+| Patterns.cs:27:13:27:24 | case ...: | Patterns.cs:33:18:33:23 | After Object v2 [no-match] | false |
+| Patterns.cs:27:18:27:23 | After Int32 i3 [no-match] | Patterns.cs:30:18:30:26 | After String s2 [match] | true |
+| Patterns.cs:27:18:27:23 | After Int32 i3 [no-match] | Patterns.cs:30:18:30:26 | After String s2 [no-match] | false |
+| Patterns.cs:27:18:27:23 | After Int32 i3 [no-match] | Patterns.cs:33:18:33:23 | After Object v2 [match] | false |
+| Patterns.cs:27:18:27:23 | After Int32 i3 [no-match] | Patterns.cs:33:18:33:23 | After Object v2 [no-match] | false |
+| Patterns.cs:30:18:30:26 | After String s2 [no-match] | Patterns.cs:33:18:33:23 | After Object v2 [match] | true |
+| Patterns.cs:30:18:30:26 | After String s2 [no-match] | Patterns.cs:33:18:33:23 | After Object v2 [no-match] | false |
| Patterns.cs:47:24:47:25 | Entry | Patterns.cs:48:9:48:20 | [MatchTrue] ... is ... | true |
| Patterns.cs:50:24:50:25 | Entry | Patterns.cs:51:9:51:21 | After ... is ... [false] | false |
| Patterns.cs:50:24:50:25 | Entry | Patterns.cs:51:9:51:21 | [MatchTrue] ... is ... | true |
@@ -589,26 +589,26 @@ conditionBlock
| Patterns.cs:51:9:51:21 | After ... is ... [false] | Patterns.cs:51:34:51:39 | [MatchTrue] ... is ... | true |
| Patterns.cs:51:9:51:21 | [MatchTrue] ... is ... | Patterns.cs:51:25:51:30 | [MatchTrue] ... is ... | true |
| Patterns.cs:53:24:53:25 | Entry | Patterns.cs:54:9:54:37 | [MatchTrue] ... is ... | true |
-| Patterns.cs:56:26:56:27 | Entry | Patterns.cs:60:13:60:28 | After ... => ... [match] | true |
-| Patterns.cs:56:26:56:27 | Entry | Patterns.cs:60:13:60:28 | After ... => ... [no-match] | false |
-| Patterns.cs:65:26:65:27 | Entry | Patterns.cs:69:13:69:33 | After ... => ... [match] | true |
-| Patterns.cs:65:26:65:27 | Entry | Patterns.cs:69:13:69:33 | After ... => ... [no-match] | false |
-| Patterns.cs:65:26:65:27 | Entry | Patterns.cs:70:13:70:27 | After ... => ... [match] | false |
-| Patterns.cs:65:26:65:27 | Entry | Patterns.cs:70:13:70:27 | After ... => ... [no-match] | false |
-| Patterns.cs:69:13:69:33 | After ... => ... [no-match] | Patterns.cs:70:13:70:27 | After ... => ... [match] | true |
-| Patterns.cs:69:13:69:33 | After ... => ... [no-match] | Patterns.cs:70:13:70:27 | After ... => ... [no-match] | false |
-| Patterns.cs:74:26:74:27 | Entry | Patterns.cs:78:13:78:24 | After ... => ... [match] | true |
-| Patterns.cs:74:26:74:27 | Entry | Patterns.cs:78:13:78:24 | After ... => ... [no-match] | false |
-| Patterns.cs:74:26:74:27 | Entry | Patterns.cs:79:13:79:24 | After ... => ... [match] | false |
-| Patterns.cs:74:26:74:27 | Entry | Patterns.cs:79:13:79:24 | After ... => ... [no-match] | false |
-| Patterns.cs:74:26:74:27 | Entry | Patterns.cs:80:13:80:20 | After ... => ... [match] | false |
-| Patterns.cs:74:26:74:27 | Entry | Patterns.cs:80:13:80:20 | After ... => ... [no-match] | false |
-| Patterns.cs:78:13:78:24 | After ... => ... [no-match] | Patterns.cs:79:13:79:24 | After ... => ... [match] | true |
-| Patterns.cs:78:13:78:24 | After ... => ... [no-match] | Patterns.cs:79:13:79:24 | After ... => ... [no-match] | false |
-| Patterns.cs:78:13:78:24 | After ... => ... [no-match] | Patterns.cs:80:13:80:20 | After ... => ... [match] | false |
-| Patterns.cs:78:13:78:24 | After ... => ... [no-match] | Patterns.cs:80:13:80:20 | After ... => ... [no-match] | false |
-| Patterns.cs:79:13:79:24 | After ... => ... [no-match] | Patterns.cs:80:13:80:20 | After ... => ... [match] | true |
-| Patterns.cs:79:13:79:24 | After ... => ... [no-match] | Patterns.cs:80:13:80:20 | After ... => ... [no-match] | false |
+| Patterns.cs:56:26:56:27 | Entry | Patterns.cs:60:13:60:17 | After not ... [match] | true |
+| Patterns.cs:56:26:56:27 | Entry | Patterns.cs:60:13:60:17 | After not ... [no-match] | false |
+| Patterns.cs:65:26:65:27 | Entry | Patterns.cs:69:13:69:17 | After not ... [match] | true |
+| Patterns.cs:65:26:65:27 | Entry | Patterns.cs:69:13:69:17 | After not ... [no-match] | false |
+| Patterns.cs:65:26:65:27 | Entry | Patterns.cs:70:13:70:13 | After 2 [match] | false |
+| Patterns.cs:65:26:65:27 | Entry | Patterns.cs:70:13:70:13 | After 2 [no-match] | false |
+| Patterns.cs:69:13:69:17 | After not ... [no-match] | Patterns.cs:70:13:70:13 | After 2 [match] | true |
+| Patterns.cs:69:13:69:17 | After not ... [no-match] | Patterns.cs:70:13:70:13 | After 2 [no-match] | false |
+| Patterns.cs:74:26:74:27 | Entry | Patterns.cs:78:13:78:15 | After > ... [match] | true |
+| Patterns.cs:74:26:74:27 | Entry | Patterns.cs:78:13:78:15 | After > ... [no-match] | false |
+| Patterns.cs:74:26:74:27 | Entry | Patterns.cs:79:13:79:15 | After < ... [match] | false |
+| Patterns.cs:74:26:74:27 | Entry | Patterns.cs:79:13:79:15 | After < ... [no-match] | false |
+| Patterns.cs:74:26:74:27 | Entry | Patterns.cs:80:13:80:13 | After 1 [match] | false |
+| Patterns.cs:74:26:74:27 | Entry | Patterns.cs:80:13:80:13 | After 1 [no-match] | false |
+| Patterns.cs:78:13:78:15 | After > ... [no-match] | Patterns.cs:79:13:79:15 | After < ... [match] | true |
+| Patterns.cs:78:13:78:15 | After > ... [no-match] | Patterns.cs:79:13:79:15 | After < ... [no-match] | false |
+| Patterns.cs:78:13:78:15 | After > ... [no-match] | Patterns.cs:80:13:80:13 | After 1 [match] | false |
+| Patterns.cs:78:13:78:15 | After > ... [no-match] | Patterns.cs:80:13:80:13 | After 1 [no-match] | false |
+| Patterns.cs:79:13:79:15 | After < ... [no-match] | Patterns.cs:80:13:80:13 | After 1 [match] | true |
+| Patterns.cs:79:13:79:15 | After < ... [no-match] | Patterns.cs:80:13:80:13 | After 1 [no-match] | false |
| Patterns.cs:85:26:85:27 | Entry | Patterns.cs:85:39:85:53 | After ... is ... [false] | false |
| Patterns.cs:85:26:85:27 | Entry | Patterns.cs:85:39:85:53 | [MatchTrue] ... is ... | true |
| Patterns.cs:87:26:87:27 | Entry | Patterns.cs:87:39:87:54 | After ... is ... [false] | false |
@@ -620,187 +620,189 @@ conditionBlock
| PostDominance.cs:17:10:17:11 | Entry | PostDominance.cs:19:13:19:21 | After ... is ... [false] | false |
| PostDominance.cs:17:10:17:11 | Entry | PostDominance.cs:19:13:19:21 | [MatchTrue] ... is ... | true |
| Switch.cs:10:10:10:11 | Entry | Switch.cs:10:10:10:11 | Exceptional Exit | false |
-| Switch.cs:10:10:10:11 | Entry | Switch.cs:14:13:14:21 | After case ...: [match] | true |
-| Switch.cs:10:10:10:11 | Entry | Switch.cs:14:13:14:21 | After case ...: [no-match] | false |
+| Switch.cs:10:10:10:11 | Entry | Switch.cs:14:18:14:20 | After "a" [match] | true |
+| Switch.cs:10:10:10:11 | Entry | Switch.cs:14:18:14:20 | After "a" [no-match] | false |
| Switch.cs:10:10:10:11 | Entry | Switch.cs:16:13:16:19 | After case ...: [match] | false |
-| Switch.cs:10:10:10:11 | Entry | Switch.cs:16:13:16:19 | After case ...: [no-match] | false |
-| Switch.cs:10:10:10:11 | Entry | Switch.cs:18:13:18:22 | After case ...: [match] | false |
-| Switch.cs:10:10:10:11 | Entry | Switch.cs:18:13:18:22 | After case ...: [no-match] | false |
-| Switch.cs:10:10:10:11 | Entry | Switch.cs:20:13:20:23 | After case ...: [match] | false |
-| Switch.cs:10:10:10:11 | Entry | Switch.cs:20:13:20:23 | After case ...: [no-match] | false |
+| Switch.cs:10:10:10:11 | Entry | Switch.cs:16:18:16:18 | After 0 [match] | false |
+| Switch.cs:10:10:10:11 | Entry | Switch.cs:16:18:16:18 | After 0 [no-match] | false |
+| Switch.cs:10:10:10:11 | Entry | Switch.cs:18:18:18:21 | After null [match] | false |
+| Switch.cs:10:10:10:11 | Entry | Switch.cs:18:18:18:21 | After null [no-match] | false |
+| Switch.cs:10:10:10:11 | Entry | Switch.cs:20:18:20:22 | After Int32 i [match] | false |
+| Switch.cs:10:10:10:11 | Entry | Switch.cs:20:18:20:22 | After Int32 i [no-match] | false |
| Switch.cs:10:10:10:11 | Entry | Switch.cs:21:21:21:29 | After ... == ... [false] | false |
| Switch.cs:10:10:10:11 | Entry | Switch.cs:21:21:21:29 | After ... == ... [true] | false |
-| Switch.cs:10:10:10:11 | Entry | Switch.cs:24:13:24:56 | After case ...: [match] | false |
-| Switch.cs:10:10:10:11 | Entry | Switch.cs:24:13:24:56 | After case ...: [no-match] | false |
+| Switch.cs:10:10:10:11 | Entry | Switch.cs:24:18:24:25 | After String s [match] | false |
+| Switch.cs:10:10:10:11 | Entry | Switch.cs:24:18:24:25 | After String s [no-match] | false |
| Switch.cs:10:10:10:11 | Entry | Switch.cs:24:32:24:43 | After ... > ... [false] | false |
| Switch.cs:10:10:10:11 | Entry | Switch.cs:24:32:24:43 | After ... > ... [true] | false |
| Switch.cs:10:10:10:11 | Entry | Switch.cs:24:32:24:55 | After ... && ... [false] | false |
| Switch.cs:10:10:10:11 | Entry | Switch.cs:24:48:24:55 | After ... != ... [false] | false |
| Switch.cs:10:10:10:11 | Entry | Switch.cs:24:48:24:55 | After ... != ... [true] | false |
-| Switch.cs:10:10:10:11 | Entry | Switch.cs:27:13:27:39 | After case ...: [match] | false |
-| Switch.cs:10:10:10:11 | Entry | Switch.cs:27:13:27:39 | After case ...: [no-match] | false |
| Switch.cs:10:10:10:11 | Entry | Switch.cs:27:13:27:39 | case ...: | false |
+| Switch.cs:10:10:10:11 | Entry | Switch.cs:27:18:27:25 | After Double d [match] | false |
+| Switch.cs:10:10:10:11 | Entry | Switch.cs:27:18:27:25 | After Double d [no-match] | false |
| Switch.cs:10:10:10:11 | Entry | Switch.cs:30:13:30:20 | After default: [match] | false |
-| Switch.cs:14:13:14:21 | After case ...: [no-match] | Switch.cs:16:13:16:19 | After case ...: [no-match] | false |
-| Switch.cs:14:13:14:21 | After case ...: [no-match] | Switch.cs:18:13:18:22 | After case ...: [match] | false |
-| Switch.cs:14:13:14:21 | After case ...: [no-match] | Switch.cs:18:13:18:22 | After case ...: [no-match] | false |
-| Switch.cs:14:13:14:21 | After case ...: [no-match] | Switch.cs:20:13:20:23 | After case ...: [match] | false |
-| Switch.cs:14:13:14:21 | After case ...: [no-match] | Switch.cs:20:13:20:23 | After case ...: [no-match] | false |
-| Switch.cs:14:13:14:21 | After case ...: [no-match] | Switch.cs:21:21:21:29 | After ... == ... [false] | false |
-| Switch.cs:14:13:14:21 | After case ...: [no-match] | Switch.cs:21:21:21:29 | After ... == ... [true] | false |
-| Switch.cs:14:13:14:21 | After case ...: [no-match] | Switch.cs:24:13:24:56 | After case ...: [match] | false |
-| Switch.cs:14:13:14:21 | After case ...: [no-match] | Switch.cs:24:13:24:56 | After case ...: [no-match] | false |
-| Switch.cs:14:13:14:21 | After case ...: [no-match] | Switch.cs:24:32:24:43 | After ... > ... [false] | false |
-| Switch.cs:14:13:14:21 | After case ...: [no-match] | Switch.cs:24:32:24:43 | After ... > ... [true] | false |
-| Switch.cs:14:13:14:21 | After case ...: [no-match] | Switch.cs:24:32:24:55 | After ... && ... [false] | false |
-| Switch.cs:14:13:14:21 | After case ...: [no-match] | Switch.cs:24:48:24:55 | After ... != ... [false] | false |
-| Switch.cs:14:13:14:21 | After case ...: [no-match] | Switch.cs:24:48:24:55 | After ... != ... [true] | false |
-| Switch.cs:14:13:14:21 | After case ...: [no-match] | Switch.cs:27:13:27:39 | After case ...: [match] | false |
-| Switch.cs:14:13:14:21 | After case ...: [no-match] | Switch.cs:27:13:27:39 | After case ...: [no-match] | false |
-| Switch.cs:14:13:14:21 | After case ...: [no-match] | Switch.cs:27:13:27:39 | case ...: | false |
-| Switch.cs:14:13:14:21 | After case ...: [no-match] | Switch.cs:30:13:30:20 | After default: [match] | false |
-| Switch.cs:16:13:16:19 | After case ...: [no-match] | Switch.cs:18:13:18:22 | After case ...: [match] | true |
-| Switch.cs:16:13:16:19 | After case ...: [no-match] | Switch.cs:18:13:18:22 | After case ...: [no-match] | false |
-| Switch.cs:16:13:16:19 | After case ...: [no-match] | Switch.cs:20:13:20:23 | After case ...: [match] | false |
-| Switch.cs:16:13:16:19 | After case ...: [no-match] | Switch.cs:20:13:20:23 | After case ...: [no-match] | false |
-| Switch.cs:16:13:16:19 | After case ...: [no-match] | Switch.cs:21:21:21:29 | After ... == ... [false] | false |
-| Switch.cs:16:13:16:19 | After case ...: [no-match] | Switch.cs:21:21:21:29 | After ... == ... [true] | false |
-| Switch.cs:16:13:16:19 | After case ...: [no-match] | Switch.cs:24:13:24:56 | After case ...: [match] | false |
-| Switch.cs:16:13:16:19 | After case ...: [no-match] | Switch.cs:24:13:24:56 | After case ...: [no-match] | false |
-| Switch.cs:16:13:16:19 | After case ...: [no-match] | Switch.cs:24:32:24:43 | After ... > ... [false] | false |
-| Switch.cs:16:13:16:19 | After case ...: [no-match] | Switch.cs:24:32:24:43 | After ... > ... [true] | false |
-| Switch.cs:16:13:16:19 | After case ...: [no-match] | Switch.cs:24:32:24:55 | After ... && ... [false] | false |
-| Switch.cs:16:13:16:19 | After case ...: [no-match] | Switch.cs:24:48:24:55 | After ... != ... [false] | false |
-| Switch.cs:16:13:16:19 | After case ...: [no-match] | Switch.cs:24:48:24:55 | After ... != ... [true] | false |
-| Switch.cs:16:13:16:19 | After case ...: [no-match] | Switch.cs:27:13:27:39 | After case ...: [match] | false |
-| Switch.cs:16:13:16:19 | After case ...: [no-match] | Switch.cs:27:13:27:39 | After case ...: [no-match] | false |
-| Switch.cs:16:13:16:19 | After case ...: [no-match] | Switch.cs:27:13:27:39 | case ...: | false |
-| Switch.cs:18:13:18:22 | After case ...: [no-match] | Switch.cs:20:13:20:23 | After case ...: [match] | true |
-| Switch.cs:18:13:18:22 | After case ...: [no-match] | Switch.cs:20:13:20:23 | After case ...: [no-match] | false |
-| Switch.cs:18:13:18:22 | After case ...: [no-match] | Switch.cs:21:21:21:29 | After ... == ... [false] | true |
-| Switch.cs:18:13:18:22 | After case ...: [no-match] | Switch.cs:21:21:21:29 | After ... == ... [true] | true |
-| Switch.cs:18:13:18:22 | After case ...: [no-match] | Switch.cs:24:13:24:56 | After case ...: [match] | false |
-| Switch.cs:18:13:18:22 | After case ...: [no-match] | Switch.cs:24:13:24:56 | After case ...: [no-match] | false |
-| Switch.cs:18:13:18:22 | After case ...: [no-match] | Switch.cs:24:32:24:43 | After ... > ... [false] | false |
-| Switch.cs:18:13:18:22 | After case ...: [no-match] | Switch.cs:24:32:24:43 | After ... > ... [true] | false |
-| Switch.cs:18:13:18:22 | After case ...: [no-match] | Switch.cs:24:32:24:55 | After ... && ... [false] | false |
-| Switch.cs:18:13:18:22 | After case ...: [no-match] | Switch.cs:24:48:24:55 | After ... != ... [false] | false |
-| Switch.cs:18:13:18:22 | After case ...: [no-match] | Switch.cs:24:48:24:55 | After ... != ... [true] | false |
-| Switch.cs:18:13:18:22 | After case ...: [no-match] | Switch.cs:27:13:27:39 | After case ...: [match] | false |
-| Switch.cs:18:13:18:22 | After case ...: [no-match] | Switch.cs:27:13:27:39 | After case ...: [no-match] | false |
-| Switch.cs:18:13:18:22 | After case ...: [no-match] | Switch.cs:27:13:27:39 | case ...: | false |
-| Switch.cs:20:13:20:23 | After case ...: [match] | Switch.cs:21:21:21:29 | After ... == ... [false] | false |
-| Switch.cs:20:13:20:23 | After case ...: [match] | Switch.cs:21:21:21:29 | After ... == ... [true] | true |
-| Switch.cs:20:13:20:23 | After case ...: [no-match] | Switch.cs:24:13:24:56 | After case ...: [match] | true |
-| Switch.cs:20:13:20:23 | After case ...: [no-match] | Switch.cs:24:13:24:56 | After case ...: [no-match] | false |
-| Switch.cs:20:13:20:23 | After case ...: [no-match] | Switch.cs:24:32:24:43 | After ... > ... [false] | true |
-| Switch.cs:20:13:20:23 | After case ...: [no-match] | Switch.cs:24:32:24:43 | After ... > ... [true] | true |
-| Switch.cs:20:13:20:23 | After case ...: [no-match] | Switch.cs:24:32:24:55 | After ... && ... [false] | true |
-| Switch.cs:20:13:20:23 | After case ...: [no-match] | Switch.cs:24:48:24:55 | After ... != ... [false] | true |
-| Switch.cs:20:13:20:23 | After case ...: [no-match] | Switch.cs:24:48:24:55 | After ... != ... [true] | true |
-| Switch.cs:24:13:24:56 | After case ...: [match] | Switch.cs:24:32:24:43 | After ... > ... [false] | false |
-| Switch.cs:24:13:24:56 | After case ...: [match] | Switch.cs:24:32:24:43 | After ... > ... [true] | true |
-| Switch.cs:24:13:24:56 | After case ...: [match] | Switch.cs:24:48:24:55 | After ... != ... [false] | true |
-| Switch.cs:24:13:24:56 | After case ...: [match] | Switch.cs:24:48:24:55 | After ... != ... [true] | true |
+| Switch.cs:14:18:14:20 | After "a" [no-match] | Switch.cs:16:18:16:18 | After 0 [match] | true |
+| Switch.cs:14:18:14:20 | After "a" [no-match] | Switch.cs:16:18:16:18 | After 0 [no-match] | false |
+| Switch.cs:14:18:14:20 | After "a" [no-match] | Switch.cs:18:18:18:21 | After null [match] | false |
+| Switch.cs:14:18:14:20 | After "a" [no-match] | Switch.cs:18:18:18:21 | After null [no-match] | false |
+| Switch.cs:14:18:14:20 | After "a" [no-match] | Switch.cs:20:18:20:22 | After Int32 i [match] | false |
+| Switch.cs:14:18:14:20 | After "a" [no-match] | Switch.cs:20:18:20:22 | After Int32 i [no-match] | false |
+| Switch.cs:14:18:14:20 | After "a" [no-match] | Switch.cs:21:21:21:29 | After ... == ... [false] | false |
+| Switch.cs:14:18:14:20 | After "a" [no-match] | Switch.cs:21:21:21:29 | After ... == ... [true] | false |
+| Switch.cs:14:18:14:20 | After "a" [no-match] | Switch.cs:24:18:24:25 | After String s [match] | false |
+| Switch.cs:14:18:14:20 | After "a" [no-match] | Switch.cs:24:18:24:25 | After String s [no-match] | false |
+| Switch.cs:14:18:14:20 | After "a" [no-match] | Switch.cs:24:32:24:43 | After ... > ... [false] | false |
+| Switch.cs:14:18:14:20 | After "a" [no-match] | Switch.cs:24:32:24:43 | After ... > ... [true] | false |
+| Switch.cs:14:18:14:20 | After "a" [no-match] | Switch.cs:24:32:24:55 | After ... && ... [false] | false |
+| Switch.cs:14:18:14:20 | After "a" [no-match] | Switch.cs:24:48:24:55 | After ... != ... [false] | false |
+| Switch.cs:14:18:14:20 | After "a" [no-match] | Switch.cs:24:48:24:55 | After ... != ... [true] | false |
+| Switch.cs:14:18:14:20 | After "a" [no-match] | Switch.cs:27:13:27:39 | case ...: | false |
+| Switch.cs:14:18:14:20 | After "a" [no-match] | Switch.cs:27:18:27:25 | After Double d [match] | false |
+| Switch.cs:14:18:14:20 | After "a" [no-match] | Switch.cs:27:18:27:25 | After Double d [no-match] | false |
+| Switch.cs:14:18:14:20 | After "a" [no-match] | Switch.cs:30:13:30:20 | After default: [match] | false |
+| Switch.cs:16:18:16:18 | After 0 [no-match] | Switch.cs:18:18:18:21 | After null [match] | true |
+| Switch.cs:16:18:16:18 | After 0 [no-match] | Switch.cs:18:18:18:21 | After null [no-match] | false |
+| Switch.cs:16:18:16:18 | After 0 [no-match] | Switch.cs:20:18:20:22 | After Int32 i [match] | false |
+| Switch.cs:16:18:16:18 | After 0 [no-match] | Switch.cs:20:18:20:22 | After Int32 i [no-match] | false |
+| Switch.cs:16:18:16:18 | After 0 [no-match] | Switch.cs:21:21:21:29 | After ... == ... [false] | false |
+| Switch.cs:16:18:16:18 | After 0 [no-match] | Switch.cs:21:21:21:29 | After ... == ... [true] | false |
+| Switch.cs:16:18:16:18 | After 0 [no-match] | Switch.cs:24:18:24:25 | After String s [match] | false |
+| Switch.cs:16:18:16:18 | After 0 [no-match] | Switch.cs:24:18:24:25 | After String s [no-match] | false |
+| Switch.cs:16:18:16:18 | After 0 [no-match] | Switch.cs:24:32:24:43 | After ... > ... [false] | false |
+| Switch.cs:16:18:16:18 | After 0 [no-match] | Switch.cs:24:32:24:43 | After ... > ... [true] | false |
+| Switch.cs:16:18:16:18 | After 0 [no-match] | Switch.cs:24:32:24:55 | After ... && ... [false] | false |
+| Switch.cs:16:18:16:18 | After 0 [no-match] | Switch.cs:24:48:24:55 | After ... != ... [false] | false |
+| Switch.cs:16:18:16:18 | After 0 [no-match] | Switch.cs:24:48:24:55 | After ... != ... [true] | false |
+| Switch.cs:16:18:16:18 | After 0 [no-match] | Switch.cs:27:13:27:39 | case ...: | false |
+| Switch.cs:16:18:16:18 | After 0 [no-match] | Switch.cs:27:18:27:25 | After Double d [match] | false |
+| Switch.cs:16:18:16:18 | After 0 [no-match] | Switch.cs:27:18:27:25 | After Double d [no-match] | false |
+| Switch.cs:18:18:18:21 | After null [no-match] | Switch.cs:20:18:20:22 | After Int32 i [match] | true |
+| Switch.cs:18:18:18:21 | After null [no-match] | Switch.cs:20:18:20:22 | After Int32 i [no-match] | false |
+| Switch.cs:18:18:18:21 | After null [no-match] | Switch.cs:21:21:21:29 | After ... == ... [false] | true |
+| Switch.cs:18:18:18:21 | After null [no-match] | Switch.cs:21:21:21:29 | After ... == ... [true] | true |
+| Switch.cs:18:18:18:21 | After null [no-match] | Switch.cs:24:18:24:25 | After String s [match] | false |
+| Switch.cs:18:18:18:21 | After null [no-match] | Switch.cs:24:18:24:25 | After String s [no-match] | false |
+| Switch.cs:18:18:18:21 | After null [no-match] | Switch.cs:24:32:24:43 | After ... > ... [false] | false |
+| Switch.cs:18:18:18:21 | After null [no-match] | Switch.cs:24:32:24:43 | After ... > ... [true] | false |
+| Switch.cs:18:18:18:21 | After null [no-match] | Switch.cs:24:32:24:55 | After ... && ... [false] | false |
+| Switch.cs:18:18:18:21 | After null [no-match] | Switch.cs:24:48:24:55 | After ... != ... [false] | false |
+| Switch.cs:18:18:18:21 | After null [no-match] | Switch.cs:24:48:24:55 | After ... != ... [true] | false |
+| Switch.cs:18:18:18:21 | After null [no-match] | Switch.cs:27:13:27:39 | case ...: | false |
+| Switch.cs:18:18:18:21 | After null [no-match] | Switch.cs:27:18:27:25 | After Double d [match] | false |
+| Switch.cs:18:18:18:21 | After null [no-match] | Switch.cs:27:18:27:25 | After Double d [no-match] | false |
+| Switch.cs:20:18:20:22 | After Int32 i [match] | Switch.cs:21:21:21:29 | After ... == ... [false] | false |
+| Switch.cs:20:18:20:22 | After Int32 i [match] | Switch.cs:21:21:21:29 | After ... == ... [true] | true |
+| Switch.cs:20:18:20:22 | After Int32 i [no-match] | Switch.cs:24:18:24:25 | After String s [match] | true |
+| Switch.cs:20:18:20:22 | After Int32 i [no-match] | Switch.cs:24:18:24:25 | After String s [no-match] | false |
+| Switch.cs:20:18:20:22 | After Int32 i [no-match] | Switch.cs:24:32:24:43 | After ... > ... [false] | true |
+| Switch.cs:20:18:20:22 | After Int32 i [no-match] | Switch.cs:24:32:24:43 | After ... > ... [true] | true |
+| Switch.cs:20:18:20:22 | After Int32 i [no-match] | Switch.cs:24:32:24:55 | After ... && ... [false] | true |
+| Switch.cs:20:18:20:22 | After Int32 i [no-match] | Switch.cs:24:48:24:55 | After ... != ... [false] | true |
+| Switch.cs:20:18:20:22 | After Int32 i [no-match] | Switch.cs:24:48:24:55 | After ... != ... [true] | true |
+| Switch.cs:24:18:24:25 | After String s [match] | Switch.cs:24:32:24:43 | After ... > ... [false] | false |
+| Switch.cs:24:18:24:25 | After String s [match] | Switch.cs:24:32:24:43 | After ... > ... [true] | true |
+| Switch.cs:24:18:24:25 | After String s [match] | Switch.cs:24:48:24:55 | After ... != ... [false] | true |
+| Switch.cs:24:18:24:25 | After String s [match] | Switch.cs:24:48:24:55 | After ... != ... [true] | true |
| Switch.cs:24:32:24:43 | After ... > ... [true] | Switch.cs:24:48:24:55 | After ... != ... [false] | false |
| Switch.cs:24:32:24:43 | After ... > ... [true] | Switch.cs:24:48:24:55 | After ... != ... [true] | true |
-| Switch.cs:27:13:27:39 | case ...: | Switch.cs:27:13:27:39 | After case ...: [match] | true |
-| Switch.cs:27:13:27:39 | case ...: | Switch.cs:27:13:27:39 | After case ...: [no-match] | false |
-| Switch.cs:44:10:44:11 | Entry | Switch.cs:48:13:48:23 | After case ...: [match] | true |
-| Switch.cs:44:10:44:11 | Entry | Switch.cs:48:13:48:23 | After case ...: [no-match] | false |
-| Switch.cs:44:10:44:11 | Entry | Switch.cs:50:13:50:39 | After case ...: [match] | false |
-| Switch.cs:44:10:44:11 | Entry | Switch.cs:50:13:50:39 | After case ...: [no-match] | false |
+| Switch.cs:27:13:27:39 | case ...: | Switch.cs:27:18:27:25 | After Double d [match] | true |
+| Switch.cs:27:13:27:39 | case ...: | Switch.cs:27:18:27:25 | After Double d [no-match] | false |
+| Switch.cs:44:10:44:11 | Entry | Switch.cs:48:18:48:20 | After access to type Int32 [match] | true |
+| Switch.cs:44:10:44:11 | Entry | Switch.cs:48:18:48:20 | After access to type Int32 [no-match] | false |
+| Switch.cs:44:10:44:11 | Entry | Switch.cs:50:18:50:21 | After access to type Boolean [match] | false |
+| Switch.cs:44:10:44:11 | Entry | Switch.cs:50:18:50:21 | After access to type Boolean [no-match] | false |
| Switch.cs:44:10:44:11 | Entry | Switch.cs:50:30:50:38 | After ... != ... [false] | false |
| Switch.cs:44:10:44:11 | Entry | Switch.cs:50:30:50:38 | After ... != ... [true] | false |
-| Switch.cs:48:13:48:23 | After case ...: [no-match] | Switch.cs:50:13:50:39 | After case ...: [match] | true |
-| Switch.cs:48:13:48:23 | After case ...: [no-match] | Switch.cs:50:13:50:39 | After case ...: [no-match] | false |
-| Switch.cs:48:13:48:23 | After case ...: [no-match] | Switch.cs:50:30:50:38 | After ... != ... [false] | true |
-| Switch.cs:48:13:48:23 | After case ...: [no-match] | Switch.cs:50:30:50:38 | After ... != ... [true] | true |
-| Switch.cs:50:13:50:39 | After case ...: [match] | Switch.cs:50:30:50:38 | After ... != ... [false] | false |
-| Switch.cs:50:13:50:39 | After case ...: [match] | Switch.cs:50:30:50:38 | After ... != ... [true] | true |
-| Switch.cs:55:10:55:11 | Entry | Switch.cs:59:13:59:19 | After case ...: [match] | true |
-| Switch.cs:55:10:55:11 | Entry | Switch.cs:59:13:59:19 | After case ...: [no-match] | false |
-| Switch.cs:55:10:55:11 | Entry | Switch.cs:61:13:61:19 | After case ...: [match] | false |
-| Switch.cs:55:10:55:11 | Entry | Switch.cs:61:13:61:19 | After case ...: [no-match] | false |
-| Switch.cs:59:13:59:19 | After case ...: [no-match] | Switch.cs:61:13:61:19 | After case ...: [match] | true |
-| Switch.cs:59:13:59:19 | After case ...: [no-match] | Switch.cs:61:13:61:19 | After case ...: [no-match] | false |
-| Switch.cs:66:10:66:11 | Entry | Switch.cs:70:13:70:23 | After case ...: [match] | true |
-| Switch.cs:66:10:66:11 | Entry | Switch.cs:70:13:70:23 | After case ...: [no-match] | false |
-| Switch.cs:66:10:66:11 | Entry | Switch.cs:72:13:72:20 | After case ...: [match] | false |
-| Switch.cs:66:10:66:11 | Entry | Switch.cs:72:13:72:20 | After case ...: [no-match] | false |
-| Switch.cs:70:13:70:23 | After case ...: [no-match] | Switch.cs:72:13:72:20 | After case ...: [match] | true |
-| Switch.cs:70:13:70:23 | After case ...: [no-match] | Switch.cs:72:13:72:20 | After case ...: [no-match] | false |
+| Switch.cs:48:18:48:20 | After access to type Int32 [no-match] | Switch.cs:50:18:50:21 | After access to type Boolean [match] | true |
+| Switch.cs:48:18:48:20 | After access to type Int32 [no-match] | Switch.cs:50:18:50:21 | After access to type Boolean [no-match] | false |
+| Switch.cs:48:18:48:20 | After access to type Int32 [no-match] | Switch.cs:50:30:50:38 | After ... != ... [false] | true |
+| Switch.cs:48:18:48:20 | After access to type Int32 [no-match] | Switch.cs:50:30:50:38 | After ... != ... [true] | true |
+| Switch.cs:50:18:50:21 | After access to type Boolean [match] | Switch.cs:50:30:50:38 | After ... != ... [false] | false |
+| Switch.cs:50:18:50:21 | After access to type Boolean [match] | Switch.cs:50:30:50:38 | After ... != ... [true] | true |
+| Switch.cs:55:10:55:11 | Entry | Switch.cs:59:18:59:18 | After 2 [match] | true |
+| Switch.cs:55:10:55:11 | Entry | Switch.cs:59:18:59:18 | After 2 [no-match] | false |
+| Switch.cs:55:10:55:11 | Entry | Switch.cs:61:18:61:18 | After 3 [match] | false |
+| Switch.cs:55:10:55:11 | Entry | Switch.cs:61:18:61:18 | After 3 [no-match] | false |
+| Switch.cs:59:18:59:18 | After 2 [no-match] | Switch.cs:61:18:61:18 | After 3 [match] | true |
+| Switch.cs:59:18:59:18 | After 2 [no-match] | Switch.cs:61:18:61:18 | After 3 [no-match] | false |
+| Switch.cs:66:10:66:11 | Entry | Switch.cs:70:18:70:20 | After access to type Int32 [match] | true |
+| Switch.cs:66:10:66:11 | Entry | Switch.cs:70:18:70:20 | After access to type Int32 [no-match] | false |
+| Switch.cs:66:10:66:11 | Entry | Switch.cs:72:18:72:19 | After "" [match] | false |
+| Switch.cs:66:10:66:11 | Entry | Switch.cs:72:18:72:19 | After "" [no-match] | false |
+| Switch.cs:70:18:70:20 | After access to type Int32 [no-match] | Switch.cs:72:18:72:19 | After "" [match] | true |
+| Switch.cs:70:18:70:20 | After access to type Int32 [no-match] | Switch.cs:72:18:72:19 | After "" [no-match] | false |
| Switch.cs:77:10:77:11 | Entry | Switch.cs:79:9:87:9 | After switch (...) {...} | false |
-| Switch.cs:77:10:77:11 | Entry | Switch.cs:81:13:81:19 | After case ...: [match] | true |
-| Switch.cs:77:10:77:11 | Entry | Switch.cs:81:13:81:19 | After case ...: [no-match] | false |
-| Switch.cs:77:10:77:11 | Entry | Switch.cs:83:13:83:19 | After case ...: [match] | false |
-| Switch.cs:77:10:77:11 | Entry | Switch.cs:83:13:83:19 | After case ...: [no-match] | false |
+| Switch.cs:77:10:77:11 | Entry | Switch.cs:81:18:81:18 | After 1 [match] | true |
+| Switch.cs:77:10:77:11 | Entry | Switch.cs:81:18:81:18 | After 1 [no-match] | false |
+| Switch.cs:77:10:77:11 | Entry | Switch.cs:83:18:83:18 | After 2 [match] | false |
+| Switch.cs:77:10:77:11 | Entry | Switch.cs:83:18:83:18 | After 2 [no-match] | false |
| Switch.cs:77:10:77:11 | Entry | Switch.cs:84:21:84:25 | After ... > ... [false] | false |
| Switch.cs:77:10:77:11 | Entry | Switch.cs:84:21:84:25 | After ... > ... [true] | false |
-| Switch.cs:81:13:81:19 | After case ...: [no-match] | Switch.cs:83:13:83:19 | After case ...: [match] | true |
-| Switch.cs:81:13:81:19 | After case ...: [no-match] | Switch.cs:83:13:83:19 | After case ...: [no-match] | false |
-| Switch.cs:81:13:81:19 | After case ...: [no-match] | Switch.cs:84:21:84:25 | After ... > ... [false] | true |
-| Switch.cs:81:13:81:19 | After case ...: [no-match] | Switch.cs:84:21:84:25 | After ... > ... [true] | true |
-| Switch.cs:83:13:83:19 | After case ...: [match] | Switch.cs:84:21:84:25 | After ... > ... [false] | false |
-| Switch.cs:83:13:83:19 | After case ...: [match] | Switch.cs:84:21:84:25 | After ... > ... [true] | true |
-| Switch.cs:91:10:91:11 | Entry | Switch.cs:95:13:95:23 | After case ...: [match] | true |
-| Switch.cs:91:10:91:11 | Entry | Switch.cs:95:13:95:23 | After case ...: [no-match] | false |
+| Switch.cs:81:18:81:18 | After 1 [no-match] | Switch.cs:83:18:83:18 | After 2 [match] | true |
+| Switch.cs:81:18:81:18 | After 1 [no-match] | Switch.cs:83:18:83:18 | After 2 [no-match] | false |
+| Switch.cs:81:18:81:18 | After 1 [no-match] | Switch.cs:84:21:84:25 | After ... > ... [false] | true |
+| Switch.cs:81:18:81:18 | After 1 [no-match] | Switch.cs:84:21:84:25 | After ... > ... [true] | true |
+| Switch.cs:83:18:83:18 | After 2 [match] | Switch.cs:84:21:84:25 | After ... > ... [false] | false |
+| Switch.cs:83:18:83:18 | After 2 [match] | Switch.cs:84:21:84:25 | After ... > ... [true] | true |
+| Switch.cs:91:10:91:11 | Entry | Switch.cs:95:18:95:20 | After access to type Int32 [match] | true |
+| Switch.cs:91:10:91:11 | Entry | Switch.cs:95:18:95:20 | After access to type Int32 [no-match] | false |
| Switch.cs:101:9:101:10 | Entry | Switch.cs:103:17:103:17 | After access to parameter s [non-null] | false |
| Switch.cs:101:9:101:10 | Entry | Switch.cs:103:17:103:17 | After access to parameter s [null] | true |
-| Switch.cs:103:17:103:25 | After access to property Length | Switch.cs:105:13:105:19 | After case ...: [match] | true |
-| Switch.cs:103:17:103:25 | After access to property Length | Switch.cs:105:13:105:19 | After case ...: [no-match] | false |
-| Switch.cs:103:17:103:25 | After access to property Length | Switch.cs:106:13:106:19 | After case ...: [match] | false |
-| Switch.cs:103:17:103:25 | After access to property Length | Switch.cs:106:13:106:19 | After case ...: [no-match] | false |
-| Switch.cs:105:13:105:19 | After case ...: [no-match] | Switch.cs:106:13:106:19 | After case ...: [match] | true |
-| Switch.cs:105:13:105:19 | After case ...: [no-match] | Switch.cs:106:13:106:19 | After case ...: [no-match] | false |
-| Switch.cs:113:9:113:11 | Entry | Switch.cs:117:13:117:35 | After case ...: [match] | true |
-| Switch.cs:113:9:113:11 | Entry | Switch.cs:117:13:117:35 | After case ...: [no-match] | false |
+| Switch.cs:103:17:103:25 | After access to property Length | Switch.cs:105:18:105:18 | After 0 [match] | true |
+| Switch.cs:103:17:103:25 | After access to property Length | Switch.cs:105:18:105:18 | After 0 [no-match] | false |
+| Switch.cs:103:17:103:25 | After access to property Length | Switch.cs:106:18:106:18 | After 1 [match] | false |
+| Switch.cs:103:17:103:25 | After access to property Length | Switch.cs:106:18:106:18 | After 1 [no-match] | false |
+| Switch.cs:105:18:105:18 | After 0 [no-match] | Switch.cs:106:18:106:18 | After 1 [match] | true |
+| Switch.cs:105:18:105:18 | After 0 [no-match] | Switch.cs:106:18:106:18 | After 1 [no-match] | false |
+| Switch.cs:113:9:113:11 | Entry | Switch.cs:117:18:117:18 | After 3 [match] | true |
+| Switch.cs:113:9:113:11 | Entry | Switch.cs:117:18:117:18 | After 3 [no-match] | false |
| Switch.cs:113:9:113:11 | Entry | Switch.cs:117:25:117:34 | After ... == ... [false] | true |
| Switch.cs:113:9:113:11 | Entry | Switch.cs:117:25:117:34 | After ... == ... [true] | true |
-| Switch.cs:117:13:117:35 | After case ...: [match] | Switch.cs:117:25:117:34 | After ... == ... [false] | false |
-| Switch.cs:117:13:117:35 | After case ...: [match] | Switch.cs:117:25:117:34 | After ... == ... [true] | true |
-| Switch.cs:118:13:118:34 | After case ...: [match] | Switch.cs:118:25:118:33 | After ... == ... [false] | false |
-| Switch.cs:118:13:118:34 | After case ...: [match] | Switch.cs:118:25:118:33 | After ... == ... [true] | true |
-| Switch.cs:118:13:118:34 | case ...: | Switch.cs:118:13:118:34 | After case ...: [match] | true |
-| Switch.cs:118:13:118:34 | case ...: | Switch.cs:118:13:118:34 | After case ...: [no-match] | false |
+| Switch.cs:117:18:117:18 | After 3 [match] | Switch.cs:117:25:117:34 | After ... == ... [false] | false |
+| Switch.cs:117:18:117:18 | After 3 [match] | Switch.cs:117:25:117:34 | After ... == ... [true] | true |
+| Switch.cs:118:13:118:34 | case ...: | Switch.cs:118:18:118:18 | After 2 [match] | true |
+| Switch.cs:118:13:118:34 | case ...: | Switch.cs:118:18:118:18 | After 2 [no-match] | false |
| Switch.cs:118:13:118:34 | case ...: | Switch.cs:118:25:118:33 | After ... == ... [false] | true |
| Switch.cs:118:13:118:34 | case ...: | Switch.cs:118:25:118:33 | After ... == ... [true] | true |
-| Switch.cs:123:10:123:12 | Entry | Switch.cs:125:24:125:34 | After ... => ... [match] | true |
-| Switch.cs:123:10:123:12 | Entry | Switch.cs:125:24:125:34 | After ... => ... [no-match] | false |
-| Switch.cs:129:12:129:14 | Entry | Switch.cs:131:28:131:40 | After ... => ... [match] | true |
-| Switch.cs:129:12:129:14 | Entry | Switch.cs:131:28:131:40 | After ... => ... [no-match] | false |
-| Switch.cs:134:9:134:11 | Entry | Switch.cs:139:13:139:19 | After case ...: [match] | true |
-| Switch.cs:134:9:134:11 | Entry | Switch.cs:139:13:139:19 | After case ...: [no-match] | false |
-| Switch.cs:134:9:134:11 | Entry | Switch.cs:140:13:140:19 | After case ...: [match] | false |
-| Switch.cs:134:9:134:11 | Entry | Switch.cs:140:13:140:19 | After case ...: [no-match] | false |
-| Switch.cs:139:13:139:19 | After case ...: [no-match] | Switch.cs:140:13:140:19 | After case ...: [match] | true |
-| Switch.cs:139:13:139:19 | After case ...: [no-match] | Switch.cs:140:13:140:19 | After case ...: [no-match] | false |
-| Switch.cs:144:9:144:11 | Entry | Switch.cs:148:13:148:19 | After case ...: [match] | true |
-| Switch.cs:144:9:144:11 | Entry | Switch.cs:148:13:148:19 | After case ...: [no-match] | false |
-| Switch.cs:144:9:144:11 | Entry | Switch.cs:150:13:150:19 | After case ...: [match] | false |
-| Switch.cs:144:9:144:11 | Entry | Switch.cs:150:13:150:19 | After case ...: [no-match] | false |
-| Switch.cs:148:13:148:19 | After case ...: [no-match] | Switch.cs:150:13:150:19 | After case ...: [match] | true |
-| Switch.cs:148:13:148:19 | After case ...: [no-match] | Switch.cs:150:13:150:19 | After case ...: [no-match] | false |
-| Switch.cs:154:10:154:12 | Entry | Switch.cs:156:28:156:38 | After ... => ... [match] | true |
-| Switch.cs:154:10:154:12 | Entry | Switch.cs:156:28:156:38 | After ... => ... [no-match] | false |
-| Switch.cs:154:10:154:12 | Entry | Switch.cs:156:41:156:52 | After ... => ... [match] | false |
-| Switch.cs:154:10:154:12 | Entry | Switch.cs:156:41:156:52 | After ... => ... [no-match] | false |
+| Switch.cs:118:18:118:18 | After 2 [match] | Switch.cs:118:25:118:33 | After ... == ... [false] | false |
+| Switch.cs:118:18:118:18 | After 2 [match] | Switch.cs:118:25:118:33 | After ... == ... [true] | true |
+| Switch.cs:123:10:123:12 | Entry | Switch.cs:125:24:125:29 | After Boolean b [match] | true |
+| Switch.cs:123:10:123:12 | Entry | Switch.cs:125:24:125:29 | After Boolean b [no-match] | false |
+| Switch.cs:129:12:129:14 | Entry | Switch.cs:131:28:131:35 | After String s [match] | true |
+| Switch.cs:129:12:129:14 | Entry | Switch.cs:131:28:131:35 | After String s [no-match] | false |
+| Switch.cs:134:9:134:11 | Entry | Switch.cs:139:18:139:18 | After 1 [match] | true |
+| Switch.cs:134:9:134:11 | Entry | Switch.cs:139:18:139:18 | After 1 [no-match] | false |
+| Switch.cs:134:9:134:11 | Entry | Switch.cs:140:18:140:18 | After 2 [match] | false |
+| Switch.cs:134:9:134:11 | Entry | Switch.cs:140:18:140:18 | After 2 [no-match] | false |
+| Switch.cs:139:18:139:18 | After 1 [no-match] | Switch.cs:140:18:140:18 | After 2 [match] | true |
+| Switch.cs:139:18:139:18 | After 1 [no-match] | Switch.cs:140:18:140:18 | After 2 [no-match] | false |
+| Switch.cs:144:9:144:11 | Entry | Switch.cs:148:18:148:18 | After 1 [match] | true |
+| Switch.cs:144:9:144:11 | Entry | Switch.cs:148:18:148:18 | After 1 [no-match] | false |
+| Switch.cs:144:9:144:11 | Entry | Switch.cs:150:18:150:18 | After 2 [match] | false |
+| Switch.cs:144:9:144:11 | Entry | Switch.cs:150:18:150:18 | After 2 [no-match] | false |
+| Switch.cs:148:18:148:18 | After 1 [no-match] | Switch.cs:150:18:150:18 | After 2 [match] | true |
+| Switch.cs:148:18:148:18 | After 1 [no-match] | Switch.cs:150:18:150:18 | After 2 [no-match] | false |
+| Switch.cs:154:10:154:12 | Entry | Switch.cs:156:28:156:31 | After true [match] | true |
+| Switch.cs:154:10:154:12 | Entry | Switch.cs:156:28:156:31 | After true [no-match] | false |
+| Switch.cs:154:10:154:12 | Entry | Switch.cs:156:41:156:45 | After false [match] | false |
+| Switch.cs:154:10:154:12 | Entry | Switch.cs:156:41:156:45 | After false [no-match] | false |
| Switch.cs:156:17:156:54 | After ... switch { ... } | Switch.cs:157:13:157:13 | After access to parameter b [false] | false |
| Switch.cs:156:17:156:54 | After ... switch { ... } | Switch.cs:157:13:157:13 | After access to parameter b [true] | true |
-| Switch.cs:156:28:156:38 | After ... => ... [no-match] | Switch.cs:156:41:156:52 | After ... => ... [match] | true |
-| Switch.cs:156:28:156:38 | After ... => ... [no-match] | Switch.cs:156:41:156:52 | After ... => ... [no-match] | false |
-| Switch.cs:163:10:163:12 | Entry | Switch.cs:167:13:167:19 | After case ...: [match] | true |
-| Switch.cs:163:10:163:12 | Entry | Switch.cs:167:13:167:19 | After case ...: [no-match] | false |
-| Switch.cs:163:10:163:12 | Entry | Switch.cs:168:13:168:19 | After case ...: [match] | false |
-| Switch.cs:163:10:163:12 | Entry | Switch.cs:168:13:168:19 | After case ...: [no-match] | false |
-| Switch.cs:163:10:163:12 | Entry | Switch.cs:171:13:171:19 | After case ...: [match] | false |
-| Switch.cs:163:10:163:12 | Entry | Switch.cs:171:13:171:19 | After case ...: [no-match] | false |
-| Switch.cs:167:13:167:19 | After case ...: [no-match] | Switch.cs:168:13:168:19 | After case ...: [match] | true |
-| Switch.cs:167:13:167:19 | After case ...: [no-match] | Switch.cs:168:13:168:19 | After case ...: [no-match] | false |
-| Switch.cs:167:13:167:19 | After case ...: [no-match] | Switch.cs:171:13:171:19 | After case ...: [match] | false |
-| Switch.cs:167:13:167:19 | After case ...: [no-match] | Switch.cs:171:13:171:19 | After case ...: [no-match] | false |
-| Switch.cs:168:13:168:19 | After case ...: [no-match] | Switch.cs:171:13:171:19 | After case ...: [match] | true |
-| Switch.cs:168:13:168:19 | After case ...: [no-match] | Switch.cs:171:13:171:19 | After case ...: [no-match] | false |
+| Switch.cs:156:28:156:31 | After true [no-match] | Switch.cs:156:41:156:45 | After false [match] | true |
+| Switch.cs:156:28:156:31 | After true [no-match] | Switch.cs:156:41:156:45 | After false [no-match] | false |
+| Switch.cs:163:10:163:12 | Entry | Switch.cs:167:18:167:18 | After 1 [match] | true |
+| Switch.cs:163:10:163:12 | Entry | Switch.cs:167:18:167:18 | After 1 [no-match] | false |
+| Switch.cs:163:10:163:12 | Entry | Switch.cs:168:18:168:18 | After 2 [match] | false |
+| Switch.cs:163:10:163:12 | Entry | Switch.cs:168:18:168:18 | After 2 [no-match] | false |
+| Switch.cs:163:10:163:12 | Entry | Switch.cs:171:18:171:18 | After 3 [match] | false |
+| Switch.cs:163:10:163:12 | Entry | Switch.cs:171:18:171:18 | After 3 [no-match] | false |
+| Switch.cs:167:18:167:18 | After 1 [no-match] | Switch.cs:168:18:168:18 | After 2 [match] | true |
+| Switch.cs:167:18:167:18 | After 1 [no-match] | Switch.cs:168:18:168:18 | After 2 [no-match] | false |
+| Switch.cs:167:18:167:18 | After 1 [no-match] | Switch.cs:171:18:171:18 | After 3 [match] | false |
+| Switch.cs:167:18:167:18 | After 1 [no-match] | Switch.cs:171:18:171:18 | After 3 [no-match] | false |
+| Switch.cs:168:18:168:18 | After 2 [no-match] | Switch.cs:171:18:171:18 | After 3 [match] | true |
+| Switch.cs:168:18:168:18 | After 2 [no-match] | Switch.cs:171:18:171:18 | After 3 [no-match] | false |
| TypeAccesses.cs:3:10:3:10 | Entry | TypeAccesses.cs:7:13:7:22 | After ... is ... [false] | false |
| TypeAccesses.cs:3:10:3:10 | Entry | TypeAccesses.cs:7:13:7:22 | [MatchTrue] ... is ... | true |
| VarDecls.cs:19:7:19:8 | Entry | VarDecls.cs:25:20:25:20 | After access to parameter b [false] | false |
@@ -873,41 +875,44 @@ conditionBlock
| cflow.cs:28:22:28:31 | After ... == ... [false] | cflow.cs:30:22:30:31 | After ... == ... [true] | true |
| cflow.cs:37:17:37:22 | Entry | cflow.cs:37:17:37:22 | Exit | false |
| cflow.cs:37:17:37:22 | Entry | cflow.cs:39:9:50:9 | After switch (...) {...} | false |
-| cflow.cs:37:17:37:22 | Entry | cflow.cs:41:13:41:19 | After case ...: [no-match] | false |
-| cflow.cs:37:17:37:22 | Entry | cflow.cs:44:13:44:19 | After case ...: [no-match] | false |
-| cflow.cs:37:17:37:22 | Entry | cflow.cs:47:13:47:19 | After case ...: [match] | false |
-| cflow.cs:37:17:37:22 | Entry | cflow.cs:47:13:47:19 | After case ...: [no-match] | false |
+| cflow.cs:37:17:37:22 | Entry | cflow.cs:41:18:41:18 | After 1 [match] | true |
+| cflow.cs:37:17:37:22 | Entry | cflow.cs:41:18:41:18 | After 1 [no-match] | false |
+| cflow.cs:37:17:37:22 | Entry | cflow.cs:44:18:44:18 | After 2 [match] | false |
+| cflow.cs:37:17:37:22 | Entry | cflow.cs:44:18:44:18 | After 2 [no-match] | false |
+| cflow.cs:37:17:37:22 | Entry | cflow.cs:47:18:47:18 | After 3 [match] | false |
+| cflow.cs:37:17:37:22 | Entry | cflow.cs:47:18:47:18 | After 3 [no-match] | false |
| cflow.cs:37:17:37:22 | Entry | cflow.cs:51:9:59:9 | After switch (...) {...} | false |
-| cflow.cs:37:17:37:22 | Entry | cflow.cs:53:13:53:20 | After case ...: [match] | false |
-| cflow.cs:37:17:37:22 | Entry | cflow.cs:53:13:53:20 | After case ...: [no-match] | false |
+| cflow.cs:37:17:37:22 | Entry | cflow.cs:53:18:53:19 | After 42 [match] | false |
+| cflow.cs:37:17:37:22 | Entry | cflow.cs:53:18:53:19 | After 42 [no-match] | false |
| cflow.cs:37:17:37:22 | Entry | cflow.cs:60:9:66:9 | After switch (...) {...} | false |
-| cflow.cs:37:17:37:22 | Entry | cflow.cs:62:13:62:19 | After case ...: [match] | false |
-| cflow.cs:37:17:37:22 | Entry | cflow.cs:62:13:62:19 | After case ...: [no-match] | false |
+| cflow.cs:37:17:37:22 | Entry | cflow.cs:62:18:62:18 | After 0 [match] | false |
+| cflow.cs:37:17:37:22 | Entry | cflow.cs:62:18:62:18 | After 0 [no-match] | false |
| cflow.cs:37:17:37:22 | Entry | cflow.cs:63:23:63:33 | After ... == ... [false] | false |
| cflow.cs:37:17:37:22 | Entry | cflow.cs:63:23:63:33 | After ... == ... [true] | false |
-| cflow.cs:39:9:50:9 | After switch (...) {...} | cflow.cs:53:13:53:20 | After case ...: [match] | true |
-| cflow.cs:39:9:50:9 | After switch (...) {...} | cflow.cs:53:13:53:20 | After case ...: [no-match] | false |
-| cflow.cs:41:13:41:19 | After case ...: [no-match] | cflow.cs:37:17:37:22 | Exit | false |
-| cflow.cs:41:13:41:19 | After case ...: [no-match] | cflow.cs:39:9:50:9 | After switch (...) {...} | false |
-| cflow.cs:41:13:41:19 | After case ...: [no-match] | cflow.cs:44:13:44:19 | After case ...: [no-match] | false |
-| cflow.cs:41:13:41:19 | After case ...: [no-match] | cflow.cs:47:13:47:19 | After case ...: [match] | false |
-| cflow.cs:41:13:41:19 | After case ...: [no-match] | cflow.cs:47:13:47:19 | After case ...: [no-match] | false |
-| cflow.cs:41:13:41:19 | After case ...: [no-match] | cflow.cs:51:9:59:9 | After switch (...) {...} | false |
-| cflow.cs:41:13:41:19 | After case ...: [no-match] | cflow.cs:53:13:53:20 | After case ...: [match] | false |
-| cflow.cs:41:13:41:19 | After case ...: [no-match] | cflow.cs:53:13:53:20 | After case ...: [no-match] | false |
-| cflow.cs:41:13:41:19 | After case ...: [no-match] | cflow.cs:60:9:66:9 | After switch (...) {...} | false |
-| cflow.cs:41:13:41:19 | After case ...: [no-match] | cflow.cs:62:13:62:19 | After case ...: [match] | false |
-| cflow.cs:41:13:41:19 | After case ...: [no-match] | cflow.cs:62:13:62:19 | After case ...: [no-match] | false |
-| cflow.cs:41:13:41:19 | After case ...: [no-match] | cflow.cs:63:23:63:33 | After ... == ... [false] | false |
-| cflow.cs:41:13:41:19 | After case ...: [no-match] | cflow.cs:63:23:63:33 | After ... == ... [true] | false |
-| cflow.cs:44:13:44:19 | After case ...: [no-match] | cflow.cs:47:13:47:19 | After case ...: [match] | true |
-| cflow.cs:44:13:44:19 | After case ...: [no-match] | cflow.cs:47:13:47:19 | After case ...: [no-match] | false |
-| cflow.cs:51:9:59:9 | After switch (...) {...} | cflow.cs:62:13:62:19 | After case ...: [match] | true |
-| cflow.cs:51:9:59:9 | After switch (...) {...} | cflow.cs:62:13:62:19 | After case ...: [no-match] | false |
+| cflow.cs:39:9:50:9 | After switch (...) {...} | cflow.cs:53:18:53:19 | After 42 [match] | true |
+| cflow.cs:39:9:50:9 | After switch (...) {...} | cflow.cs:53:18:53:19 | After 42 [no-match] | false |
+| cflow.cs:41:18:41:18 | After 1 [no-match] | cflow.cs:37:17:37:22 | Exit | false |
+| cflow.cs:41:18:41:18 | After 1 [no-match] | cflow.cs:39:9:50:9 | After switch (...) {...} | false |
+| cflow.cs:41:18:41:18 | After 1 [no-match] | cflow.cs:44:18:44:18 | After 2 [match] | true |
+| cflow.cs:41:18:41:18 | After 1 [no-match] | cflow.cs:44:18:44:18 | After 2 [no-match] | false |
+| cflow.cs:41:18:41:18 | After 1 [no-match] | cflow.cs:47:18:47:18 | After 3 [match] | false |
+| cflow.cs:41:18:41:18 | After 1 [no-match] | cflow.cs:47:18:47:18 | After 3 [no-match] | false |
+| cflow.cs:41:18:41:18 | After 1 [no-match] | cflow.cs:51:9:59:9 | After switch (...) {...} | false |
+| cflow.cs:41:18:41:18 | After 1 [no-match] | cflow.cs:53:18:53:19 | After 42 [match] | false |
+| cflow.cs:41:18:41:18 | After 1 [no-match] | cflow.cs:53:18:53:19 | After 42 [no-match] | false |
+| cflow.cs:41:18:41:18 | After 1 [no-match] | cflow.cs:60:9:66:9 | After switch (...) {...} | false |
+| cflow.cs:41:18:41:18 | After 1 [no-match] | cflow.cs:62:18:62:18 | After 0 [match] | false |
+| cflow.cs:41:18:41:18 | After 1 [no-match] | cflow.cs:62:18:62:18 | After 0 [no-match] | false |
+| cflow.cs:41:18:41:18 | After 1 [no-match] | cflow.cs:63:23:63:33 | After ... == ... [false] | false |
+| cflow.cs:41:18:41:18 | After 1 [no-match] | cflow.cs:63:23:63:33 | After ... == ... [true] | false |
+| cflow.cs:44:18:44:18 | After 2 [no-match] | cflow.cs:47:18:47:18 | After 3 [match] | true |
+| cflow.cs:44:18:44:18 | After 2 [no-match] | cflow.cs:47:18:47:18 | After 3 [no-match] | false |
+| cflow.cs:51:9:59:9 | After switch (...) {...} | cflow.cs:62:18:62:18 | After 0 [match] | true |
+| cflow.cs:51:9:59:9 | After switch (...) {...} | cflow.cs:62:18:62:18 | After 0 [no-match] | false |
| cflow.cs:51:9:59:9 | After switch (...) {...} | cflow.cs:63:23:63:33 | After ... == ... [false] | true |
| cflow.cs:51:9:59:9 | After switch (...) {...} | cflow.cs:63:23:63:33 | After ... == ... [true] | true |
-| cflow.cs:62:13:62:19 | After case ...: [match] | cflow.cs:63:23:63:33 | After ... == ... [false] | false |
-| cflow.cs:62:13:62:19 | After case ...: [match] | cflow.cs:63:23:63:33 | After ... == ... [true] | true |
+| cflow.cs:62:18:62:18 | After 0 [match] | cflow.cs:63:23:63:33 | After ... == ... [false] | false |
+| cflow.cs:62:18:62:18 | After 0 [match] | cflow.cs:63:23:63:33 | After ... == ... [true] | true |
| cflow.cs:70:18:70:18 | Entry | cflow.cs:72:13:72:21 | After ... == ... [false] | false |
| cflow.cs:70:18:70:18 | Entry | cflow.cs:72:13:72:21 | After ... == ... [true] | true |
| cflow.cs:70:18:70:18 | Entry | cflow.cs:74:9:81:9 | After if (...) ... | false |
@@ -1054,25 +1059,25 @@ conditionBlock
| cflow.cs:242:12:242:41 | After if (...) ... | cflow.cs:244:13:244:28 | After ... > ... [false] | false |
| cflow.cs:242:12:242:41 | After if (...) ... | cflow.cs:244:13:244:28 | After ... > ... [true] | true |
| cflow.cs:242:12:242:41 | After if (...) ... | cflow.cs:246:9:258:9 | After switch (...) {...} | false |
-| cflow.cs:242:12:242:41 | After if (...) ... | cflow.cs:248:13:248:19 | After case ...: [match] | false |
-| cflow.cs:242:12:242:41 | After if (...) ... | cflow.cs:248:13:248:19 | After case ...: [no-match] | false |
-| cflow.cs:242:12:242:41 | After if (...) ... | cflow.cs:250:13:250:19 | After case ...: [match] | false |
-| cflow.cs:242:12:242:41 | After if (...) ... | cflow.cs:250:13:250:19 | After case ...: [no-match] | false |
-| cflow.cs:242:12:242:41 | After if (...) ... | cflow.cs:253:13:253:19 | After case ...: [match] | false |
-| cflow.cs:242:12:242:41 | After if (...) ... | cflow.cs:253:13:253:19 | After case ...: [no-match] | false |
+| cflow.cs:242:12:242:41 | After if (...) ... | cflow.cs:248:18:248:18 | After 0 [match] | false |
+| cflow.cs:242:12:242:41 | After if (...) ... | cflow.cs:248:18:248:18 | After 0 [no-match] | false |
+| cflow.cs:242:12:242:41 | After if (...) ... | cflow.cs:250:18:250:18 | After 1 [match] | false |
+| cflow.cs:242:12:242:41 | After if (...) ... | cflow.cs:250:18:250:18 | After 1 [no-match] | false |
+| cflow.cs:242:12:242:41 | After if (...) ... | cflow.cs:253:18:253:18 | After 2 [match] | false |
+| cflow.cs:242:12:242:41 | After if (...) ... | cflow.cs:253:18:253:18 | After 2 [no-match] | false |
| cflow.cs:242:12:242:41 | After if (...) ... | cflow.cs:255:13:255:20 | After default: [match] | false |
-| cflow.cs:244:13:244:28 | After ... > ... [false] | cflow.cs:248:13:248:19 | After case ...: [match] | true |
-| cflow.cs:244:13:244:28 | After ... > ... [false] | cflow.cs:248:13:248:19 | After case ...: [no-match] | false |
-| cflow.cs:244:13:244:28 | After ... > ... [false] | cflow.cs:250:13:250:19 | After case ...: [match] | false |
-| cflow.cs:244:13:244:28 | After ... > ... [false] | cflow.cs:250:13:250:19 | After case ...: [no-match] | false |
-| cflow.cs:244:13:244:28 | After ... > ... [false] | cflow.cs:253:13:253:19 | After case ...: [match] | false |
-| cflow.cs:244:13:244:28 | After ... > ... [false] | cflow.cs:253:13:253:19 | After case ...: [no-match] | false |
-| cflow.cs:248:13:248:19 | After case ...: [no-match] | cflow.cs:250:13:250:19 | After case ...: [match] | true |
-| cflow.cs:248:13:248:19 | After case ...: [no-match] | cflow.cs:250:13:250:19 | After case ...: [no-match] | false |
-| cflow.cs:248:13:248:19 | After case ...: [no-match] | cflow.cs:253:13:253:19 | After case ...: [match] | false |
-| cflow.cs:248:13:248:19 | After case ...: [no-match] | cflow.cs:253:13:253:19 | After case ...: [no-match] | false |
-| cflow.cs:250:13:250:19 | After case ...: [no-match] | cflow.cs:253:13:253:19 | After case ...: [match] | true |
-| cflow.cs:250:13:250:19 | After case ...: [no-match] | cflow.cs:253:13:253:19 | After case ...: [no-match] | false |
+| cflow.cs:244:13:244:28 | After ... > ... [false] | cflow.cs:248:18:248:18 | After 0 [match] | true |
+| cflow.cs:244:13:244:28 | After ... > ... [false] | cflow.cs:248:18:248:18 | After 0 [no-match] | false |
+| cflow.cs:244:13:244:28 | After ... > ... [false] | cflow.cs:250:18:250:18 | After 1 [match] | false |
+| cflow.cs:244:13:244:28 | After ... > ... [false] | cflow.cs:250:18:250:18 | After 1 [no-match] | false |
+| cflow.cs:244:13:244:28 | After ... > ... [false] | cflow.cs:253:18:253:18 | After 2 [match] | false |
+| cflow.cs:244:13:244:28 | After ... > ... [false] | cflow.cs:253:18:253:18 | After 2 [no-match] | false |
+| cflow.cs:248:18:248:18 | After 0 [no-match] | cflow.cs:250:18:250:18 | After 1 [match] | true |
+| cflow.cs:248:18:248:18 | After 0 [no-match] | cflow.cs:250:18:250:18 | After 1 [no-match] | false |
+| cflow.cs:248:18:248:18 | After 0 [no-match] | cflow.cs:253:18:253:18 | After 2 [match] | false |
+| cflow.cs:248:18:248:18 | After 0 [no-match] | cflow.cs:253:18:253:18 | After 2 [no-match] | false |
+| cflow.cs:250:18:250:18 | After 1 [no-match] | cflow.cs:253:18:253:18 | After 2 [match] | true |
+| cflow.cs:250:18:250:18 | After 1 [no-match] | cflow.cs:253:18:253:18 | After 2 [no-match] | false |
| cflow.cs:264:25:264:30 | Before ... < ... | cflow.cs:261:49:261:53 | Exceptional Exit | false |
| cflow.cs:264:25:264:30 | Before ... < ... | cflow.cs:261:49:261:53 | Exit | false |
| cflow.cs:264:25:264:30 | Before ... < ... | cflow.cs:261:49:261:53 | Normal Exit | false |
diff --git a/csharp/ql/test/library-tests/controlflow/graph/Dominance.expected b/csharp/ql/test/library-tests/controlflow/graph/Dominance.expected
index 51d4721caea..5001f49300a 100644
--- a/csharp/ql/test/library-tests/controlflow/graph/Dominance.expected
+++ b/csharp/ql/test/library-tests/controlflow/graph/Dominance.expected
@@ -5212,16 +5212,20 @@ dominance
| Patterns.cs:20:9:38:9 | After switch (...) {...} | Patterns.cs:40:9:42:9 | switch (...) {...} |
| Patterns.cs:20:9:38:9 | switch (...) {...} | Patterns.cs:20:17:20:17 | access to local variable o |
| Patterns.cs:20:17:20:17 | access to local variable o | Patterns.cs:22:13:22:23 | case ...: |
-| Patterns.cs:22:13:22:23 | After case ...: [match] | Patterns.cs:22:18:22:22 | "xyz" |
+| Patterns.cs:22:13:22:23 | After case ...: [match] | Patterns.cs:23:17:23:22 | Before break; |
| Patterns.cs:22:13:22:23 | After case ...: [no-match] | Patterns.cs:24:13:24:36 | case ...: |
-| Patterns.cs:22:13:22:23 | case ...: | Patterns.cs:22:13:22:23 | After case ...: [match] |
-| Patterns.cs:22:13:22:23 | case ...: | Patterns.cs:22:13:22:23 | After case ...: [no-match] |
-| Patterns.cs:22:18:22:22 | "xyz" | Patterns.cs:23:17:23:22 | Before break; |
+| Patterns.cs:22:13:22:23 | case ...: | Patterns.cs:22:18:22:22 | "xyz" |
+| Patterns.cs:22:18:22:22 | "xyz" | Patterns.cs:22:18:22:22 | After "xyz" [match] |
+| Patterns.cs:22:18:22:22 | "xyz" | Patterns.cs:22:18:22:22 | After "xyz" [no-match] |
+| Patterns.cs:22:18:22:22 | After "xyz" [match] | Patterns.cs:22:13:22:23 | After case ...: [match] |
+| Patterns.cs:22:18:22:22 | After "xyz" [no-match] | Patterns.cs:22:13:22:23 | After case ...: [no-match] |
| Patterns.cs:23:17:23:22 | Before break; | Patterns.cs:23:17:23:22 | break; |
-| Patterns.cs:24:13:24:36 | After case ...: [match] | Patterns.cs:24:18:24:23 | Int32 i2 |
-| Patterns.cs:24:13:24:36 | case ...: | Patterns.cs:24:13:24:36 | After case ...: [match] |
-| Patterns.cs:24:13:24:36 | case ...: | Patterns.cs:24:13:24:36 | After case ...: [no-match] |
-| Patterns.cs:24:18:24:23 | Int32 i2 | Patterns.cs:24:30:24:35 | Before ... > ... |
+| Patterns.cs:24:13:24:36 | After case ...: [match] | Patterns.cs:24:30:24:35 | Before ... > ... |
+| Patterns.cs:24:13:24:36 | case ...: | Patterns.cs:24:18:24:23 | Int32 i2 |
+| Patterns.cs:24:18:24:23 | After Int32 i2 [match] | Patterns.cs:24:13:24:36 | After case ...: [match] |
+| Patterns.cs:24:18:24:23 | After Int32 i2 [no-match] | Patterns.cs:24:13:24:36 | After case ...: [no-match] |
+| Patterns.cs:24:18:24:23 | Int32 i2 | Patterns.cs:24:18:24:23 | After Int32 i2 [match] |
+| Patterns.cs:24:18:24:23 | Int32 i2 | Patterns.cs:24:18:24:23 | After Int32 i2 [no-match] |
| Patterns.cs:24:30:24:31 | access to local variable i2 | Patterns.cs:24:35:24:35 | 0 |
| Patterns.cs:24:30:24:35 | ... > ... | Patterns.cs:24:30:24:35 | After ... > ... [false] |
| Patterns.cs:24:30:24:35 | ... > ... | Patterns.cs:24:30:24:35 | After ... > ... [true] |
@@ -5242,11 +5246,13 @@ dominance
| Patterns.cs:25:46:25:49 | {...} | Patterns.cs:25:46:25:49 | After {...} |
| Patterns.cs:25:47:25:48 | access to local variable i2 | Patterns.cs:25:46:25:49 | {...} |
| Patterns.cs:26:17:26:22 | Before break; | Patterns.cs:26:17:26:22 | break; |
-| Patterns.cs:27:13:27:24 | After case ...: [match] | Patterns.cs:27:18:27:23 | Int32 i3 |
+| Patterns.cs:27:13:27:24 | After case ...: [match] | Patterns.cs:28:17:28:47 | ...; |
| Patterns.cs:27:13:27:24 | After case ...: [no-match] | Patterns.cs:30:13:30:27 | case ...: |
-| Patterns.cs:27:13:27:24 | case ...: | Patterns.cs:27:13:27:24 | After case ...: [match] |
-| Patterns.cs:27:13:27:24 | case ...: | Patterns.cs:27:13:27:24 | After case ...: [no-match] |
-| Patterns.cs:27:18:27:23 | Int32 i3 | Patterns.cs:28:17:28:47 | ...; |
+| Patterns.cs:27:13:27:24 | case ...: | Patterns.cs:27:18:27:23 | Int32 i3 |
+| Patterns.cs:27:18:27:23 | After Int32 i3 [match] | Patterns.cs:27:13:27:24 | After case ...: [match] |
+| Patterns.cs:27:18:27:23 | After Int32 i3 [no-match] | Patterns.cs:27:13:27:24 | After case ...: [no-match] |
+| Patterns.cs:27:18:27:23 | Int32 i3 | Patterns.cs:27:18:27:23 | After Int32 i3 [match] |
+| Patterns.cs:27:18:27:23 | Int32 i3 | Patterns.cs:27:18:27:23 | After Int32 i3 [no-match] |
| Patterns.cs:28:17:28:46 | After call to method WriteLine | Patterns.cs:28:17:28:47 | After ...; |
| Patterns.cs:28:17:28:46 | Before call to method WriteLine | Patterns.cs:28:35:28:45 | Before $"..." |
| Patterns.cs:28:17:28:46 | call to method WriteLine | Patterns.cs:28:17:28:46 | After call to method WriteLine |
@@ -5261,11 +5267,13 @@ dominance
| Patterns.cs:28:41:28:44 | {...} | Patterns.cs:28:41:28:44 | After {...} |
| Patterns.cs:28:42:28:43 | access to local variable i3 | Patterns.cs:28:41:28:44 | {...} |
| Patterns.cs:29:17:29:22 | Before break; | Patterns.cs:29:17:29:22 | break; |
-| Patterns.cs:30:13:30:27 | After case ...: [match] | Patterns.cs:30:18:30:26 | String s2 |
+| Patterns.cs:30:13:30:27 | After case ...: [match] | Patterns.cs:31:17:31:50 | ...; |
| Patterns.cs:30:13:30:27 | After case ...: [no-match] | Patterns.cs:33:13:33:24 | case ...: |
-| Patterns.cs:30:13:30:27 | case ...: | Patterns.cs:30:13:30:27 | After case ...: [match] |
-| Patterns.cs:30:13:30:27 | case ...: | Patterns.cs:30:13:30:27 | After case ...: [no-match] |
-| Patterns.cs:30:18:30:26 | String s2 | Patterns.cs:31:17:31:50 | ...; |
+| Patterns.cs:30:13:30:27 | case ...: | Patterns.cs:30:18:30:26 | String s2 |
+| Patterns.cs:30:18:30:26 | After String s2 [match] | Patterns.cs:30:13:30:27 | After case ...: [match] |
+| Patterns.cs:30:18:30:26 | After String s2 [no-match] | Patterns.cs:30:13:30:27 | After case ...: [no-match] |
+| Patterns.cs:30:18:30:26 | String s2 | Patterns.cs:30:18:30:26 | After String s2 [match] |
+| Patterns.cs:30:18:30:26 | String s2 | Patterns.cs:30:18:30:26 | After String s2 [no-match] |
| Patterns.cs:31:17:31:49 | After call to method WriteLine | Patterns.cs:31:17:31:50 | After ...; |
| Patterns.cs:31:17:31:49 | Before call to method WriteLine | Patterns.cs:31:35:31:48 | Before $"..." |
| Patterns.cs:31:17:31:49 | call to method WriteLine | Patterns.cs:31:17:31:49 | After call to method WriteLine |
@@ -5280,11 +5288,13 @@ dominance
| Patterns.cs:31:44:31:47 | {...} | Patterns.cs:31:44:31:47 | After {...} |
| Patterns.cs:31:45:31:46 | access to local variable s2 | Patterns.cs:31:44:31:47 | {...} |
| Patterns.cs:32:17:32:22 | Before break; | Patterns.cs:32:17:32:22 | break; |
-| Patterns.cs:33:13:33:24 | After case ...: [match] | Patterns.cs:33:18:33:23 | Object v2 |
+| Patterns.cs:33:13:33:24 | After case ...: [match] | Patterns.cs:34:17:34:22 | Before break; |
| Patterns.cs:33:13:33:24 | After case ...: [no-match] | Patterns.cs:35:13:35:20 | default: |
-| Patterns.cs:33:13:33:24 | case ...: | Patterns.cs:33:13:33:24 | After case ...: [match] |
-| Patterns.cs:33:13:33:24 | case ...: | Patterns.cs:33:13:33:24 | After case ...: [no-match] |
-| Patterns.cs:33:18:33:23 | Object v2 | Patterns.cs:34:17:34:22 | Before break; |
+| Patterns.cs:33:13:33:24 | case ...: | Patterns.cs:33:18:33:23 | Object v2 |
+| Patterns.cs:33:18:33:23 | After Object v2 [match] | Patterns.cs:33:13:33:24 | After case ...: [match] |
+| Patterns.cs:33:18:33:23 | After Object v2 [no-match] | Patterns.cs:33:13:33:24 | After case ...: [no-match] |
+| Patterns.cs:33:18:33:23 | Object v2 | Patterns.cs:33:18:33:23 | After Object v2 [match] |
+| Patterns.cs:33:18:33:23 | Object v2 | Patterns.cs:33:18:33:23 | After Object v2 [no-match] |
| Patterns.cs:34:17:34:22 | Before break; | Patterns.cs:34:17:34:22 | break; |
| Patterns.cs:35:13:35:20 | After default: [match] | Patterns.cs:36:17:36:52 | ...; |
| Patterns.cs:35:13:35:20 | default: | Patterns.cs:35:13:35:20 | After default: [match] |
@@ -5365,17 +5375,19 @@ dominance
| Patterns.cs:58:16:58:16 | access to parameter i | Patterns.cs:60:13:60:28 | ... => ... |
| Patterns.cs:58:16:62:9 | ... switch { ... } | Patterns.cs:58:16:58:16 | access to parameter i |
| Patterns.cs:58:16:62:9 | After ... switch { ... } | Patterns.cs:58:9:62:10 | return ...; |
-| Patterns.cs:60:13:60:17 | After not ... | Patterns.cs:60:22:60:28 | "not 1" |
+| Patterns.cs:60:13:60:17 | After not ... [match] | Patterns.cs:60:13:60:28 | After ... => ... [match] |
+| Patterns.cs:60:13:60:17 | After not ... [no-match] | Patterns.cs:60:13:60:28 | After ... => ... [no-match] |
| Patterns.cs:60:13:60:17 | Before not ... | Patterns.cs:60:17:60:17 | 1 |
-| Patterns.cs:60:13:60:17 | not ... | Patterns.cs:60:13:60:17 | After not ... |
-| Patterns.cs:60:13:60:28 | ... => ... | Patterns.cs:60:13:60:28 | After ... => ... [match] |
-| Patterns.cs:60:13:60:28 | ... => ... | Patterns.cs:60:13:60:28 | After ... => ... [no-match] |
-| Patterns.cs:60:13:60:28 | After ... => ... [match] | Patterns.cs:60:13:60:17 | Before not ... |
+| Patterns.cs:60:13:60:17 | not ... | Patterns.cs:60:13:60:17 | After not ... [match] |
+| Patterns.cs:60:13:60:17 | not ... | Patterns.cs:60:13:60:17 | After not ... [no-match] |
+| Patterns.cs:60:13:60:28 | ... => ... | Patterns.cs:60:13:60:17 | Before not ... |
+| Patterns.cs:60:13:60:28 | After ... => ... [match] | Patterns.cs:60:22:60:28 | "not 1" |
| Patterns.cs:60:13:60:28 | After ... => ... [no-match] | Patterns.cs:61:13:61:24 | ... => ... |
| Patterns.cs:60:17:60:17 | 1 | Patterns.cs:60:13:60:17 | not ... |
-| Patterns.cs:61:13:61:13 | _ | Patterns.cs:61:18:61:24 | "other" |
-| Patterns.cs:61:13:61:24 | ... => ... | Patterns.cs:61:13:61:24 | After ... => ... [match] |
-| Patterns.cs:61:13:61:24 | After ... => ... [match] | Patterns.cs:61:13:61:13 | _ |
+| Patterns.cs:61:13:61:13 | After _ [match] | Patterns.cs:61:13:61:24 | After ... => ... [match] |
+| Patterns.cs:61:13:61:13 | _ | Patterns.cs:61:13:61:13 | After _ [match] |
+| Patterns.cs:61:13:61:24 | ... => ... | Patterns.cs:61:13:61:13 | _ |
+| Patterns.cs:61:13:61:24 | After ... => ... [match] | Patterns.cs:61:18:61:24 | "other" |
| Patterns.cs:65:26:65:27 | Entry | Patterns.cs:66:5:72:5 | {...} |
| Patterns.cs:65:26:65:27 | Normal Exit | Patterns.cs:65:26:65:27 | Exit |
| Patterns.cs:66:5:72:5 | {...} | Patterns.cs:67:9:71:10 | Before return ...; |
@@ -5384,18 +5396,21 @@ dominance
| Patterns.cs:67:16:67:16 | 2 | Patterns.cs:69:13:69:33 | ... => ... |
| Patterns.cs:67:16:71:9 | ... switch { ... } | Patterns.cs:67:16:67:16 | 2 |
| Patterns.cs:67:16:71:9 | After ... switch { ... } | Patterns.cs:67:9:71:10 | return ...; |
-| Patterns.cs:69:13:69:17 | After not ... | Patterns.cs:69:22:69:33 | "impossible" |
+| Patterns.cs:69:13:69:17 | After not ... [match] | Patterns.cs:69:13:69:33 | After ... => ... [match] |
+| Patterns.cs:69:13:69:17 | After not ... [no-match] | Patterns.cs:69:13:69:33 | After ... => ... [no-match] |
| Patterns.cs:69:13:69:17 | Before not ... | Patterns.cs:69:17:69:17 | 2 |
-| Patterns.cs:69:13:69:17 | not ... | Patterns.cs:69:13:69:17 | After not ... |
-| Patterns.cs:69:13:69:33 | ... => ... | Patterns.cs:69:13:69:33 | After ... => ... [match] |
-| Patterns.cs:69:13:69:33 | ... => ... | Patterns.cs:69:13:69:33 | After ... => ... [no-match] |
-| Patterns.cs:69:13:69:33 | After ... => ... [match] | Patterns.cs:69:13:69:17 | Before not ... |
+| Patterns.cs:69:13:69:17 | not ... | Patterns.cs:69:13:69:17 | After not ... [match] |
+| Patterns.cs:69:13:69:17 | not ... | Patterns.cs:69:13:69:17 | After not ... [no-match] |
+| Patterns.cs:69:13:69:33 | ... => ... | Patterns.cs:69:13:69:17 | Before not ... |
+| Patterns.cs:69:13:69:33 | After ... => ... [match] | Patterns.cs:69:22:69:33 | "impossible" |
| Patterns.cs:69:13:69:33 | After ... => ... [no-match] | Patterns.cs:70:13:70:27 | ... => ... |
| Patterns.cs:69:17:69:17 | 2 | Patterns.cs:69:13:69:17 | not ... |
-| Patterns.cs:70:13:70:13 | 2 | Patterns.cs:70:18:70:27 | "possible" |
-| Patterns.cs:70:13:70:27 | ... => ... | Patterns.cs:70:13:70:27 | After ... => ... [match] |
-| Patterns.cs:70:13:70:27 | ... => ... | Patterns.cs:70:13:70:27 | After ... => ... [no-match] |
-| Patterns.cs:70:13:70:27 | After ... => ... [match] | Patterns.cs:70:13:70:13 | 2 |
+| Patterns.cs:70:13:70:13 | 2 | Patterns.cs:70:13:70:13 | After 2 [match] |
+| Patterns.cs:70:13:70:13 | 2 | Patterns.cs:70:13:70:13 | After 2 [no-match] |
+| Patterns.cs:70:13:70:13 | After 2 [match] | Patterns.cs:70:13:70:27 | After ... => ... [match] |
+| Patterns.cs:70:13:70:13 | After 2 [no-match] | Patterns.cs:70:13:70:27 | After ... => ... [no-match] |
+| Patterns.cs:70:13:70:27 | ... => ... | Patterns.cs:70:13:70:13 | 2 |
+| Patterns.cs:70:13:70:27 | After ... => ... [match] | Patterns.cs:70:18:70:27 | "possible" |
| Patterns.cs:74:26:74:27 | Entry | Patterns.cs:74:33:74:33 | i |
| Patterns.cs:74:26:74:27 | Normal Exit | Patterns.cs:74:26:74:27 | Exit |
| Patterns.cs:74:33:74:33 | i | Patterns.cs:75:5:83:5 | {...} |
@@ -5405,30 +5420,35 @@ dominance
| Patterns.cs:76:16:76:16 | access to parameter i | Patterns.cs:78:13:78:24 | ... => ... |
| Patterns.cs:76:16:82:9 | ... switch { ... } | Patterns.cs:76:16:76:16 | access to parameter i |
| Patterns.cs:76:16:82:9 | After ... switch { ... } | Patterns.cs:76:9:82:10 | return ...; |
-| Patterns.cs:78:13:78:15 | > ... | Patterns.cs:78:13:78:15 | After > ... |
-| Patterns.cs:78:13:78:15 | After > ... | Patterns.cs:78:20:78:24 | "> 1" |
+| Patterns.cs:78:13:78:15 | > ... | Patterns.cs:78:13:78:15 | After > ... [match] |
+| Patterns.cs:78:13:78:15 | > ... | Patterns.cs:78:13:78:15 | After > ... [no-match] |
+| Patterns.cs:78:13:78:15 | After > ... [match] | Patterns.cs:78:13:78:24 | After ... => ... [match] |
+| Patterns.cs:78:13:78:15 | After > ... [no-match] | Patterns.cs:78:13:78:24 | After ... => ... [no-match] |
| Patterns.cs:78:13:78:15 | Before > ... | Patterns.cs:78:15:78:15 | 1 |
-| Patterns.cs:78:13:78:24 | ... => ... | Patterns.cs:78:13:78:24 | After ... => ... [match] |
-| Patterns.cs:78:13:78:24 | ... => ... | Patterns.cs:78:13:78:24 | After ... => ... [no-match] |
-| Patterns.cs:78:13:78:24 | After ... => ... [match] | Patterns.cs:78:13:78:15 | Before > ... |
+| Patterns.cs:78:13:78:24 | ... => ... | Patterns.cs:78:13:78:15 | Before > ... |
+| Patterns.cs:78:13:78:24 | After ... => ... [match] | Patterns.cs:78:20:78:24 | "> 1" |
| Patterns.cs:78:13:78:24 | After ... => ... [no-match] | Patterns.cs:79:13:79:24 | ... => ... |
| Patterns.cs:78:15:78:15 | 1 | Patterns.cs:78:13:78:15 | > ... |
-| Patterns.cs:79:13:79:15 | < ... | Patterns.cs:79:13:79:15 | After < ... |
-| Patterns.cs:79:13:79:15 | After < ... | Patterns.cs:79:20:79:24 | "< 0" |
+| Patterns.cs:79:13:79:15 | < ... | Patterns.cs:79:13:79:15 | After < ... [match] |
+| Patterns.cs:79:13:79:15 | < ... | Patterns.cs:79:13:79:15 | After < ... [no-match] |
+| Patterns.cs:79:13:79:15 | After < ... [match] | Patterns.cs:79:13:79:24 | After ... => ... [match] |
+| Patterns.cs:79:13:79:15 | After < ... [no-match] | Patterns.cs:79:13:79:24 | After ... => ... [no-match] |
| Patterns.cs:79:13:79:15 | Before < ... | Patterns.cs:79:15:79:15 | 0 |
-| Patterns.cs:79:13:79:24 | ... => ... | Patterns.cs:79:13:79:24 | After ... => ... [match] |
-| Patterns.cs:79:13:79:24 | ... => ... | Patterns.cs:79:13:79:24 | After ... => ... [no-match] |
-| Patterns.cs:79:13:79:24 | After ... => ... [match] | Patterns.cs:79:13:79:15 | Before < ... |
+| Patterns.cs:79:13:79:24 | ... => ... | Patterns.cs:79:13:79:15 | Before < ... |
+| Patterns.cs:79:13:79:24 | After ... => ... [match] | Patterns.cs:79:20:79:24 | "< 0" |
| Patterns.cs:79:13:79:24 | After ... => ... [no-match] | Patterns.cs:80:13:80:20 | ... => ... |
| Patterns.cs:79:15:79:15 | 0 | Patterns.cs:79:13:79:15 | < ... |
-| Patterns.cs:80:13:80:13 | 1 | Patterns.cs:80:18:80:20 | "1" |
-| Patterns.cs:80:13:80:20 | ... => ... | Patterns.cs:80:13:80:20 | After ... => ... [match] |
-| Patterns.cs:80:13:80:20 | ... => ... | Patterns.cs:80:13:80:20 | After ... => ... [no-match] |
-| Patterns.cs:80:13:80:20 | After ... => ... [match] | Patterns.cs:80:13:80:13 | 1 |
+| Patterns.cs:80:13:80:13 | 1 | Patterns.cs:80:13:80:13 | After 1 [match] |
+| Patterns.cs:80:13:80:13 | 1 | Patterns.cs:80:13:80:13 | After 1 [no-match] |
+| Patterns.cs:80:13:80:13 | After 1 [match] | Patterns.cs:80:13:80:20 | After ... => ... [match] |
+| Patterns.cs:80:13:80:13 | After 1 [no-match] | Patterns.cs:80:13:80:20 | After ... => ... [no-match] |
+| Patterns.cs:80:13:80:20 | ... => ... | Patterns.cs:80:13:80:13 | 1 |
+| Patterns.cs:80:13:80:20 | After ... => ... [match] | Patterns.cs:80:18:80:20 | "1" |
| Patterns.cs:80:13:80:20 | After ... => ... [no-match] | Patterns.cs:81:13:81:20 | ... => ... |
-| Patterns.cs:81:13:81:13 | _ | Patterns.cs:81:18:81:20 | "0" |
-| Patterns.cs:81:13:81:20 | ... => ... | Patterns.cs:81:13:81:20 | After ... => ... [match] |
-| Patterns.cs:81:13:81:20 | After ... => ... [match] | Patterns.cs:81:13:81:13 | _ |
+| Patterns.cs:81:13:81:13 | After _ [match] | Patterns.cs:81:13:81:20 | After ... => ... [match] |
+| Patterns.cs:81:13:81:13 | _ | Patterns.cs:81:13:81:13 | After _ [match] |
+| Patterns.cs:81:13:81:20 | ... => ... | Patterns.cs:81:13:81:13 | _ |
+| Patterns.cs:81:13:81:20 | After ... => ... [match] | Patterns.cs:81:18:81:20 | "0" |
| Patterns.cs:85:26:85:27 | Entry | Patterns.cs:85:33:85:33 | i |
| Patterns.cs:85:26:85:27 | Normal Exit | Patterns.cs:85:26:85:27 | Exit |
| Patterns.cs:85:33:85:33 | i | Patterns.cs:85:39:85:69 | ... ? ... : ... |
@@ -5754,32 +5774,39 @@ dominance
| Switch.cs:11:5:33:5 | {...} | Switch.cs:12:9:32:9 | switch (...) {...} |
| Switch.cs:12:9:32:9 | switch (...) {...} | Switch.cs:12:17:12:17 | access to parameter o |
| Switch.cs:12:17:12:17 | access to parameter o | Switch.cs:14:13:14:21 | case ...: |
-| Switch.cs:14:13:14:21 | After case ...: [match] | Switch.cs:14:18:14:20 | "a" |
+| Switch.cs:14:13:14:21 | After case ...: [match] | Switch.cs:15:17:15:23 | Before return ...; |
| Switch.cs:14:13:14:21 | After case ...: [no-match] | Switch.cs:16:13:16:19 | case ...: |
-| Switch.cs:14:13:14:21 | case ...: | Switch.cs:14:13:14:21 | After case ...: [match] |
-| Switch.cs:14:13:14:21 | case ...: | Switch.cs:14:13:14:21 | After case ...: [no-match] |
-| Switch.cs:14:18:14:20 | "a" | Switch.cs:15:17:15:23 | Before return ...; |
+| Switch.cs:14:13:14:21 | case ...: | Switch.cs:14:18:14:20 | "a" |
+| Switch.cs:14:18:14:20 | "a" | Switch.cs:14:18:14:20 | After "a" [match] |
+| Switch.cs:14:18:14:20 | "a" | Switch.cs:14:18:14:20 | After "a" [no-match] |
+| Switch.cs:14:18:14:20 | After "a" [match] | Switch.cs:14:13:14:21 | After case ...: [match] |
+| Switch.cs:14:18:14:20 | After "a" [no-match] | Switch.cs:14:13:14:21 | After case ...: [no-match] |
| Switch.cs:15:17:15:23 | Before return ...; | Switch.cs:15:17:15:23 | return ...; |
-| Switch.cs:16:13:16:19 | After case ...: [match] | Switch.cs:16:18:16:18 | 0 |
+| Switch.cs:16:13:16:19 | After case ...: [match] | Switch.cs:17:17:17:38 | Before throw ...; |
| Switch.cs:16:13:16:19 | After case ...: [no-match] | Switch.cs:18:13:18:22 | case ...: |
-| Switch.cs:16:13:16:19 | case ...: | Switch.cs:16:13:16:19 | After case ...: [match] |
-| Switch.cs:16:13:16:19 | case ...: | Switch.cs:16:13:16:19 | After case ...: [no-match] |
-| Switch.cs:16:18:16:18 | 0 | Switch.cs:17:17:17:38 | Before throw ...; |
+| Switch.cs:16:13:16:19 | case ...: | Switch.cs:16:18:16:18 | 0 |
+| Switch.cs:16:18:16:18 | 0 | Switch.cs:16:18:16:18 | After 0 [match] |
+| Switch.cs:16:18:16:18 | 0 | Switch.cs:16:18:16:18 | After 0 [no-match] |
+| Switch.cs:16:18:16:18 | After 0 [no-match] | Switch.cs:16:13:16:19 | After case ...: [no-match] |
| Switch.cs:17:17:17:38 | Before throw ...; | Switch.cs:17:23:17:37 | Before object creation of type Exception |
| Switch.cs:17:23:17:37 | After object creation of type Exception | Switch.cs:17:17:17:38 | throw ...; |
| Switch.cs:17:23:17:37 | Before object creation of type Exception | Switch.cs:17:23:17:37 | object creation of type Exception |
| Switch.cs:17:23:17:37 | object creation of type Exception | Switch.cs:17:23:17:37 | After object creation of type Exception |
-| Switch.cs:18:13:18:22 | After case ...: [match] | Switch.cs:18:18:18:21 | null |
+| Switch.cs:18:13:18:22 | After case ...: [match] | Switch.cs:19:17:19:29 | Before goto default; |
| Switch.cs:18:13:18:22 | After case ...: [no-match] | Switch.cs:20:13:20:23 | case ...: |
-| Switch.cs:18:13:18:22 | case ...: | Switch.cs:18:13:18:22 | After case ...: [match] |
-| Switch.cs:18:13:18:22 | case ...: | Switch.cs:18:13:18:22 | After case ...: [no-match] |
-| Switch.cs:18:18:18:21 | null | Switch.cs:19:17:19:29 | Before goto default; |
+| Switch.cs:18:13:18:22 | case ...: | Switch.cs:18:18:18:21 | null |
+| Switch.cs:18:18:18:21 | After null [match] | Switch.cs:18:13:18:22 | After case ...: [match] |
+| Switch.cs:18:18:18:21 | After null [no-match] | Switch.cs:18:13:18:22 | After case ...: [no-match] |
+| Switch.cs:18:18:18:21 | null | Switch.cs:18:18:18:21 | After null [match] |
+| Switch.cs:18:18:18:21 | null | Switch.cs:18:18:18:21 | After null [no-match] |
| Switch.cs:19:17:19:29 | Before goto default; | Switch.cs:19:17:19:29 | goto default; |
-| Switch.cs:20:13:20:23 | After case ...: [match] | Switch.cs:20:18:20:22 | Int32 i |
+| Switch.cs:20:13:20:23 | After case ...: [match] | Switch.cs:21:17:22:27 | if (...) ... |
| Switch.cs:20:13:20:23 | After case ...: [no-match] | Switch.cs:24:13:24:56 | case ...: |
-| Switch.cs:20:13:20:23 | case ...: | Switch.cs:20:13:20:23 | After case ...: [match] |
-| Switch.cs:20:13:20:23 | case ...: | Switch.cs:20:13:20:23 | After case ...: [no-match] |
-| Switch.cs:20:18:20:22 | Int32 i | Switch.cs:21:17:22:27 | if (...) ... |
+| Switch.cs:20:13:20:23 | case ...: | Switch.cs:20:18:20:22 | Int32 i |
+| Switch.cs:20:18:20:22 | After Int32 i [match] | Switch.cs:20:13:20:23 | After case ...: [match] |
+| Switch.cs:20:18:20:22 | After Int32 i [no-match] | Switch.cs:20:13:20:23 | After case ...: [no-match] |
+| Switch.cs:20:18:20:22 | Int32 i | Switch.cs:20:18:20:22 | After Int32 i [match] |
+| Switch.cs:20:18:20:22 | Int32 i | Switch.cs:20:18:20:22 | After Int32 i [no-match] |
| Switch.cs:21:17:22:27 | After if (...) ... | Switch.cs:23:17:23:28 | Before goto case ...; |
| Switch.cs:21:17:22:27 | if (...) ... | Switch.cs:21:21:21:29 | Before ... == ... |
| Switch.cs:21:21:21:21 | access to parameter o | Switch.cs:21:26:21:29 | null |
@@ -5792,10 +5819,12 @@ dominance
| Switch.cs:22:21:22:27 | Before return ...; | Switch.cs:22:21:22:27 | return ...; |
| Switch.cs:23:17:23:28 | Before goto case ...; | Switch.cs:23:27:23:27 | 0 |
| Switch.cs:23:27:23:27 | 0 | Switch.cs:23:17:23:28 | goto case ...; |
-| Switch.cs:24:13:24:56 | After case ...: [match] | Switch.cs:24:18:24:25 | String s |
-| Switch.cs:24:13:24:56 | case ...: | Switch.cs:24:13:24:56 | After case ...: [match] |
-| Switch.cs:24:13:24:56 | case ...: | Switch.cs:24:13:24:56 | After case ...: [no-match] |
-| Switch.cs:24:18:24:25 | String s | Switch.cs:24:32:24:55 | ... && ... |
+| Switch.cs:24:13:24:56 | After case ...: [match] | Switch.cs:24:32:24:55 | ... && ... |
+| Switch.cs:24:13:24:56 | case ...: | Switch.cs:24:18:24:25 | String s |
+| Switch.cs:24:18:24:25 | After String s [match] | Switch.cs:24:13:24:56 | After case ...: [match] |
+| Switch.cs:24:18:24:25 | After String s [no-match] | Switch.cs:24:13:24:56 | After case ...: [no-match] |
+| Switch.cs:24:18:24:25 | String s | Switch.cs:24:18:24:25 | After String s [match] |
+| Switch.cs:24:18:24:25 | String s | Switch.cs:24:18:24:25 | After String s [no-match] |
| Switch.cs:24:32:24:32 | access to local variable s | Switch.cs:24:32:24:39 | access to property Length |
| Switch.cs:24:32:24:39 | After access to property Length | Switch.cs:24:43:24:43 | 0 |
| Switch.cs:24:32:24:39 | Before access to property Length | Switch.cs:24:32:24:32 | access to local variable s |
@@ -5820,11 +5849,13 @@ dominance
| Switch.cs:25:17:25:37 | After ...; | Switch.cs:26:17:26:23 | Before return ...; |
| Switch.cs:25:35:25:35 | access to local variable s | Switch.cs:25:17:25:36 | call to method WriteLine |
| Switch.cs:26:17:26:23 | Before return ...; | Switch.cs:26:17:26:23 | return ...; |
-| Switch.cs:27:13:27:39 | After case ...: [match] | Switch.cs:27:18:27:25 | Double d |
+| Switch.cs:27:13:27:39 | After case ...: [match] | Switch.cs:27:32:27:38 | Before call to method Throw |
| Switch.cs:27:13:27:39 | After case ...: [no-match] | Switch.cs:30:13:30:20 | default: |
-| Switch.cs:27:13:27:39 | case ...: | Switch.cs:27:13:27:39 | After case ...: [match] |
-| Switch.cs:27:13:27:39 | case ...: | Switch.cs:27:13:27:39 | After case ...: [no-match] |
-| Switch.cs:27:18:27:25 | Double d | Switch.cs:27:32:27:38 | Before call to method Throw |
+| Switch.cs:27:13:27:39 | case ...: | Switch.cs:27:18:27:25 | Double d |
+| Switch.cs:27:18:27:25 | After Double d [match] | Switch.cs:27:13:27:39 | After case ...: [match] |
+| Switch.cs:27:18:27:25 | After Double d [no-match] | Switch.cs:27:13:27:39 | After case ...: [no-match] |
+| Switch.cs:27:18:27:25 | Double d | Switch.cs:27:18:27:25 | After Double d [match] |
+| Switch.cs:27:18:27:25 | Double d | Switch.cs:27:18:27:25 | After Double d [no-match] |
| Switch.cs:27:32:27:38 | Before call to method Throw | Switch.cs:27:32:27:38 | call to method Throw |
| Switch.cs:28:13:28:17 | Label: | Switch.cs:29:17:29:23 | Before return ...; |
| Switch.cs:29:17:29:23 | Before return ...; | Switch.cs:29:17:29:23 | return ...; |
@@ -5845,16 +5876,20 @@ dominance
| Switch.cs:46:9:52:9 | After switch (...) {...} | Switch.cs:45:5:53:5 | After {...} |
| Switch.cs:46:9:52:9 | switch (...) {...} | Switch.cs:46:17:46:17 | access to parameter o |
| Switch.cs:46:17:46:17 | access to parameter o | Switch.cs:48:13:48:23 | case ...: |
-| Switch.cs:48:13:48:23 | After case ...: [match] | Switch.cs:48:18:48:20 | access to type Int32 |
+| Switch.cs:48:13:48:23 | After case ...: [match] | Switch.cs:49:17:49:22 | Before break; |
| Switch.cs:48:13:48:23 | After case ...: [no-match] | Switch.cs:50:13:50:39 | case ...: |
-| Switch.cs:48:13:48:23 | case ...: | Switch.cs:48:13:48:23 | After case ...: [match] |
-| Switch.cs:48:13:48:23 | case ...: | Switch.cs:48:13:48:23 | After case ...: [no-match] |
-| Switch.cs:48:18:48:20 | access to type Int32 | Switch.cs:49:17:49:22 | Before break; |
+| Switch.cs:48:13:48:23 | case ...: | Switch.cs:48:18:48:20 | access to type Int32 |
+| Switch.cs:48:18:48:20 | After access to type Int32 [match] | Switch.cs:48:13:48:23 | After case ...: [match] |
+| Switch.cs:48:18:48:20 | After access to type Int32 [no-match] | Switch.cs:48:13:48:23 | After case ...: [no-match] |
+| Switch.cs:48:18:48:20 | access to type Int32 | Switch.cs:48:18:48:20 | After access to type Int32 [match] |
+| Switch.cs:48:18:48:20 | access to type Int32 | Switch.cs:48:18:48:20 | After access to type Int32 [no-match] |
| Switch.cs:49:17:49:22 | Before break; | Switch.cs:49:17:49:22 | break; |
-| Switch.cs:50:13:50:39 | After case ...: [match] | Switch.cs:50:18:50:21 | access to type Boolean |
-| Switch.cs:50:13:50:39 | case ...: | Switch.cs:50:13:50:39 | After case ...: [match] |
-| Switch.cs:50:13:50:39 | case ...: | Switch.cs:50:13:50:39 | After case ...: [no-match] |
-| Switch.cs:50:18:50:21 | access to type Boolean | Switch.cs:50:30:50:38 | Before ... != ... |
+| Switch.cs:50:13:50:39 | After case ...: [match] | Switch.cs:50:30:50:38 | Before ... != ... |
+| Switch.cs:50:13:50:39 | case ...: | Switch.cs:50:18:50:21 | access to type Boolean |
+| Switch.cs:50:18:50:21 | After access to type Boolean [match] | Switch.cs:50:13:50:39 | After case ...: [match] |
+| Switch.cs:50:18:50:21 | After access to type Boolean [no-match] | Switch.cs:50:13:50:39 | After case ...: [no-match] |
+| Switch.cs:50:18:50:21 | access to type Boolean | Switch.cs:50:18:50:21 | After access to type Boolean [match] |
+| Switch.cs:50:18:50:21 | access to type Boolean | Switch.cs:50:18:50:21 | After access to type Boolean [no-match] |
| Switch.cs:50:30:50:30 | access to parameter o | Switch.cs:50:35:50:38 | null |
| Switch.cs:50:30:50:38 | ... != ... | Switch.cs:50:30:50:38 | After ... != ... [false] |
| Switch.cs:50:30:50:38 | ... != ... | Switch.cs:50:30:50:38 | After ... != ... [true] |
@@ -5873,16 +5908,20 @@ dominance
| Switch.cs:57:17:57:21 | After ... + ... | Switch.cs:59:13:59:19 | case ...: |
| Switch.cs:57:17:57:21 | Before ... + ... | Switch.cs:57:17:57:17 | 1 |
| Switch.cs:57:21:57:21 | 2 | Switch.cs:57:17:57:21 | ... + ... |
-| Switch.cs:59:13:59:19 | After case ...: [match] | Switch.cs:59:18:59:18 | 2 |
+| Switch.cs:59:13:59:19 | After case ...: [match] | Switch.cs:60:17:60:22 | Before break; |
| Switch.cs:59:13:59:19 | After case ...: [no-match] | Switch.cs:61:13:61:19 | case ...: |
-| Switch.cs:59:13:59:19 | case ...: | Switch.cs:59:13:59:19 | After case ...: [match] |
-| Switch.cs:59:13:59:19 | case ...: | Switch.cs:59:13:59:19 | After case ...: [no-match] |
-| Switch.cs:59:18:59:18 | 2 | Switch.cs:60:17:60:22 | Before break; |
+| Switch.cs:59:13:59:19 | case ...: | Switch.cs:59:18:59:18 | 2 |
+| Switch.cs:59:18:59:18 | 2 | Switch.cs:59:18:59:18 | After 2 [match] |
+| Switch.cs:59:18:59:18 | 2 | Switch.cs:59:18:59:18 | After 2 [no-match] |
+| Switch.cs:59:18:59:18 | After 2 [match] | Switch.cs:59:13:59:19 | After case ...: [match] |
+| Switch.cs:59:18:59:18 | After 2 [no-match] | Switch.cs:59:13:59:19 | After case ...: [no-match] |
| Switch.cs:60:17:60:22 | Before break; | Switch.cs:60:17:60:22 | break; |
-| Switch.cs:61:13:61:19 | After case ...: [match] | Switch.cs:61:18:61:18 | 3 |
-| Switch.cs:61:13:61:19 | case ...: | Switch.cs:61:13:61:19 | After case ...: [match] |
-| Switch.cs:61:13:61:19 | case ...: | Switch.cs:61:13:61:19 | After case ...: [no-match] |
-| Switch.cs:61:18:61:18 | 3 | Switch.cs:62:17:62:22 | Before break; |
+| Switch.cs:61:13:61:19 | After case ...: [match] | Switch.cs:62:17:62:22 | Before break; |
+| Switch.cs:61:13:61:19 | case ...: | Switch.cs:61:18:61:18 | 3 |
+| Switch.cs:61:18:61:18 | 3 | Switch.cs:61:18:61:18 | After 3 [match] |
+| Switch.cs:61:18:61:18 | 3 | Switch.cs:61:18:61:18 | After 3 [no-match] |
+| Switch.cs:61:18:61:18 | After 3 [match] | Switch.cs:61:13:61:19 | After case ...: [match] |
+| Switch.cs:61:18:61:18 | After 3 [no-match] | Switch.cs:61:13:61:19 | After case ...: [no-match] |
| Switch.cs:62:17:62:22 | Before break; | Switch.cs:62:17:62:22 | break; |
| Switch.cs:66:10:66:11 | Entry | Switch.cs:66:20:66:20 | s |
| Switch.cs:66:10:66:11 | Normal Exit | Switch.cs:66:10:66:11 | Exit |
@@ -5895,16 +5934,20 @@ dominance
| Switch.cs:68:17:68:25 | After (...) ... | Switch.cs:70:13:70:23 | case ...: |
| Switch.cs:68:17:68:25 | Before (...) ... | Switch.cs:68:25:68:25 | access to parameter s |
| Switch.cs:68:25:68:25 | access to parameter s | Switch.cs:68:17:68:25 | (...) ... |
-| Switch.cs:70:13:70:23 | After case ...: [match] | Switch.cs:70:18:70:20 | access to type Int32 |
+| Switch.cs:70:13:70:23 | After case ...: [match] | Switch.cs:71:17:71:22 | Before break; |
| Switch.cs:70:13:70:23 | After case ...: [no-match] | Switch.cs:72:13:72:20 | case ...: |
-| Switch.cs:70:13:70:23 | case ...: | Switch.cs:70:13:70:23 | After case ...: [match] |
-| Switch.cs:70:13:70:23 | case ...: | Switch.cs:70:13:70:23 | After case ...: [no-match] |
-| Switch.cs:70:18:70:20 | access to type Int32 | Switch.cs:71:17:71:22 | Before break; |
+| Switch.cs:70:13:70:23 | case ...: | Switch.cs:70:18:70:20 | access to type Int32 |
+| Switch.cs:70:18:70:20 | After access to type Int32 [match] | Switch.cs:70:13:70:23 | After case ...: [match] |
+| Switch.cs:70:18:70:20 | After access to type Int32 [no-match] | Switch.cs:70:13:70:23 | After case ...: [no-match] |
+| Switch.cs:70:18:70:20 | access to type Int32 | Switch.cs:70:18:70:20 | After access to type Int32 [match] |
+| Switch.cs:70:18:70:20 | access to type Int32 | Switch.cs:70:18:70:20 | After access to type Int32 [no-match] |
| Switch.cs:71:17:71:22 | Before break; | Switch.cs:71:17:71:22 | break; |
-| Switch.cs:72:13:72:20 | After case ...: [match] | Switch.cs:72:18:72:19 | "" |
-| Switch.cs:72:13:72:20 | case ...: | Switch.cs:72:13:72:20 | After case ...: [match] |
-| Switch.cs:72:13:72:20 | case ...: | Switch.cs:72:13:72:20 | After case ...: [no-match] |
-| Switch.cs:72:18:72:19 | "" | Switch.cs:73:17:73:22 | Before break; |
+| Switch.cs:72:13:72:20 | After case ...: [match] | Switch.cs:73:17:73:22 | Before break; |
+| Switch.cs:72:13:72:20 | case ...: | Switch.cs:72:18:72:19 | "" |
+| Switch.cs:72:18:72:19 | "" | Switch.cs:72:18:72:19 | After "" [match] |
+| Switch.cs:72:18:72:19 | "" | Switch.cs:72:18:72:19 | After "" [no-match] |
+| Switch.cs:72:18:72:19 | After "" [match] | Switch.cs:72:13:72:20 | After case ...: [match] |
+| Switch.cs:72:18:72:19 | After "" [no-match] | Switch.cs:72:13:72:20 | After case ...: [no-match] |
| Switch.cs:73:17:73:22 | Before break; | Switch.cs:73:17:73:22 | break; |
| Switch.cs:77:10:77:11 | Entry | Switch.cs:77:17:77:17 | i |
| Switch.cs:77:10:77:11 | Normal Exit | Switch.cs:77:10:77:11 | Exit |
@@ -5914,17 +5957,21 @@ dominance
| Switch.cs:79:9:87:9 | After switch (...) {...} | Switch.cs:88:9:88:21 | Before return ...; |
| Switch.cs:79:9:87:9 | switch (...) {...} | Switch.cs:79:17:79:17 | access to parameter i |
| Switch.cs:79:17:79:17 | access to parameter i | Switch.cs:81:13:81:19 | case ...: |
-| Switch.cs:81:13:81:19 | After case ...: [match] | Switch.cs:81:18:81:18 | 1 |
+| Switch.cs:81:13:81:19 | After case ...: [match] | Switch.cs:82:17:82:28 | Before return ...; |
| Switch.cs:81:13:81:19 | After case ...: [no-match] | Switch.cs:83:13:83:19 | case ...: |
-| Switch.cs:81:13:81:19 | case ...: | Switch.cs:81:13:81:19 | After case ...: [match] |
-| Switch.cs:81:13:81:19 | case ...: | Switch.cs:81:13:81:19 | After case ...: [no-match] |
-| Switch.cs:81:18:81:18 | 1 | Switch.cs:82:17:82:28 | Before return ...; |
+| Switch.cs:81:13:81:19 | case ...: | Switch.cs:81:18:81:18 | 1 |
+| Switch.cs:81:18:81:18 | 1 | Switch.cs:81:18:81:18 | After 1 [match] |
+| Switch.cs:81:18:81:18 | 1 | Switch.cs:81:18:81:18 | After 1 [no-match] |
+| Switch.cs:81:18:81:18 | After 1 [match] | Switch.cs:81:13:81:19 | After case ...: [match] |
+| Switch.cs:81:18:81:18 | After 1 [no-match] | Switch.cs:81:13:81:19 | After case ...: [no-match] |
| Switch.cs:82:17:82:28 | Before return ...; | Switch.cs:82:24:82:27 | true |
| Switch.cs:82:24:82:27 | true | Switch.cs:82:17:82:28 | return ...; |
-| Switch.cs:83:13:83:19 | After case ...: [match] | Switch.cs:83:18:83:18 | 2 |
-| Switch.cs:83:13:83:19 | case ...: | Switch.cs:83:13:83:19 | After case ...: [match] |
-| Switch.cs:83:13:83:19 | case ...: | Switch.cs:83:13:83:19 | After case ...: [no-match] |
-| Switch.cs:83:18:83:18 | 2 | Switch.cs:84:17:85:26 | if (...) ... |
+| Switch.cs:83:13:83:19 | After case ...: [match] | Switch.cs:84:17:85:26 | if (...) ... |
+| Switch.cs:83:13:83:19 | case ...: | Switch.cs:83:18:83:18 | 2 |
+| Switch.cs:83:18:83:18 | 2 | Switch.cs:83:18:83:18 | After 2 [match] |
+| Switch.cs:83:18:83:18 | 2 | Switch.cs:83:18:83:18 | After 2 [no-match] |
+| Switch.cs:83:18:83:18 | After 2 [match] | Switch.cs:83:13:83:19 | After case ...: [match] |
+| Switch.cs:83:18:83:18 | After 2 [no-match] | Switch.cs:83:13:83:19 | After case ...: [no-match] |
| Switch.cs:84:17:85:26 | After if (...) ... | Switch.cs:86:17:86:28 | Before return ...; |
| Switch.cs:84:17:85:26 | if (...) ... | Switch.cs:84:21:84:25 | Before ... > ... |
| Switch.cs:84:21:84:21 | access to parameter j | Switch.cs:84:25:84:25 | 2 |
@@ -5946,11 +5993,13 @@ dominance
| Switch.cs:93:9:97:9 | After switch (...) {...} | Switch.cs:98:9:98:21 | Before return ...; |
| Switch.cs:93:9:97:9 | switch (...) {...} | Switch.cs:93:17:93:17 | access to parameter o |
| Switch.cs:93:17:93:17 | access to parameter o | Switch.cs:95:13:95:23 | case ...: |
-| Switch.cs:95:13:95:23 | After case ...: [match] | Switch.cs:95:18:95:20 | access to type Int32 |
+| Switch.cs:95:13:95:23 | After case ...: [match] | Switch.cs:96:17:96:28 | Before return ...; |
| Switch.cs:95:13:95:23 | After case ...: [no-match] | Switch.cs:93:9:97:9 | After switch (...) {...} |
-| Switch.cs:95:13:95:23 | case ...: | Switch.cs:95:13:95:23 | After case ...: [match] |
-| Switch.cs:95:13:95:23 | case ...: | Switch.cs:95:13:95:23 | After case ...: [no-match] |
-| Switch.cs:95:18:95:20 | access to type Int32 | Switch.cs:96:17:96:28 | Before return ...; |
+| Switch.cs:95:13:95:23 | case ...: | Switch.cs:95:18:95:20 | access to type Int32 |
+| Switch.cs:95:18:95:20 | After access to type Int32 [match] | Switch.cs:95:13:95:23 | After case ...: [match] |
+| Switch.cs:95:18:95:20 | After access to type Int32 [no-match] | Switch.cs:95:13:95:23 | After case ...: [no-match] |
+| Switch.cs:95:18:95:20 | access to type Int32 | Switch.cs:95:18:95:20 | After access to type Int32 [match] |
+| Switch.cs:95:18:95:20 | access to type Int32 | Switch.cs:95:18:95:20 | After access to type Int32 [no-match] |
| Switch.cs:96:17:96:28 | Before return ...; | Switch.cs:96:24:96:27 | true |
| Switch.cs:96:24:96:27 | true | Switch.cs:96:17:96:28 | return ...; |
| Switch.cs:98:9:98:21 | Before return ...; | Switch.cs:98:16:98:20 | false |
@@ -5966,18 +6015,22 @@ dominance
| Switch.cs:103:17:103:17 | access to parameter s | Switch.cs:103:17:103:17 | After access to parameter s [null] |
| Switch.cs:103:17:103:25 | After access to property Length | Switch.cs:105:13:105:19 | case ...: |
| Switch.cs:103:17:103:25 | Before access to property Length | Switch.cs:103:17:103:17 | access to parameter s |
-| Switch.cs:105:13:105:19 | After case ...: [match] | Switch.cs:105:18:105:18 | 0 |
+| Switch.cs:105:13:105:19 | After case ...: [match] | Switch.cs:105:21:105:29 | Before return ...; |
| Switch.cs:105:13:105:19 | After case ...: [no-match] | Switch.cs:106:13:106:19 | case ...: |
-| Switch.cs:105:13:105:19 | case ...: | Switch.cs:105:13:105:19 | After case ...: [match] |
-| Switch.cs:105:13:105:19 | case ...: | Switch.cs:105:13:105:19 | After case ...: [no-match] |
-| Switch.cs:105:18:105:18 | 0 | Switch.cs:105:21:105:29 | Before return ...; |
+| Switch.cs:105:13:105:19 | case ...: | Switch.cs:105:18:105:18 | 0 |
+| Switch.cs:105:18:105:18 | 0 | Switch.cs:105:18:105:18 | After 0 [match] |
+| Switch.cs:105:18:105:18 | 0 | Switch.cs:105:18:105:18 | After 0 [no-match] |
+| Switch.cs:105:18:105:18 | After 0 [match] | Switch.cs:105:13:105:19 | After case ...: [match] |
+| Switch.cs:105:18:105:18 | After 0 [no-match] | Switch.cs:105:13:105:19 | After case ...: [no-match] |
| Switch.cs:105:21:105:29 | Before return ...; | Switch.cs:105:28:105:28 | 0 |
| Switch.cs:105:28:105:28 | 0 | Switch.cs:105:21:105:29 | return ...; |
-| Switch.cs:106:13:106:19 | After case ...: [match] | Switch.cs:106:18:106:18 | 1 |
+| Switch.cs:106:13:106:19 | After case ...: [match] | Switch.cs:106:21:106:29 | Before return ...; |
| Switch.cs:106:13:106:19 | After case ...: [no-match] | Switch.cs:103:9:107:9 | After switch (...) {...} |
-| Switch.cs:106:13:106:19 | case ...: | Switch.cs:106:13:106:19 | After case ...: [match] |
-| Switch.cs:106:13:106:19 | case ...: | Switch.cs:106:13:106:19 | After case ...: [no-match] |
-| Switch.cs:106:18:106:18 | 1 | Switch.cs:106:21:106:29 | Before return ...; |
+| Switch.cs:106:13:106:19 | case ...: | Switch.cs:106:18:106:18 | 1 |
+| Switch.cs:106:18:106:18 | 1 | Switch.cs:106:18:106:18 | After 1 [match] |
+| Switch.cs:106:18:106:18 | 1 | Switch.cs:106:18:106:18 | After 1 [no-match] |
+| Switch.cs:106:18:106:18 | After 1 [match] | Switch.cs:106:13:106:19 | After case ...: [match] |
+| Switch.cs:106:18:106:18 | After 1 [no-match] | Switch.cs:106:13:106:19 | After case ...: [no-match] |
| Switch.cs:106:21:106:29 | Before return ...; | Switch.cs:106:28:106:28 | 1 |
| Switch.cs:106:28:106:28 | 1 | Switch.cs:106:21:106:29 | return ...; |
| Switch.cs:108:9:108:18 | Before return ...; | Switch.cs:108:16:108:17 | Before -... |
@@ -6002,10 +6055,12 @@ dominance
| Switch.cs:115:17:115:24 | After access to property Length | Switch.cs:117:13:117:35 | case ...: |
| Switch.cs:115:17:115:24 | Before access to property Length | Switch.cs:115:17:115:17 | access to parameter s |
| Switch.cs:115:17:115:24 | access to property Length | Switch.cs:115:17:115:24 | After access to property Length |
-| Switch.cs:117:13:117:35 | After case ...: [match] | Switch.cs:117:18:117:18 | 3 |
-| Switch.cs:117:13:117:35 | case ...: | Switch.cs:117:13:117:35 | After case ...: [match] |
-| Switch.cs:117:13:117:35 | case ...: | Switch.cs:117:13:117:35 | After case ...: [no-match] |
-| Switch.cs:117:18:117:18 | 3 | Switch.cs:117:25:117:34 | Before ... == ... |
+| Switch.cs:117:13:117:35 | After case ...: [match] | Switch.cs:117:25:117:34 | Before ... == ... |
+| Switch.cs:117:13:117:35 | case ...: | Switch.cs:117:18:117:18 | 3 |
+| Switch.cs:117:18:117:18 | 3 | Switch.cs:117:18:117:18 | After 3 [match] |
+| Switch.cs:117:18:117:18 | 3 | Switch.cs:117:18:117:18 | After 3 [no-match] |
+| Switch.cs:117:18:117:18 | After 3 [match] | Switch.cs:117:13:117:35 | After case ...: [match] |
+| Switch.cs:117:18:117:18 | After 3 [no-match] | Switch.cs:117:13:117:35 | After case ...: [no-match] |
| Switch.cs:117:25:117:25 | access to parameter s | Switch.cs:117:30:117:34 | "foo" |
| Switch.cs:117:25:117:34 | ... == ... | Switch.cs:117:25:117:34 | After ... == ... [false] |
| Switch.cs:117:25:117:34 | ... == ... | Switch.cs:117:25:117:34 | After ... == ... [true] |
@@ -6014,10 +6069,12 @@ dominance
| Switch.cs:117:30:117:34 | "foo" | Switch.cs:117:25:117:34 | ... == ... |
| Switch.cs:117:37:117:45 | Before return ...; | Switch.cs:117:44:117:44 | 1 |
| Switch.cs:117:44:117:44 | 1 | Switch.cs:117:37:117:45 | return ...; |
-| Switch.cs:118:13:118:34 | After case ...: [match] | Switch.cs:118:18:118:18 | 2 |
-| Switch.cs:118:13:118:34 | case ...: | Switch.cs:118:13:118:34 | After case ...: [match] |
-| Switch.cs:118:13:118:34 | case ...: | Switch.cs:118:13:118:34 | After case ...: [no-match] |
-| Switch.cs:118:18:118:18 | 2 | Switch.cs:118:25:118:33 | Before ... == ... |
+| Switch.cs:118:13:118:34 | After case ...: [match] | Switch.cs:118:25:118:33 | Before ... == ... |
+| Switch.cs:118:13:118:34 | case ...: | Switch.cs:118:18:118:18 | 2 |
+| Switch.cs:118:18:118:18 | 2 | Switch.cs:118:18:118:18 | After 2 [match] |
+| Switch.cs:118:18:118:18 | 2 | Switch.cs:118:18:118:18 | After 2 [no-match] |
+| Switch.cs:118:18:118:18 | After 2 [match] | Switch.cs:118:13:118:34 | After case ...: [match] |
+| Switch.cs:118:18:118:18 | After 2 [no-match] | Switch.cs:118:13:118:34 | After case ...: [no-match] |
| Switch.cs:118:25:118:25 | access to parameter s | Switch.cs:118:30:118:33 | "fu" |
| Switch.cs:118:25:118:33 | ... == ... | Switch.cs:118:25:118:33 | After ... == ... [false] |
| Switch.cs:118:25:118:33 | ... == ... | Switch.cs:118:25:118:33 | After ... == ... [true] |
@@ -6041,14 +6098,17 @@ dominance
| Switch.cs:125:13:125:48 | ... switch { ... } | Switch.cs:125:13:125:13 | access to parameter o |
| Switch.cs:125:13:125:48 | After ... switch { ... } [false] | Switch.cs:125:9:126:19 | After if (...) ... |
| Switch.cs:125:13:125:48 | After ... switch { ... } [true] | Switch.cs:126:13:126:19 | Before return ...; |
-| Switch.cs:125:24:125:29 | Boolean b | Switch.cs:125:34:125:34 | access to local variable b |
-| Switch.cs:125:24:125:34 | ... => ... | Switch.cs:125:24:125:34 | After ... => ... [match] |
-| Switch.cs:125:24:125:34 | ... => ... | Switch.cs:125:24:125:34 | After ... => ... [no-match] |
-| Switch.cs:125:24:125:34 | After ... => ... [match] | Switch.cs:125:24:125:29 | Boolean b |
+| Switch.cs:125:24:125:29 | After Boolean b [match] | Switch.cs:125:24:125:34 | After ... => ... [match] |
+| Switch.cs:125:24:125:29 | After Boolean b [no-match] | Switch.cs:125:24:125:34 | After ... => ... [no-match] |
+| Switch.cs:125:24:125:29 | Boolean b | Switch.cs:125:24:125:29 | After Boolean b [match] |
+| Switch.cs:125:24:125:29 | Boolean b | Switch.cs:125:24:125:29 | After Boolean b [no-match] |
+| Switch.cs:125:24:125:34 | ... => ... | Switch.cs:125:24:125:29 | Boolean b |
+| Switch.cs:125:24:125:34 | After ... => ... [match] | Switch.cs:125:34:125:34 | access to local variable b |
| Switch.cs:125:24:125:34 | After ... => ... [no-match] | Switch.cs:125:37:125:46 | ... => ... |
-| Switch.cs:125:37:125:37 | _ | Switch.cs:125:42:125:46 | false |
-| Switch.cs:125:37:125:46 | ... => ... | Switch.cs:125:37:125:46 | After ... => ... [match] |
-| Switch.cs:125:37:125:46 | After ... => ... [match] | Switch.cs:125:37:125:37 | _ |
+| Switch.cs:125:37:125:37 | After _ [match] | Switch.cs:125:37:125:46 | After ... => ... [match] |
+| Switch.cs:125:37:125:37 | _ | Switch.cs:125:37:125:37 | After _ [match] |
+| Switch.cs:125:37:125:46 | ... => ... | Switch.cs:125:37:125:37 | _ |
+| Switch.cs:125:37:125:46 | After ... => ... [match] | Switch.cs:125:42:125:46 | false |
| Switch.cs:126:13:126:19 | Before return ...; | Switch.cs:126:13:126:19 | return ...; |
| Switch.cs:129:12:129:14 | Entry | Switch.cs:129:23:129:23 | o |
| Switch.cs:129:12:129:14 | Normal Exit | Switch.cs:129:12:129:14 | Exit |
@@ -6061,14 +6121,17 @@ dominance
| Switch.cs:131:17:131:17 | access to parameter o | Switch.cs:131:28:131:40 | ... => ... |
| Switch.cs:131:17:131:53 | ... switch { ... } | Switch.cs:131:17:131:17 | access to parameter o |
| Switch.cs:131:17:131:53 | After ... switch { ... } [non-null] | Switch.cs:131:16:131:66 | call to method ToString |
-| Switch.cs:131:28:131:35 | String s | Switch.cs:131:40:131:40 | access to local variable s |
-| Switch.cs:131:28:131:40 | ... => ... | Switch.cs:131:28:131:40 | After ... => ... [match] |
-| Switch.cs:131:28:131:40 | ... => ... | Switch.cs:131:28:131:40 | After ... => ... [no-match] |
-| Switch.cs:131:28:131:40 | After ... => ... [match] | Switch.cs:131:28:131:35 | String s |
+| Switch.cs:131:28:131:35 | After String s [match] | Switch.cs:131:28:131:40 | After ... => ... [match] |
+| Switch.cs:131:28:131:35 | After String s [no-match] | Switch.cs:131:28:131:40 | After ... => ... [no-match] |
+| Switch.cs:131:28:131:35 | String s | Switch.cs:131:28:131:35 | After String s [match] |
+| Switch.cs:131:28:131:35 | String s | Switch.cs:131:28:131:35 | After String s [no-match] |
+| Switch.cs:131:28:131:40 | ... => ... | Switch.cs:131:28:131:35 | String s |
+| Switch.cs:131:28:131:40 | After ... => ... [match] | Switch.cs:131:40:131:40 | access to local variable s |
| Switch.cs:131:28:131:40 | After ... => ... [no-match] | Switch.cs:131:43:131:51 | ... => ... |
-| Switch.cs:131:43:131:43 | _ | Switch.cs:131:48:131:51 | null |
-| Switch.cs:131:43:131:51 | ... => ... | Switch.cs:131:43:131:51 | After ... => ... [match] |
-| Switch.cs:131:43:131:51 | After ... => ... [match] | Switch.cs:131:43:131:43 | _ |
+| Switch.cs:131:43:131:43 | After _ [match] | Switch.cs:131:43:131:51 | After ... => ... [match] |
+| Switch.cs:131:43:131:43 | _ | Switch.cs:131:43:131:43 | After _ [match] |
+| Switch.cs:131:43:131:51 | ... => ... | Switch.cs:131:43:131:43 | _ |
+| Switch.cs:131:43:131:51 | After ... => ... [match] | Switch.cs:131:48:131:51 | null |
| Switch.cs:134:9:134:11 | Entry | Switch.cs:134:17:134:17 | i |
| Switch.cs:134:9:134:11 | Normal Exit | Switch.cs:134:9:134:11 | Exit |
| Switch.cs:134:17:134:17 | i | Switch.cs:135:5:142:5 | {...} |
@@ -6082,18 +6145,22 @@ dominance
| Switch.cs:138:29:138:30 | After -... | Switch.cs:138:22:138:31 | return ...; |
| Switch.cs:138:29:138:30 | Before -... | Switch.cs:138:30:138:30 | 1 |
| Switch.cs:138:30:138:30 | 1 | Switch.cs:138:29:138:30 | -... |
-| Switch.cs:139:13:139:19 | After case ...: [match] | Switch.cs:139:18:139:18 | 1 |
+| Switch.cs:139:13:139:19 | After case ...: [match] | Switch.cs:139:21:139:29 | Before return ...; |
| Switch.cs:139:13:139:19 | After case ...: [no-match] | Switch.cs:140:13:140:19 | case ...: |
-| Switch.cs:139:13:139:19 | case ...: | Switch.cs:139:13:139:19 | After case ...: [match] |
-| Switch.cs:139:13:139:19 | case ...: | Switch.cs:139:13:139:19 | After case ...: [no-match] |
-| Switch.cs:139:18:139:18 | 1 | Switch.cs:139:21:139:29 | Before return ...; |
+| Switch.cs:139:13:139:19 | case ...: | Switch.cs:139:18:139:18 | 1 |
+| Switch.cs:139:18:139:18 | 1 | Switch.cs:139:18:139:18 | After 1 [match] |
+| Switch.cs:139:18:139:18 | 1 | Switch.cs:139:18:139:18 | After 1 [no-match] |
+| Switch.cs:139:18:139:18 | After 1 [match] | Switch.cs:139:13:139:19 | After case ...: [match] |
+| Switch.cs:139:18:139:18 | After 1 [no-match] | Switch.cs:139:13:139:19 | After case ...: [no-match] |
| Switch.cs:139:21:139:29 | Before return ...; | Switch.cs:139:28:139:28 | 1 |
| Switch.cs:139:28:139:28 | 1 | Switch.cs:139:21:139:29 | return ...; |
-| Switch.cs:140:13:140:19 | After case ...: [match] | Switch.cs:140:18:140:18 | 2 |
+| Switch.cs:140:13:140:19 | After case ...: [match] | Switch.cs:140:21:140:29 | Before return ...; |
| Switch.cs:140:13:140:19 | After case ...: [no-match] | Switch.cs:138:13:138:20 | default: |
-| Switch.cs:140:13:140:19 | case ...: | Switch.cs:140:13:140:19 | After case ...: [match] |
-| Switch.cs:140:13:140:19 | case ...: | Switch.cs:140:13:140:19 | After case ...: [no-match] |
-| Switch.cs:140:18:140:18 | 2 | Switch.cs:140:21:140:29 | Before return ...; |
+| Switch.cs:140:13:140:19 | case ...: | Switch.cs:140:18:140:18 | 2 |
+| Switch.cs:140:18:140:18 | 2 | Switch.cs:140:18:140:18 | After 2 [match] |
+| Switch.cs:140:18:140:18 | 2 | Switch.cs:140:18:140:18 | After 2 [no-match] |
+| Switch.cs:140:18:140:18 | After 2 [match] | Switch.cs:140:13:140:19 | After case ...: [match] |
+| Switch.cs:140:18:140:18 | After 2 [no-match] | Switch.cs:140:13:140:19 | After case ...: [no-match] |
| Switch.cs:140:21:140:29 | Before return ...; | Switch.cs:140:28:140:28 | 2 |
| Switch.cs:140:28:140:28 | 2 | Switch.cs:140:21:140:29 | return ...; |
| Switch.cs:144:9:144:11 | Entry | Switch.cs:144:17:144:17 | i |
@@ -6102,11 +6169,13 @@ dominance
| Switch.cs:145:5:152:5 | {...} | Switch.cs:146:9:151:9 | switch (...) {...} |
| Switch.cs:146:9:151:9 | switch (...) {...} | Switch.cs:146:17:146:17 | access to parameter i |
| Switch.cs:146:17:146:17 | access to parameter i | Switch.cs:148:13:148:19 | case ...: |
-| Switch.cs:148:13:148:19 | After case ...: [match] | Switch.cs:148:18:148:18 | 1 |
+| Switch.cs:148:13:148:19 | After case ...: [match] | Switch.cs:148:21:148:29 | Before return ...; |
| Switch.cs:148:13:148:19 | After case ...: [no-match] | Switch.cs:150:13:150:19 | case ...: |
-| Switch.cs:148:13:148:19 | case ...: | Switch.cs:148:13:148:19 | After case ...: [match] |
-| Switch.cs:148:13:148:19 | case ...: | Switch.cs:148:13:148:19 | After case ...: [no-match] |
-| Switch.cs:148:18:148:18 | 1 | Switch.cs:148:21:148:29 | Before return ...; |
+| Switch.cs:148:13:148:19 | case ...: | Switch.cs:148:18:148:18 | 1 |
+| Switch.cs:148:18:148:18 | 1 | Switch.cs:148:18:148:18 | After 1 [match] |
+| Switch.cs:148:18:148:18 | 1 | Switch.cs:148:18:148:18 | After 1 [no-match] |
+| Switch.cs:148:18:148:18 | After 1 [match] | Switch.cs:148:13:148:19 | After case ...: [match] |
+| Switch.cs:148:18:148:18 | After 1 [no-match] | Switch.cs:148:13:148:19 | After case ...: [no-match] |
| Switch.cs:148:21:148:29 | Before return ...; | Switch.cs:148:28:148:28 | 1 |
| Switch.cs:148:28:148:28 | 1 | Switch.cs:148:21:148:29 | return ...; |
| Switch.cs:149:13:149:20 | After default: [match] | Switch.cs:149:22:149:31 | Before return ...; |
@@ -6116,11 +6185,13 @@ dominance
| Switch.cs:149:29:149:30 | After -... | Switch.cs:149:22:149:31 | return ...; |
| Switch.cs:149:29:149:30 | Before -... | Switch.cs:149:30:149:30 | 1 |
| Switch.cs:149:30:149:30 | 1 | Switch.cs:149:29:149:30 | -... |
-| Switch.cs:150:13:150:19 | After case ...: [match] | Switch.cs:150:18:150:18 | 2 |
+| Switch.cs:150:13:150:19 | After case ...: [match] | Switch.cs:150:21:150:29 | Before return ...; |
| Switch.cs:150:13:150:19 | After case ...: [no-match] | Switch.cs:149:13:149:20 | default: |
-| Switch.cs:150:13:150:19 | case ...: | Switch.cs:150:13:150:19 | After case ...: [match] |
-| Switch.cs:150:13:150:19 | case ...: | Switch.cs:150:13:150:19 | After case ...: [no-match] |
-| Switch.cs:150:18:150:18 | 2 | Switch.cs:150:21:150:29 | Before return ...; |
+| Switch.cs:150:13:150:19 | case ...: | Switch.cs:150:18:150:18 | 2 |
+| Switch.cs:150:18:150:18 | 2 | Switch.cs:150:18:150:18 | After 2 [match] |
+| Switch.cs:150:18:150:18 | 2 | Switch.cs:150:18:150:18 | After 2 [no-match] |
+| Switch.cs:150:18:150:18 | After 2 [match] | Switch.cs:150:13:150:19 | After case ...: [match] |
+| Switch.cs:150:18:150:18 | After 2 [no-match] | Switch.cs:150:13:150:19 | After case ...: [no-match] |
| Switch.cs:150:21:150:29 | Before return ...; | Switch.cs:150:28:150:28 | 2 |
| Switch.cs:150:28:150:28 | 2 | Switch.cs:150:21:150:29 | return ...; |
| Switch.cs:154:10:154:12 | Entry | Switch.cs:154:19:154:19 | b |
@@ -6137,15 +6208,19 @@ dominance
| Switch.cs:156:17:156:17 | access to parameter b | Switch.cs:156:28:156:38 | ... => ... |
| Switch.cs:156:17:156:54 | ... switch { ... } | Switch.cs:156:17:156:17 | access to parameter b |
| Switch.cs:156:17:156:54 | After ... switch { ... } | Switch.cs:156:13:156:54 | String s = ... |
-| Switch.cs:156:28:156:31 | true | Switch.cs:156:36:156:38 | "a" |
-| Switch.cs:156:28:156:38 | ... => ... | Switch.cs:156:28:156:38 | After ... => ... [match] |
-| Switch.cs:156:28:156:38 | ... => ... | Switch.cs:156:28:156:38 | After ... => ... [no-match] |
-| Switch.cs:156:28:156:38 | After ... => ... [match] | Switch.cs:156:28:156:31 | true |
+| Switch.cs:156:28:156:31 | After true [match] | Switch.cs:156:28:156:38 | After ... => ... [match] |
+| Switch.cs:156:28:156:31 | After true [no-match] | Switch.cs:156:28:156:38 | After ... => ... [no-match] |
+| Switch.cs:156:28:156:31 | true | Switch.cs:156:28:156:31 | After true [match] |
+| Switch.cs:156:28:156:31 | true | Switch.cs:156:28:156:31 | After true [no-match] |
+| Switch.cs:156:28:156:38 | ... => ... | Switch.cs:156:28:156:31 | true |
+| Switch.cs:156:28:156:38 | After ... => ... [match] | Switch.cs:156:36:156:38 | "a" |
| Switch.cs:156:28:156:38 | After ... => ... [no-match] | Switch.cs:156:41:156:52 | ... => ... |
-| Switch.cs:156:41:156:45 | false | Switch.cs:156:50:156:52 | "b" |
-| Switch.cs:156:41:156:52 | ... => ... | Switch.cs:156:41:156:52 | After ... => ... [match] |
-| Switch.cs:156:41:156:52 | ... => ... | Switch.cs:156:41:156:52 | After ... => ... [no-match] |
-| Switch.cs:156:41:156:52 | After ... => ... [match] | Switch.cs:156:41:156:45 | false |
+| Switch.cs:156:41:156:45 | After false [match] | Switch.cs:156:41:156:52 | After ... => ... [match] |
+| Switch.cs:156:41:156:45 | After false [no-match] | Switch.cs:156:41:156:52 | After ... => ... [no-match] |
+| Switch.cs:156:41:156:45 | false | Switch.cs:156:41:156:45 | After false [match] |
+| Switch.cs:156:41:156:45 | false | Switch.cs:156:41:156:45 | After false [no-match] |
+| Switch.cs:156:41:156:52 | ... => ... | Switch.cs:156:41:156:45 | false |
+| Switch.cs:156:41:156:52 | After ... => ... [match] | Switch.cs:156:50:156:52 | "b" |
| Switch.cs:157:9:160:49 | After if (...) ... | Switch.cs:155:5:161:5 | After {...} |
| Switch.cs:157:9:160:49 | if (...) ... | Switch.cs:157:13:157:13 | access to parameter b |
| Switch.cs:157:13:157:13 | After access to parameter b [false] | Switch.cs:160:13:160:49 | ...; |
@@ -6184,14 +6259,18 @@ dominance
| Switch.cs:165:9:177:9 | After switch (...) {...} | Switch.cs:164:5:178:5 | After {...} |
| Switch.cs:165:9:177:9 | switch (...) {...} | Switch.cs:165:17:165:17 | access to parameter i |
| Switch.cs:165:17:165:17 | access to parameter i | Switch.cs:167:13:167:19 | case ...: |
-| Switch.cs:167:13:167:19 | After case ...: [match] | Switch.cs:167:18:167:18 | 1 |
| Switch.cs:167:13:167:19 | After case ...: [no-match] | Switch.cs:168:13:168:19 | case ...: |
-| Switch.cs:167:13:167:19 | case ...: | Switch.cs:167:13:167:19 | After case ...: [match] |
-| Switch.cs:167:13:167:19 | case ...: | Switch.cs:167:13:167:19 | After case ...: [no-match] |
-| Switch.cs:168:13:168:19 | After case ...: [match] | Switch.cs:168:18:168:18 | 2 |
+| Switch.cs:167:13:167:19 | case ...: | Switch.cs:167:18:167:18 | 1 |
+| Switch.cs:167:18:167:18 | 1 | Switch.cs:167:18:167:18 | After 1 [match] |
+| Switch.cs:167:18:167:18 | 1 | Switch.cs:167:18:167:18 | After 1 [no-match] |
+| Switch.cs:167:18:167:18 | After 1 [match] | Switch.cs:167:13:167:19 | After case ...: [match] |
+| Switch.cs:167:18:167:18 | After 1 [no-match] | Switch.cs:167:13:167:19 | After case ...: [no-match] |
| Switch.cs:168:13:168:19 | After case ...: [no-match] | Switch.cs:171:13:171:19 | case ...: |
-| Switch.cs:168:13:168:19 | case ...: | Switch.cs:168:13:168:19 | After case ...: [match] |
-| Switch.cs:168:13:168:19 | case ...: | Switch.cs:168:13:168:19 | After case ...: [no-match] |
+| Switch.cs:168:13:168:19 | case ...: | Switch.cs:168:18:168:18 | 2 |
+| Switch.cs:168:18:168:18 | 2 | Switch.cs:168:18:168:18 | After 2 [match] |
+| Switch.cs:168:18:168:18 | 2 | Switch.cs:168:18:168:18 | After 2 [no-match] |
+| Switch.cs:168:18:168:18 | After 2 [match] | Switch.cs:168:13:168:19 | After case ...: [match] |
+| Switch.cs:168:18:168:18 | After 2 [no-match] | Switch.cs:168:13:168:19 | After case ...: [no-match] |
| Switch.cs:169:17:169:50 | After call to method WriteLine | Switch.cs:169:17:169:51 | After ...; |
| Switch.cs:169:17:169:50 | Before call to method WriteLine | Switch.cs:169:42:169:49 | "1 or 2" |
| Switch.cs:169:17:169:50 | call to method WriteLine | Switch.cs:169:17:169:50 | After call to method WriteLine |
@@ -6199,11 +6278,13 @@ dominance
| Switch.cs:169:17:169:51 | After ...; | Switch.cs:170:17:170:22 | Before break; |
| Switch.cs:169:42:169:49 | "1 or 2" | Switch.cs:169:17:169:50 | call to method WriteLine |
| Switch.cs:170:17:170:22 | Before break; | Switch.cs:170:17:170:22 | break; |
-| Switch.cs:171:13:171:19 | After case ...: [match] | Switch.cs:171:18:171:18 | 3 |
+| Switch.cs:171:13:171:19 | After case ...: [match] | Switch.cs:172:17:172:46 | ...; |
| Switch.cs:171:13:171:19 | After case ...: [no-match] | Switch.cs:174:13:174:20 | default: |
-| Switch.cs:171:13:171:19 | case ...: | Switch.cs:171:13:171:19 | After case ...: [match] |
-| Switch.cs:171:13:171:19 | case ...: | Switch.cs:171:13:171:19 | After case ...: [no-match] |
-| Switch.cs:171:18:171:18 | 3 | Switch.cs:172:17:172:46 | ...; |
+| Switch.cs:171:13:171:19 | case ...: | Switch.cs:171:18:171:18 | 3 |
+| Switch.cs:171:18:171:18 | 3 | Switch.cs:171:18:171:18 | After 3 [match] |
+| Switch.cs:171:18:171:18 | 3 | Switch.cs:171:18:171:18 | After 3 [no-match] |
+| Switch.cs:171:18:171:18 | After 3 [match] | Switch.cs:171:13:171:19 | After case ...: [match] |
+| Switch.cs:171:18:171:18 | After 3 [no-match] | Switch.cs:171:13:171:19 | After case ...: [no-match] |
| Switch.cs:172:17:172:45 | After call to method WriteLine | Switch.cs:172:17:172:46 | After ...; |
| Switch.cs:172:17:172:45 | Before call to method WriteLine | Switch.cs:172:42:172:44 | "3" |
| Switch.cs:172:17:172:45 | call to method WriteLine | Switch.cs:172:17:172:45 | After call to method WriteLine |
@@ -6569,11 +6650,12 @@ dominance
| cflow.cs:39:9:50:9 | After switch (...) {...} | cflow.cs:51:9:59:9 | switch (...) {...} |
| cflow.cs:39:9:50:9 | switch (...) {...} | cflow.cs:39:17:39:17 | access to parameter a |
| cflow.cs:39:17:39:17 | access to parameter a | cflow.cs:41:13:41:19 | case ...: |
-| cflow.cs:41:13:41:19 | After case ...: [match] | cflow.cs:41:18:41:18 | 1 |
+| cflow.cs:41:13:41:19 | After case ...: [match] | cflow.cs:42:17:42:39 | ...; |
| cflow.cs:41:13:41:19 | After case ...: [no-match] | cflow.cs:44:13:44:19 | case ...: |
-| cflow.cs:41:13:41:19 | case ...: | cflow.cs:41:13:41:19 | After case ...: [match] |
-| cflow.cs:41:13:41:19 | case ...: | cflow.cs:41:13:41:19 | After case ...: [no-match] |
-| cflow.cs:41:18:41:18 | 1 | cflow.cs:42:17:42:39 | ...; |
+| cflow.cs:41:13:41:19 | case ...: | cflow.cs:41:18:41:18 | 1 |
+| cflow.cs:41:18:41:18 | 1 | cflow.cs:41:18:41:18 | After 1 [match] |
+| cflow.cs:41:18:41:18 | 1 | cflow.cs:41:18:41:18 | After 1 [no-match] |
+| cflow.cs:41:18:41:18 | After 1 [no-match] | cflow.cs:41:13:41:19 | After case ...: [no-match] |
| cflow.cs:42:17:42:38 | After call to method WriteLine | cflow.cs:42:17:42:39 | After ...; |
| cflow.cs:42:17:42:38 | Before call to method WriteLine | cflow.cs:42:35:42:37 | "1" |
| cflow.cs:42:17:42:38 | call to method WriteLine | cflow.cs:42:17:42:38 | After call to method WriteLine |
@@ -6582,10 +6664,12 @@ dominance
| cflow.cs:42:35:42:37 | "1" | cflow.cs:42:17:42:38 | call to method WriteLine |
| cflow.cs:43:17:43:28 | Before goto case ...; | cflow.cs:43:27:43:27 | 2 |
| cflow.cs:43:27:43:27 | 2 | cflow.cs:43:17:43:28 | goto case ...; |
-| cflow.cs:44:13:44:19 | After case ...: [match] | cflow.cs:44:18:44:18 | 2 |
+| cflow.cs:44:13:44:19 | After case ...: [match] | cflow.cs:45:17:45:39 | ...; |
| cflow.cs:44:13:44:19 | After case ...: [no-match] | cflow.cs:47:13:47:19 | case ...: |
-| cflow.cs:44:13:44:19 | case ...: | cflow.cs:44:13:44:19 | After case ...: [no-match] |
-| cflow.cs:44:18:44:18 | 2 | cflow.cs:45:17:45:39 | ...; |
+| cflow.cs:44:13:44:19 | case ...: | cflow.cs:44:18:44:18 | 2 |
+| cflow.cs:44:18:44:18 | 2 | cflow.cs:44:18:44:18 | After 2 [match] |
+| cflow.cs:44:18:44:18 | 2 | cflow.cs:44:18:44:18 | After 2 [no-match] |
+| cflow.cs:44:18:44:18 | After 2 [no-match] | cflow.cs:44:13:44:19 | After case ...: [no-match] |
| cflow.cs:45:17:45:38 | After call to method WriteLine | cflow.cs:45:17:45:39 | After ...; |
| cflow.cs:45:17:45:38 | Before call to method WriteLine | cflow.cs:45:35:45:37 | "2" |
| cflow.cs:45:17:45:38 | call to method WriteLine | cflow.cs:45:17:45:38 | After call to method WriteLine |
@@ -6594,10 +6678,12 @@ dominance
| cflow.cs:45:35:45:37 | "2" | cflow.cs:45:17:45:38 | call to method WriteLine |
| cflow.cs:46:17:46:28 | Before goto case ...; | cflow.cs:46:27:46:27 | 1 |
| cflow.cs:46:27:46:27 | 1 | cflow.cs:46:17:46:28 | goto case ...; |
-| cflow.cs:47:13:47:19 | After case ...: [match] | cflow.cs:47:18:47:18 | 3 |
-| cflow.cs:47:13:47:19 | case ...: | cflow.cs:47:13:47:19 | After case ...: [match] |
-| cflow.cs:47:13:47:19 | case ...: | cflow.cs:47:13:47:19 | After case ...: [no-match] |
-| cflow.cs:47:18:47:18 | 3 | cflow.cs:48:17:48:39 | ...; |
+| cflow.cs:47:13:47:19 | After case ...: [match] | cflow.cs:48:17:48:39 | ...; |
+| cflow.cs:47:13:47:19 | case ...: | cflow.cs:47:18:47:18 | 3 |
+| cflow.cs:47:18:47:18 | 3 | cflow.cs:47:18:47:18 | After 3 [match] |
+| cflow.cs:47:18:47:18 | 3 | cflow.cs:47:18:47:18 | After 3 [no-match] |
+| cflow.cs:47:18:47:18 | After 3 [match] | cflow.cs:47:13:47:19 | After case ...: [match] |
+| cflow.cs:47:18:47:18 | After 3 [no-match] | cflow.cs:47:13:47:19 | After case ...: [no-match] |
| cflow.cs:48:17:48:38 | After call to method WriteLine | cflow.cs:48:17:48:39 | After ...; |
| cflow.cs:48:17:48:38 | Before call to method WriteLine | cflow.cs:48:35:48:37 | "3" |
| cflow.cs:48:17:48:38 | call to method WriteLine | cflow.cs:48:17:48:38 | After call to method WriteLine |
@@ -6608,11 +6694,13 @@ dominance
| cflow.cs:51:9:59:9 | After switch (...) {...} | cflow.cs:60:9:66:9 | switch (...) {...} |
| cflow.cs:51:9:59:9 | switch (...) {...} | cflow.cs:51:17:51:17 | access to parameter a |
| cflow.cs:51:17:51:17 | access to parameter a | cflow.cs:53:13:53:20 | case ...: |
-| cflow.cs:53:13:53:20 | After case ...: [match] | cflow.cs:53:18:53:19 | 42 |
+| cflow.cs:53:13:53:20 | After case ...: [match] | cflow.cs:54:17:54:48 | ...; |
| cflow.cs:53:13:53:20 | After case ...: [no-match] | cflow.cs:56:13:56:20 | default: |
-| cflow.cs:53:13:53:20 | case ...: | cflow.cs:53:13:53:20 | After case ...: [match] |
-| cflow.cs:53:13:53:20 | case ...: | cflow.cs:53:13:53:20 | After case ...: [no-match] |
-| cflow.cs:53:18:53:19 | 42 | cflow.cs:54:17:54:48 | ...; |
+| cflow.cs:53:13:53:20 | case ...: | cflow.cs:53:18:53:19 | 42 |
+| cflow.cs:53:18:53:19 | 42 | cflow.cs:53:18:53:19 | After 42 [match] |
+| cflow.cs:53:18:53:19 | 42 | cflow.cs:53:18:53:19 | After 42 [no-match] |
+| cflow.cs:53:18:53:19 | After 42 [match] | cflow.cs:53:13:53:20 | After case ...: [match] |
+| cflow.cs:53:18:53:19 | After 42 [no-match] | cflow.cs:53:13:53:20 | After case ...: [no-match] |
| cflow.cs:54:17:54:47 | After call to method WriteLine | cflow.cs:54:17:54:48 | After ...; |
| cflow.cs:54:17:54:47 | Before call to method WriteLine | cflow.cs:54:35:54:46 | "The answer" |
| cflow.cs:54:17:54:47 | call to method WriteLine | cflow.cs:54:17:54:47 | After call to method WriteLine |
@@ -6638,10 +6726,12 @@ dominance
| cflow.cs:60:27:60:31 | Before access to field Field | cflow.cs:60:27:60:31 | this access |
| cflow.cs:60:27:60:31 | access to field Field | cflow.cs:60:27:60:31 | After access to field Field |
| cflow.cs:60:27:60:31 | this access | cflow.cs:60:27:60:31 | access to field Field |
-| cflow.cs:62:13:62:19 | After case ...: [match] | cflow.cs:62:18:62:18 | 0 |
-| cflow.cs:62:13:62:19 | case ...: | cflow.cs:62:13:62:19 | After case ...: [match] |
-| cflow.cs:62:13:62:19 | case ...: | cflow.cs:62:13:62:19 | After case ...: [no-match] |
-| cflow.cs:62:18:62:18 | 0 | cflow.cs:63:17:64:55 | if (...) ... |
+| cflow.cs:62:13:62:19 | After case ...: [match] | cflow.cs:63:17:64:55 | if (...) ... |
+| cflow.cs:62:13:62:19 | case ...: | cflow.cs:62:18:62:18 | 0 |
+| cflow.cs:62:18:62:18 | 0 | cflow.cs:62:18:62:18 | After 0 [match] |
+| cflow.cs:62:18:62:18 | 0 | cflow.cs:62:18:62:18 | After 0 [no-match] |
+| cflow.cs:62:18:62:18 | After 0 [match] | cflow.cs:62:13:62:19 | After case ...: [match] |
+| cflow.cs:62:18:62:18 | After 0 [no-match] | cflow.cs:62:13:62:19 | After case ...: [no-match] |
| cflow.cs:63:17:64:55 | After if (...) ... | cflow.cs:65:17:65:22 | Before break; |
| cflow.cs:63:17:64:55 | if (...) ... | cflow.cs:63:21:63:34 | !... |
| cflow.cs:63:21:63:34 | !... | cflow.cs:63:23:63:33 | Before ... == ... |
@@ -7528,17 +7618,21 @@ dominance
| cflow.cs:246:17:246:32 | After ... + ... | cflow.cs:248:13:248:19 | case ...: |
| cflow.cs:246:17:246:32 | Before ... + ... | cflow.cs:246:17:246:28 | Before access to property Length |
| cflow.cs:246:32:246:32 | 3 | cflow.cs:246:17:246:32 | ... + ... |
-| cflow.cs:248:13:248:19 | After case ...: [match] | cflow.cs:248:18:248:18 | 0 |
+| cflow.cs:248:13:248:19 | After case ...: [match] | cflow.cs:249:17:249:29 | Before goto default; |
| cflow.cs:248:13:248:19 | After case ...: [no-match] | cflow.cs:250:13:250:19 | case ...: |
-| cflow.cs:248:13:248:19 | case ...: | cflow.cs:248:13:248:19 | After case ...: [match] |
-| cflow.cs:248:13:248:19 | case ...: | cflow.cs:248:13:248:19 | After case ...: [no-match] |
-| cflow.cs:248:18:248:18 | 0 | cflow.cs:249:17:249:29 | Before goto default; |
+| cflow.cs:248:13:248:19 | case ...: | cflow.cs:248:18:248:18 | 0 |
+| cflow.cs:248:18:248:18 | 0 | cflow.cs:248:18:248:18 | After 0 [match] |
+| cflow.cs:248:18:248:18 | 0 | cflow.cs:248:18:248:18 | After 0 [no-match] |
+| cflow.cs:248:18:248:18 | After 0 [match] | cflow.cs:248:13:248:19 | After case ...: [match] |
+| cflow.cs:248:18:248:18 | After 0 [no-match] | cflow.cs:248:13:248:19 | After case ...: [no-match] |
| cflow.cs:249:17:249:29 | Before goto default; | cflow.cs:249:17:249:29 | goto default; |
-| cflow.cs:250:13:250:19 | After case ...: [match] | cflow.cs:250:18:250:18 | 1 |
+| cflow.cs:250:13:250:19 | After case ...: [match] | cflow.cs:251:17:251:37 | ...; |
| cflow.cs:250:13:250:19 | After case ...: [no-match] | cflow.cs:253:13:253:19 | case ...: |
-| cflow.cs:250:13:250:19 | case ...: | cflow.cs:250:13:250:19 | After case ...: [match] |
-| cflow.cs:250:13:250:19 | case ...: | cflow.cs:250:13:250:19 | After case ...: [no-match] |
-| cflow.cs:250:18:250:18 | 1 | cflow.cs:251:17:251:37 | ...; |
+| cflow.cs:250:13:250:19 | case ...: | cflow.cs:250:18:250:18 | 1 |
+| cflow.cs:250:18:250:18 | 1 | cflow.cs:250:18:250:18 | After 1 [match] |
+| cflow.cs:250:18:250:18 | 1 | cflow.cs:250:18:250:18 | After 1 [no-match] |
+| cflow.cs:250:18:250:18 | After 1 [match] | cflow.cs:250:13:250:19 | After case ...: [match] |
+| cflow.cs:250:18:250:18 | After 1 [no-match] | cflow.cs:250:13:250:19 | After case ...: [no-match] |
| cflow.cs:251:17:251:36 | After call to method WriteLine | cflow.cs:251:17:251:37 | After ...; |
| cflow.cs:251:17:251:36 | Before call to method WriteLine | cflow.cs:251:35:251:35 | 1 |
| cflow.cs:251:17:251:36 | call to method WriteLine | cflow.cs:251:17:251:36 | After call to method WriteLine |
@@ -7546,11 +7640,13 @@ dominance
| cflow.cs:251:17:251:37 | After ...; | cflow.cs:252:17:252:22 | Before break; |
| cflow.cs:251:35:251:35 | 1 | cflow.cs:251:17:251:36 | call to method WriteLine |
| cflow.cs:252:17:252:22 | Before break; | cflow.cs:252:17:252:22 | break; |
-| cflow.cs:253:13:253:19 | After case ...: [match] | cflow.cs:253:18:253:18 | 2 |
+| cflow.cs:253:13:253:19 | After case ...: [match] | cflow.cs:254:17:254:27 | Before goto ...; |
| cflow.cs:253:13:253:19 | After case ...: [no-match] | cflow.cs:255:13:255:20 | default: |
-| cflow.cs:253:13:253:19 | case ...: | cflow.cs:253:13:253:19 | After case ...: [match] |
-| cflow.cs:253:13:253:19 | case ...: | cflow.cs:253:13:253:19 | After case ...: [no-match] |
-| cflow.cs:253:18:253:18 | 2 | cflow.cs:254:17:254:27 | Before goto ...; |
+| cflow.cs:253:13:253:19 | case ...: | cflow.cs:253:18:253:18 | 2 |
+| cflow.cs:253:18:253:18 | 2 | cflow.cs:253:18:253:18 | After 2 [match] |
+| cflow.cs:253:18:253:18 | 2 | cflow.cs:253:18:253:18 | After 2 [no-match] |
+| cflow.cs:253:18:253:18 | After 2 [match] | cflow.cs:253:13:253:19 | After case ...: [match] |
+| cflow.cs:253:18:253:18 | After 2 [no-match] | cflow.cs:253:13:253:19 | After case ...: [no-match] |
| cflow.cs:254:17:254:27 | Before goto ...; | cflow.cs:254:17:254:27 | goto ...; |
| cflow.cs:255:13:255:20 | After default: [match] | cflow.cs:256:17:256:37 | ...; |
| cflow.cs:256:17:256:36 | After call to method WriteLine | cflow.cs:256:17:256:37 | After ...; |
@@ -12871,15 +12967,19 @@ postDominance
| Patterns.cs:20:9:38:9 | After switch (...) {...} | Patterns.cs:37:17:37:22 | break; |
| Patterns.cs:20:9:38:9 | switch (...) {...} | Patterns.cs:8:9:18:9 | After if (...) ... |
| Patterns.cs:20:17:20:17 | access to local variable o | Patterns.cs:20:9:38:9 | switch (...) {...} |
+| Patterns.cs:22:13:22:23 | After case ...: [match] | Patterns.cs:22:18:22:22 | After "xyz" [match] |
+| Patterns.cs:22:13:22:23 | After case ...: [no-match] | Patterns.cs:22:18:22:22 | After "xyz" [no-match] |
| Patterns.cs:22:13:22:23 | case ...: | Patterns.cs:20:17:20:17 | access to local variable o |
-| Patterns.cs:22:18:22:22 | "xyz" | Patterns.cs:22:13:22:23 | After case ...: [match] |
-| Patterns.cs:23:17:23:22 | Before break; | Patterns.cs:22:18:22:22 | "xyz" |
+| Patterns.cs:22:18:22:22 | "xyz" | Patterns.cs:22:13:22:23 | case ...: |
+| Patterns.cs:23:17:23:22 | Before break; | Patterns.cs:22:13:22:23 | After case ...: [match] |
| Patterns.cs:23:17:23:22 | break; | Patterns.cs:23:17:23:22 | Before break; |
+| Patterns.cs:24:13:24:36 | After case ...: [match] | Patterns.cs:24:18:24:23 | After Int32 i2 [match] |
+| Patterns.cs:24:13:24:36 | After case ...: [no-match] | Patterns.cs:24:18:24:23 | After Int32 i2 [no-match] |
| Patterns.cs:24:13:24:36 | case ...: | Patterns.cs:22:13:22:23 | After case ...: [no-match] |
-| Patterns.cs:24:18:24:23 | Int32 i2 | Patterns.cs:24:13:24:36 | After case ...: [match] |
+| Patterns.cs:24:18:24:23 | Int32 i2 | Patterns.cs:24:13:24:36 | case ...: |
| Patterns.cs:24:30:24:31 | access to local variable i2 | Patterns.cs:24:30:24:35 | Before ... > ... |
| Patterns.cs:24:30:24:35 | ... > ... | Patterns.cs:24:35:24:35 | 0 |
-| Patterns.cs:24:30:24:35 | Before ... > ... | Patterns.cs:24:18:24:23 | Int32 i2 |
+| Patterns.cs:24:30:24:35 | Before ... > ... | Patterns.cs:24:13:24:36 | After case ...: [match] |
| Patterns.cs:24:35:24:35 | 0 | Patterns.cs:24:30:24:31 | access to local variable i2 |
| Patterns.cs:25:17:25:51 | After call to method WriteLine | Patterns.cs:25:17:25:51 | call to method WriteLine |
| Patterns.cs:25:17:25:51 | Before call to method WriteLine | Patterns.cs:25:17:25:52 | ...; |
@@ -12896,13 +12996,15 @@ postDominance
| Patterns.cs:25:47:25:48 | access to local variable i2 | Patterns.cs:25:46:25:49 | Before {...} |
| Patterns.cs:26:17:26:22 | Before break; | Patterns.cs:25:17:25:52 | After ...; |
| Patterns.cs:26:17:26:22 | break; | Patterns.cs:26:17:26:22 | Before break; |
+| Patterns.cs:27:13:27:24 | After case ...: [match] | Patterns.cs:27:18:27:23 | After Int32 i3 [match] |
+| Patterns.cs:27:13:27:24 | After case ...: [no-match] | Patterns.cs:27:18:27:23 | After Int32 i3 [no-match] |
| Patterns.cs:27:13:27:24 | case ...: | Patterns.cs:24:13:24:36 | After case ...: [no-match] |
| Patterns.cs:27:13:27:24 | case ...: | Patterns.cs:24:30:24:35 | After ... > ... [false] |
-| Patterns.cs:27:18:27:23 | Int32 i3 | Patterns.cs:27:13:27:24 | After case ...: [match] |
+| Patterns.cs:27:18:27:23 | Int32 i3 | Patterns.cs:27:13:27:24 | case ...: |
| Patterns.cs:28:17:28:46 | After call to method WriteLine | Patterns.cs:28:17:28:46 | call to method WriteLine |
| Patterns.cs:28:17:28:46 | Before call to method WriteLine | Patterns.cs:28:17:28:47 | ...; |
| Patterns.cs:28:17:28:46 | call to method WriteLine | Patterns.cs:28:35:28:45 | After $"..." |
-| Patterns.cs:28:17:28:47 | ...; | Patterns.cs:27:18:27:23 | Int32 i3 |
+| Patterns.cs:28:17:28:47 | ...; | Patterns.cs:27:13:27:24 | After case ...: [match] |
| Patterns.cs:28:17:28:47 | After ...; | Patterns.cs:28:17:28:46 | After call to method WriteLine |
| Patterns.cs:28:35:28:45 | $"..." | Patterns.cs:28:41:28:44 | After {...} |
| Patterns.cs:28:35:28:45 | After $"..." | Patterns.cs:28:35:28:45 | $"..." |
@@ -12914,12 +13016,14 @@ postDominance
| Patterns.cs:28:42:28:43 | access to local variable i3 | Patterns.cs:28:41:28:44 | Before {...} |
| Patterns.cs:29:17:29:22 | Before break; | Patterns.cs:28:17:28:47 | After ...; |
| Patterns.cs:29:17:29:22 | break; | Patterns.cs:29:17:29:22 | Before break; |
+| Patterns.cs:30:13:30:27 | After case ...: [match] | Patterns.cs:30:18:30:26 | After String s2 [match] |
+| Patterns.cs:30:13:30:27 | After case ...: [no-match] | Patterns.cs:30:18:30:26 | After String s2 [no-match] |
| Patterns.cs:30:13:30:27 | case ...: | Patterns.cs:27:13:27:24 | After case ...: [no-match] |
-| Patterns.cs:30:18:30:26 | String s2 | Patterns.cs:30:13:30:27 | After case ...: [match] |
+| Patterns.cs:30:18:30:26 | String s2 | Patterns.cs:30:13:30:27 | case ...: |
| Patterns.cs:31:17:31:49 | After call to method WriteLine | Patterns.cs:31:17:31:49 | call to method WriteLine |
| Patterns.cs:31:17:31:49 | Before call to method WriteLine | Patterns.cs:31:17:31:50 | ...; |
| Patterns.cs:31:17:31:49 | call to method WriteLine | Patterns.cs:31:35:31:48 | After $"..." |
-| Patterns.cs:31:17:31:50 | ...; | Patterns.cs:30:18:30:26 | String s2 |
+| Patterns.cs:31:17:31:50 | ...; | Patterns.cs:30:13:30:27 | After case ...: [match] |
| Patterns.cs:31:17:31:50 | After ...; | Patterns.cs:31:17:31:49 | After call to method WriteLine |
| Patterns.cs:31:35:31:48 | $"..." | Patterns.cs:31:44:31:47 | After {...} |
| Patterns.cs:31:35:31:48 | After $"..." | Patterns.cs:31:35:31:48 | $"..." |
@@ -12931,9 +13035,11 @@ postDominance
| Patterns.cs:31:45:31:46 | access to local variable s2 | Patterns.cs:31:44:31:47 | Before {...} |
| Patterns.cs:32:17:32:22 | Before break; | Patterns.cs:31:17:31:50 | After ...; |
| Patterns.cs:32:17:32:22 | break; | Patterns.cs:32:17:32:22 | Before break; |
+| Patterns.cs:33:13:33:24 | After case ...: [match] | Patterns.cs:33:18:33:23 | After Object v2 [match] |
+| Patterns.cs:33:13:33:24 | After case ...: [no-match] | Patterns.cs:33:18:33:23 | After Object v2 [no-match] |
| Patterns.cs:33:13:33:24 | case ...: | Patterns.cs:30:13:30:27 | After case ...: [no-match] |
-| Patterns.cs:33:18:33:23 | Object v2 | Patterns.cs:33:13:33:24 | After case ...: [match] |
-| Patterns.cs:34:17:34:22 | Before break; | Patterns.cs:33:18:33:23 | Object v2 |
+| Patterns.cs:33:18:33:23 | Object v2 | Patterns.cs:33:13:33:24 | case ...: |
+| Patterns.cs:34:17:34:22 | Before break; | Patterns.cs:33:13:33:24 | After case ...: [match] |
| Patterns.cs:34:17:34:22 | break; | Patterns.cs:34:17:34:22 | Before break; |
| Patterns.cs:35:13:35:20 | After default: [match] | Patterns.cs:35:13:35:20 | default: |
| Patterns.cs:35:13:35:20 | default: | Patterns.cs:33:13:33:24 | After case ...: [no-match] |
@@ -13016,16 +13122,18 @@ postDominance
| Patterns.cs:58:16:62:9 | ... switch { ... } | Patterns.cs:58:9:62:10 | Before return ...; |
| Patterns.cs:58:16:62:9 | After ... switch { ... } | Patterns.cs:60:22:60:28 | "not 1" |
| Patterns.cs:58:16:62:9 | After ... switch { ... } | Patterns.cs:61:18:61:24 | "other" |
-| Patterns.cs:60:13:60:17 | After not ... | Patterns.cs:60:13:60:17 | not ... |
-| Patterns.cs:60:13:60:17 | Before not ... | Patterns.cs:60:13:60:28 | After ... => ... [match] |
+| Patterns.cs:60:13:60:17 | Before not ... | Patterns.cs:60:13:60:28 | ... => ... |
| Patterns.cs:60:13:60:17 | not ... | Patterns.cs:60:17:60:17 | 1 |
| Patterns.cs:60:13:60:28 | ... => ... | Patterns.cs:58:16:58:16 | access to parameter i |
+| Patterns.cs:60:13:60:28 | After ... => ... [match] | Patterns.cs:60:13:60:17 | After not ... [match] |
+| Patterns.cs:60:13:60:28 | After ... => ... [no-match] | Patterns.cs:60:13:60:17 | After not ... [no-match] |
| Patterns.cs:60:17:60:17 | 1 | Patterns.cs:60:13:60:17 | Before not ... |
-| Patterns.cs:60:22:60:28 | "not 1" | Patterns.cs:60:13:60:17 | After not ... |
-| Patterns.cs:61:13:61:13 | _ | Patterns.cs:61:13:61:24 | After ... => ... [match] |
+| Patterns.cs:60:22:60:28 | "not 1" | Patterns.cs:60:13:60:28 | After ... => ... [match] |
+| Patterns.cs:61:13:61:13 | After _ [match] | Patterns.cs:61:13:61:13 | _ |
+| Patterns.cs:61:13:61:13 | _ | Patterns.cs:61:13:61:24 | ... => ... |
| Patterns.cs:61:13:61:24 | ... => ... | Patterns.cs:60:13:60:28 | After ... => ... [no-match] |
-| Patterns.cs:61:13:61:24 | After ... => ... [match] | Patterns.cs:61:13:61:24 | ... => ... |
-| Patterns.cs:61:18:61:24 | "other" | Patterns.cs:61:13:61:13 | _ |
+| Patterns.cs:61:13:61:24 | After ... => ... [match] | Patterns.cs:61:13:61:13 | After _ [match] |
+| Patterns.cs:61:18:61:24 | "other" | Patterns.cs:61:13:61:24 | After ... => ... [match] |
| Patterns.cs:65:26:65:27 | Exit | Patterns.cs:65:26:65:27 | Normal Exit |
| Patterns.cs:65:26:65:27 | Normal Exit | Patterns.cs:67:9:71:10 | return ...; |
| Patterns.cs:66:5:72:5 | {...} | Patterns.cs:65:26:65:27 | Entry |
@@ -13036,15 +13144,18 @@ postDominance
| Patterns.cs:67:16:71:9 | After ... switch { ... } | Patterns.cs:69:22:69:33 | "impossible" |
| Patterns.cs:67:16:71:9 | After ... switch { ... } | Patterns.cs:70:13:70:27 | After ... => ... [no-match] |
| Patterns.cs:67:16:71:9 | After ... switch { ... } | Patterns.cs:70:18:70:27 | "possible" |
-| Patterns.cs:69:13:69:17 | After not ... | Patterns.cs:69:13:69:17 | not ... |
-| Patterns.cs:69:13:69:17 | Before not ... | Patterns.cs:69:13:69:33 | After ... => ... [match] |
+| Patterns.cs:69:13:69:17 | Before not ... | Patterns.cs:69:13:69:33 | ... => ... |
| Patterns.cs:69:13:69:17 | not ... | Patterns.cs:69:17:69:17 | 2 |
| Patterns.cs:69:13:69:33 | ... => ... | Patterns.cs:67:16:67:16 | 2 |
+| Patterns.cs:69:13:69:33 | After ... => ... [match] | Patterns.cs:69:13:69:17 | After not ... [match] |
+| Patterns.cs:69:13:69:33 | After ... => ... [no-match] | Patterns.cs:69:13:69:17 | After not ... [no-match] |
| Patterns.cs:69:17:69:17 | 2 | Patterns.cs:69:13:69:17 | Before not ... |
-| Patterns.cs:69:22:69:33 | "impossible" | Patterns.cs:69:13:69:17 | After not ... |
-| Patterns.cs:70:13:70:13 | 2 | Patterns.cs:70:13:70:27 | After ... => ... [match] |
+| Patterns.cs:69:22:69:33 | "impossible" | Patterns.cs:69:13:69:33 | After ... => ... [match] |
+| Patterns.cs:70:13:70:13 | 2 | Patterns.cs:70:13:70:27 | ... => ... |
| Patterns.cs:70:13:70:27 | ... => ... | Patterns.cs:69:13:69:33 | After ... => ... [no-match] |
-| Patterns.cs:70:18:70:27 | "possible" | Patterns.cs:70:13:70:13 | 2 |
+| Patterns.cs:70:13:70:27 | After ... => ... [match] | Patterns.cs:70:13:70:13 | After 2 [match] |
+| Patterns.cs:70:13:70:27 | After ... => ... [no-match] | Patterns.cs:70:13:70:13 | After 2 [no-match] |
+| Patterns.cs:70:18:70:27 | "possible" | Patterns.cs:70:13:70:27 | After ... => ... [match] |
| Patterns.cs:74:26:74:27 | Exit | Patterns.cs:74:26:74:27 | Normal Exit |
| Patterns.cs:74:26:74:27 | Normal Exit | Patterns.cs:76:9:82:10 | return ...; |
| Patterns.cs:74:33:74:33 | i | Patterns.cs:74:26:74:27 | Entry |
@@ -13058,24 +13169,29 @@ postDominance
| Patterns.cs:76:16:82:9 | After ... switch { ... } | Patterns.cs:80:18:80:20 | "1" |
| Patterns.cs:76:16:82:9 | After ... switch { ... } | Patterns.cs:81:18:81:20 | "0" |
| Patterns.cs:78:13:78:15 | > ... | Patterns.cs:78:15:78:15 | 1 |
-| Patterns.cs:78:13:78:15 | After > ... | Patterns.cs:78:13:78:15 | > ... |
-| Patterns.cs:78:13:78:15 | Before > ... | Patterns.cs:78:13:78:24 | After ... => ... [match] |
+| Patterns.cs:78:13:78:15 | Before > ... | Patterns.cs:78:13:78:24 | ... => ... |
| Patterns.cs:78:13:78:24 | ... => ... | Patterns.cs:76:16:76:16 | access to parameter i |
+| Patterns.cs:78:13:78:24 | After ... => ... [match] | Patterns.cs:78:13:78:15 | After > ... [match] |
+| Patterns.cs:78:13:78:24 | After ... => ... [no-match] | Patterns.cs:78:13:78:15 | After > ... [no-match] |
| Patterns.cs:78:15:78:15 | 1 | Patterns.cs:78:13:78:15 | Before > ... |
-| Patterns.cs:78:20:78:24 | "> 1" | Patterns.cs:78:13:78:15 | After > ... |
+| Patterns.cs:78:20:78:24 | "> 1" | Patterns.cs:78:13:78:24 | After ... => ... [match] |
| Patterns.cs:79:13:79:15 | < ... | Patterns.cs:79:15:79:15 | 0 |
-| Patterns.cs:79:13:79:15 | After < ... | Patterns.cs:79:13:79:15 | < ... |
-| Patterns.cs:79:13:79:15 | Before < ... | Patterns.cs:79:13:79:24 | After ... => ... [match] |
+| Patterns.cs:79:13:79:15 | Before < ... | Patterns.cs:79:13:79:24 | ... => ... |
| Patterns.cs:79:13:79:24 | ... => ... | Patterns.cs:78:13:78:24 | After ... => ... [no-match] |
+| Patterns.cs:79:13:79:24 | After ... => ... [match] | Patterns.cs:79:13:79:15 | After < ... [match] |
+| Patterns.cs:79:13:79:24 | After ... => ... [no-match] | Patterns.cs:79:13:79:15 | After < ... [no-match] |
| Patterns.cs:79:15:79:15 | 0 | Patterns.cs:79:13:79:15 | Before < ... |
-| Patterns.cs:79:20:79:24 | "< 0" | Patterns.cs:79:13:79:15 | After < ... |
-| Patterns.cs:80:13:80:13 | 1 | Patterns.cs:80:13:80:20 | After ... => ... [match] |
+| Patterns.cs:79:20:79:24 | "< 0" | Patterns.cs:79:13:79:24 | After ... => ... [match] |
+| Patterns.cs:80:13:80:13 | 1 | Patterns.cs:80:13:80:20 | ... => ... |
| Patterns.cs:80:13:80:20 | ... => ... | Patterns.cs:79:13:79:24 | After ... => ... [no-match] |
-| Patterns.cs:80:18:80:20 | "1" | Patterns.cs:80:13:80:13 | 1 |
-| Patterns.cs:81:13:81:13 | _ | Patterns.cs:81:13:81:20 | After ... => ... [match] |
+| Patterns.cs:80:13:80:20 | After ... => ... [match] | Patterns.cs:80:13:80:13 | After 1 [match] |
+| Patterns.cs:80:13:80:20 | After ... => ... [no-match] | Patterns.cs:80:13:80:13 | After 1 [no-match] |
+| Patterns.cs:80:18:80:20 | "1" | Patterns.cs:80:13:80:20 | After ... => ... [match] |
+| Patterns.cs:81:13:81:13 | After _ [match] | Patterns.cs:81:13:81:13 | _ |
+| Patterns.cs:81:13:81:13 | _ | Patterns.cs:81:13:81:20 | ... => ... |
| Patterns.cs:81:13:81:20 | ... => ... | Patterns.cs:80:13:80:20 | After ... => ... [no-match] |
-| Patterns.cs:81:13:81:20 | After ... => ... [match] | Patterns.cs:81:13:81:20 | ... => ... |
-| Patterns.cs:81:18:81:20 | "0" | Patterns.cs:81:13:81:13 | _ |
+| Patterns.cs:81:13:81:20 | After ... => ... [match] | Patterns.cs:81:13:81:13 | After _ [match] |
+| Patterns.cs:81:18:81:20 | "0" | Patterns.cs:81:13:81:20 | After ... => ... [match] |
| Patterns.cs:85:26:85:27 | Exit | Patterns.cs:85:26:85:27 | Normal Exit |
| Patterns.cs:85:26:85:27 | Normal Exit | Patterns.cs:85:39:85:69 | After ... ? ... : ... |
| Patterns.cs:85:33:85:33 | i | Patterns.cs:85:26:85:27 | Entry |
@@ -13403,26 +13519,33 @@ postDominance
| Switch.cs:11:5:33:5 | {...} | Switch.cs:10:20:10:20 | o |
| Switch.cs:12:9:32:9 | switch (...) {...} | Switch.cs:11:5:33:5 | {...} |
| Switch.cs:12:17:12:17 | access to parameter o | Switch.cs:12:9:32:9 | switch (...) {...} |
+| Switch.cs:14:13:14:21 | After case ...: [match] | Switch.cs:14:18:14:20 | After "a" [match] |
+| Switch.cs:14:13:14:21 | After case ...: [no-match] | Switch.cs:14:18:14:20 | After "a" [no-match] |
| Switch.cs:14:13:14:21 | case ...: | Switch.cs:12:17:12:17 | access to parameter o |
-| Switch.cs:14:18:14:20 | "a" | Switch.cs:14:13:14:21 | After case ...: [match] |
-| Switch.cs:15:17:15:23 | Before return ...; | Switch.cs:14:18:14:20 | "a" |
+| Switch.cs:14:18:14:20 | "a" | Switch.cs:14:13:14:21 | case ...: |
+| Switch.cs:15:17:15:23 | Before return ...; | Switch.cs:14:13:14:21 | After case ...: [match] |
| Switch.cs:15:17:15:23 | return ...; | Switch.cs:15:17:15:23 | Before return ...; |
-| Switch.cs:16:13:16:19 | After case ...: [no-match] | Switch.cs:16:13:16:19 | case ...: |
+| Switch.cs:16:13:16:19 | After case ...: [no-match] | Switch.cs:16:18:16:18 | After 0 [no-match] |
| Switch.cs:16:13:16:19 | case ...: | Switch.cs:14:13:14:21 | After case ...: [no-match] |
-| Switch.cs:16:18:16:18 | 0 | Switch.cs:16:13:16:19 | After case ...: [match] |
-| Switch.cs:17:17:17:38 | Before throw ...; | Switch.cs:16:18:16:18 | 0 |
+| Switch.cs:16:18:16:18 | 0 | Switch.cs:16:13:16:19 | case ...: |
+| Switch.cs:16:18:16:18 | After 0 [no-match] | Switch.cs:16:18:16:18 | 0 |
+| Switch.cs:17:17:17:38 | Before throw ...; | Switch.cs:16:13:16:19 | After case ...: [match] |
| Switch.cs:17:17:17:38 | throw ...; | Switch.cs:17:23:17:37 | After object creation of type Exception |
| Switch.cs:17:23:17:37 | After object creation of type Exception | Switch.cs:17:23:17:37 | object creation of type Exception |
| Switch.cs:17:23:17:37 | Before object creation of type Exception | Switch.cs:17:17:17:38 | Before throw ...; |
| Switch.cs:17:23:17:37 | object creation of type Exception | Switch.cs:17:23:17:37 | Before object creation of type Exception |
+| Switch.cs:18:13:18:22 | After case ...: [match] | Switch.cs:18:18:18:21 | After null [match] |
+| Switch.cs:18:13:18:22 | After case ...: [no-match] | Switch.cs:18:18:18:21 | After null [no-match] |
| Switch.cs:18:13:18:22 | case ...: | Switch.cs:16:13:16:19 | After case ...: [no-match] |
-| Switch.cs:18:18:18:21 | null | Switch.cs:18:13:18:22 | After case ...: [match] |
-| Switch.cs:19:17:19:29 | Before goto default; | Switch.cs:18:18:18:21 | null |
+| Switch.cs:18:18:18:21 | null | Switch.cs:18:13:18:22 | case ...: |
+| Switch.cs:19:17:19:29 | Before goto default; | Switch.cs:18:13:18:22 | After case ...: [match] |
| Switch.cs:19:17:19:29 | goto default; | Switch.cs:19:17:19:29 | Before goto default; |
+| Switch.cs:20:13:20:23 | After case ...: [match] | Switch.cs:20:18:20:22 | After Int32 i [match] |
+| Switch.cs:20:13:20:23 | After case ...: [no-match] | Switch.cs:20:18:20:22 | After Int32 i [no-match] |
| Switch.cs:20:13:20:23 | case ...: | Switch.cs:18:13:18:22 | After case ...: [no-match] |
-| Switch.cs:20:18:20:22 | Int32 i | Switch.cs:20:13:20:23 | After case ...: [match] |
+| Switch.cs:20:18:20:22 | Int32 i | Switch.cs:20:13:20:23 | case ...: |
| Switch.cs:21:17:22:27 | After if (...) ... | Switch.cs:21:21:21:29 | After ... == ... [false] |
-| Switch.cs:21:17:22:27 | if (...) ... | Switch.cs:20:18:20:22 | Int32 i |
+| Switch.cs:21:17:22:27 | if (...) ... | Switch.cs:20:13:20:23 | After case ...: [match] |
| Switch.cs:21:21:21:21 | access to parameter o | Switch.cs:21:21:21:29 | Before ... == ... |
| Switch.cs:21:21:21:29 | ... == ... | Switch.cs:21:26:21:29 | null |
| Switch.cs:21:21:21:29 | After ... == ... [true] | Switch.cs:21:21:21:29 | ... == ... |
@@ -13433,15 +13556,17 @@ postDominance
| Switch.cs:23:17:23:28 | Before goto case ...; | Switch.cs:21:17:22:27 | After if (...) ... |
| Switch.cs:23:17:23:28 | goto case ...; | Switch.cs:23:27:23:27 | 0 |
| Switch.cs:23:27:23:27 | 0 | Switch.cs:23:17:23:28 | Before goto case ...; |
+| Switch.cs:24:13:24:56 | After case ...: [match] | Switch.cs:24:18:24:25 | After String s [match] |
+| Switch.cs:24:13:24:56 | After case ...: [no-match] | Switch.cs:24:18:24:25 | After String s [no-match] |
| Switch.cs:24:13:24:56 | case ...: | Switch.cs:20:13:20:23 | After case ...: [no-match] |
-| Switch.cs:24:18:24:25 | String s | Switch.cs:24:13:24:56 | After case ...: [match] |
+| Switch.cs:24:18:24:25 | String s | Switch.cs:24:13:24:56 | case ...: |
| Switch.cs:24:32:24:32 | access to local variable s | Switch.cs:24:32:24:39 | Before access to property Length |
| Switch.cs:24:32:24:39 | After access to property Length | Switch.cs:24:32:24:39 | access to property Length |
| Switch.cs:24:32:24:39 | Before access to property Length | Switch.cs:24:32:24:43 | Before ... > ... |
| Switch.cs:24:32:24:39 | access to property Length | Switch.cs:24:32:24:32 | access to local variable s |
| Switch.cs:24:32:24:43 | ... > ... | Switch.cs:24:43:24:43 | 0 |
| Switch.cs:24:32:24:43 | Before ... > ... | Switch.cs:24:32:24:55 | ... && ... |
-| Switch.cs:24:32:24:55 | ... && ... | Switch.cs:24:18:24:25 | String s |
+| Switch.cs:24:32:24:55 | ... && ... | Switch.cs:24:13:24:56 | After case ...: [match] |
| Switch.cs:24:32:24:55 | After ... && ... [false] | Switch.cs:24:32:24:43 | After ... > ... [false] |
| Switch.cs:24:32:24:55 | After ... && ... [false] | Switch.cs:24:48:24:55 | After ... != ... [false] |
| Switch.cs:24:32:24:55 | After ... && ... [true] | Switch.cs:24:48:24:55 | After ... != ... [true] |
@@ -13458,11 +13583,13 @@ postDominance
| Switch.cs:25:35:25:35 | access to local variable s | Switch.cs:25:17:25:36 | Before call to method WriteLine |
| Switch.cs:26:17:26:23 | Before return ...; | Switch.cs:25:17:25:37 | After ...; |
| Switch.cs:26:17:26:23 | return ...; | Switch.cs:26:17:26:23 | Before return ...; |
-| Switch.cs:27:13:27:39 | After case ...: [no-match] | Switch.cs:27:13:27:39 | case ...: |
+| Switch.cs:27:13:27:39 | After case ...: [match] | Switch.cs:27:18:27:25 | After Double d [match] |
+| Switch.cs:27:13:27:39 | After case ...: [no-match] | Switch.cs:27:18:27:25 | After Double d [no-match] |
| Switch.cs:27:13:27:39 | case ...: | Switch.cs:24:13:24:56 | After case ...: [no-match] |
| Switch.cs:27:13:27:39 | case ...: | Switch.cs:24:32:24:55 | After ... && ... [false] |
-| Switch.cs:27:18:27:25 | Double d | Switch.cs:27:13:27:39 | After case ...: [match] |
-| Switch.cs:27:32:27:38 | Before call to method Throw | Switch.cs:27:18:27:25 | Double d |
+| Switch.cs:27:18:27:25 | After Double d [no-match] | Switch.cs:27:18:27:25 | Double d |
+| Switch.cs:27:18:27:25 | Double d | Switch.cs:27:13:27:39 | case ...: |
+| Switch.cs:27:32:27:38 | Before call to method Throw | Switch.cs:27:13:27:39 | After case ...: [match] |
| Switch.cs:27:32:27:38 | call to method Throw | Switch.cs:27:32:27:38 | Before call to method Throw |
| Switch.cs:28:13:28:17 | Label: | Switch.cs:31:17:31:27 | goto ...; |
| Switch.cs:29:17:29:23 | Before return ...; | Switch.cs:28:13:28:17 | Label: |
@@ -13489,15 +13616,19 @@ postDominance
| Switch.cs:46:9:52:9 | After switch (...) {...} | Switch.cs:51:17:51:22 | break; |
| Switch.cs:46:9:52:9 | switch (...) {...} | Switch.cs:45:5:53:5 | {...} |
| Switch.cs:46:17:46:17 | access to parameter o | Switch.cs:46:9:52:9 | switch (...) {...} |
+| Switch.cs:48:13:48:23 | After case ...: [match] | Switch.cs:48:18:48:20 | After access to type Int32 [match] |
+| Switch.cs:48:13:48:23 | After case ...: [no-match] | Switch.cs:48:18:48:20 | After access to type Int32 [no-match] |
| Switch.cs:48:13:48:23 | case ...: | Switch.cs:46:17:46:17 | access to parameter o |
-| Switch.cs:48:18:48:20 | access to type Int32 | Switch.cs:48:13:48:23 | After case ...: [match] |
-| Switch.cs:49:17:49:22 | Before break; | Switch.cs:48:18:48:20 | access to type Int32 |
+| Switch.cs:48:18:48:20 | access to type Int32 | Switch.cs:48:13:48:23 | case ...: |
+| Switch.cs:49:17:49:22 | Before break; | Switch.cs:48:13:48:23 | After case ...: [match] |
| Switch.cs:49:17:49:22 | break; | Switch.cs:49:17:49:22 | Before break; |
+| Switch.cs:50:13:50:39 | After case ...: [match] | Switch.cs:50:18:50:21 | After access to type Boolean [match] |
+| Switch.cs:50:13:50:39 | After case ...: [no-match] | Switch.cs:50:18:50:21 | After access to type Boolean [no-match] |
| Switch.cs:50:13:50:39 | case ...: | Switch.cs:48:13:48:23 | After case ...: [no-match] |
-| Switch.cs:50:18:50:21 | access to type Boolean | Switch.cs:50:13:50:39 | After case ...: [match] |
+| Switch.cs:50:18:50:21 | access to type Boolean | Switch.cs:50:13:50:39 | case ...: |
| Switch.cs:50:30:50:30 | access to parameter o | Switch.cs:50:30:50:38 | Before ... != ... |
| Switch.cs:50:30:50:38 | ... != ... | Switch.cs:50:35:50:38 | null |
-| Switch.cs:50:30:50:38 | Before ... != ... | Switch.cs:50:18:50:21 | access to type Boolean |
+| Switch.cs:50:30:50:38 | Before ... != ... | Switch.cs:50:13:50:39 | After case ...: [match] |
| Switch.cs:50:35:50:38 | null | Switch.cs:50:30:50:30 | access to parameter o |
| Switch.cs:51:17:51:22 | Before break; | Switch.cs:50:30:50:38 | After ... != ... [true] |
| Switch.cs:51:17:51:22 | break; | Switch.cs:51:17:51:22 | Before break; |
@@ -13514,13 +13645,17 @@ postDominance
| Switch.cs:57:17:57:21 | After ... + ... | Switch.cs:57:17:57:21 | ... + ... |
| Switch.cs:57:17:57:21 | Before ... + ... | Switch.cs:57:9:63:9 | switch (...) {...} |
| Switch.cs:57:21:57:21 | 2 | Switch.cs:57:17:57:17 | 1 |
+| Switch.cs:59:13:59:19 | After case ...: [match] | Switch.cs:59:18:59:18 | After 2 [match] |
+| Switch.cs:59:13:59:19 | After case ...: [no-match] | Switch.cs:59:18:59:18 | After 2 [no-match] |
| Switch.cs:59:13:59:19 | case ...: | Switch.cs:57:17:57:21 | After ... + ... |
-| Switch.cs:59:18:59:18 | 2 | Switch.cs:59:13:59:19 | After case ...: [match] |
-| Switch.cs:60:17:60:22 | Before break; | Switch.cs:59:18:59:18 | 2 |
+| Switch.cs:59:18:59:18 | 2 | Switch.cs:59:13:59:19 | case ...: |
+| Switch.cs:60:17:60:22 | Before break; | Switch.cs:59:13:59:19 | After case ...: [match] |
| Switch.cs:60:17:60:22 | break; | Switch.cs:60:17:60:22 | Before break; |
+| Switch.cs:61:13:61:19 | After case ...: [match] | Switch.cs:61:18:61:18 | After 3 [match] |
+| Switch.cs:61:13:61:19 | After case ...: [no-match] | Switch.cs:61:18:61:18 | After 3 [no-match] |
| Switch.cs:61:13:61:19 | case ...: | Switch.cs:59:13:59:19 | After case ...: [no-match] |
-| Switch.cs:61:18:61:18 | 3 | Switch.cs:61:13:61:19 | After case ...: [match] |
-| Switch.cs:62:17:62:22 | Before break; | Switch.cs:61:18:61:18 | 3 |
+| Switch.cs:61:18:61:18 | 3 | Switch.cs:61:13:61:19 | case ...: |
+| Switch.cs:62:17:62:22 | Before break; | Switch.cs:61:13:61:19 | After case ...: [match] |
| Switch.cs:62:17:62:22 | break; | Switch.cs:62:17:62:22 | Before break; |
| Switch.cs:66:10:66:11 | Exit | Switch.cs:66:10:66:11 | Normal Exit |
| Switch.cs:66:10:66:11 | Normal Exit | Switch.cs:67:5:75:5 | After {...} |
@@ -13535,13 +13670,17 @@ postDominance
| Switch.cs:68:17:68:25 | After (...) ... | Switch.cs:68:17:68:25 | (...) ... |
| Switch.cs:68:17:68:25 | Before (...) ... | Switch.cs:68:9:74:9 | switch (...) {...} |
| Switch.cs:68:25:68:25 | access to parameter s | Switch.cs:68:17:68:25 | Before (...) ... |
+| Switch.cs:70:13:70:23 | After case ...: [match] | Switch.cs:70:18:70:20 | After access to type Int32 [match] |
+| Switch.cs:70:13:70:23 | After case ...: [no-match] | Switch.cs:70:18:70:20 | After access to type Int32 [no-match] |
| Switch.cs:70:13:70:23 | case ...: | Switch.cs:68:17:68:25 | After (...) ... |
-| Switch.cs:70:18:70:20 | access to type Int32 | Switch.cs:70:13:70:23 | After case ...: [match] |
-| Switch.cs:71:17:71:22 | Before break; | Switch.cs:70:18:70:20 | access to type Int32 |
+| Switch.cs:70:18:70:20 | access to type Int32 | Switch.cs:70:13:70:23 | case ...: |
+| Switch.cs:71:17:71:22 | Before break; | Switch.cs:70:13:70:23 | After case ...: [match] |
| Switch.cs:71:17:71:22 | break; | Switch.cs:71:17:71:22 | Before break; |
+| Switch.cs:72:13:72:20 | After case ...: [match] | Switch.cs:72:18:72:19 | After "" [match] |
+| Switch.cs:72:13:72:20 | After case ...: [no-match] | Switch.cs:72:18:72:19 | After "" [no-match] |
| Switch.cs:72:13:72:20 | case ...: | Switch.cs:70:13:70:23 | After case ...: [no-match] |
-| Switch.cs:72:18:72:19 | "" | Switch.cs:72:13:72:20 | After case ...: [match] |
-| Switch.cs:73:17:73:22 | Before break; | Switch.cs:72:18:72:19 | "" |
+| Switch.cs:72:18:72:19 | "" | Switch.cs:72:13:72:20 | case ...: |
+| Switch.cs:73:17:73:22 | Before break; | Switch.cs:72:13:72:20 | After case ...: [match] |
| Switch.cs:73:17:73:22 | break; | Switch.cs:73:17:73:22 | Before break; |
| Switch.cs:77:10:77:11 | Exit | Switch.cs:77:10:77:11 | Normal Exit |
| Switch.cs:77:10:77:11 | Normal Exit | Switch.cs:82:17:82:28 | return ...; |
@@ -13554,15 +13693,19 @@ postDominance
| Switch.cs:79:9:87:9 | After switch (...) {...} | Switch.cs:85:21:85:26 | break; |
| Switch.cs:79:9:87:9 | switch (...) {...} | Switch.cs:78:5:89:5 | {...} |
| Switch.cs:79:17:79:17 | access to parameter i | Switch.cs:79:9:87:9 | switch (...) {...} |
+| Switch.cs:81:13:81:19 | After case ...: [match] | Switch.cs:81:18:81:18 | After 1 [match] |
+| Switch.cs:81:13:81:19 | After case ...: [no-match] | Switch.cs:81:18:81:18 | After 1 [no-match] |
| Switch.cs:81:13:81:19 | case ...: | Switch.cs:79:17:79:17 | access to parameter i |
-| Switch.cs:81:18:81:18 | 1 | Switch.cs:81:13:81:19 | After case ...: [match] |
-| Switch.cs:82:17:82:28 | Before return ...; | Switch.cs:81:18:81:18 | 1 |
+| Switch.cs:81:18:81:18 | 1 | Switch.cs:81:13:81:19 | case ...: |
+| Switch.cs:82:17:82:28 | Before return ...; | Switch.cs:81:13:81:19 | After case ...: [match] |
| Switch.cs:82:17:82:28 | return ...; | Switch.cs:82:24:82:27 | true |
| Switch.cs:82:24:82:27 | true | Switch.cs:82:17:82:28 | Before return ...; |
+| Switch.cs:83:13:83:19 | After case ...: [match] | Switch.cs:83:18:83:18 | After 2 [match] |
+| Switch.cs:83:13:83:19 | After case ...: [no-match] | Switch.cs:83:18:83:18 | After 2 [no-match] |
| Switch.cs:83:13:83:19 | case ...: | Switch.cs:81:13:81:19 | After case ...: [no-match] |
-| Switch.cs:83:18:83:18 | 2 | Switch.cs:83:13:83:19 | After case ...: [match] |
+| Switch.cs:83:18:83:18 | 2 | Switch.cs:83:13:83:19 | case ...: |
| Switch.cs:84:17:85:26 | After if (...) ... | Switch.cs:84:21:84:25 | After ... > ... [false] |
-| Switch.cs:84:17:85:26 | if (...) ... | Switch.cs:83:18:83:18 | 2 |
+| Switch.cs:84:17:85:26 | if (...) ... | Switch.cs:83:13:83:19 | After case ...: [match] |
| Switch.cs:84:21:84:21 | access to parameter j | Switch.cs:84:21:84:25 | Before ... > ... |
| Switch.cs:84:21:84:25 | ... > ... | Switch.cs:84:25:84:25 | 2 |
| Switch.cs:84:21:84:25 | Before ... > ... | Switch.cs:84:17:85:26 | if (...) ... |
@@ -13583,9 +13726,11 @@ postDominance
| Switch.cs:93:9:97:9 | After switch (...) {...} | Switch.cs:95:13:95:23 | After case ...: [no-match] |
| Switch.cs:93:9:97:9 | switch (...) {...} | Switch.cs:92:5:99:5 | {...} |
| Switch.cs:93:17:93:17 | access to parameter o | Switch.cs:93:9:97:9 | switch (...) {...} |
+| Switch.cs:95:13:95:23 | After case ...: [match] | Switch.cs:95:18:95:20 | After access to type Int32 [match] |
+| Switch.cs:95:13:95:23 | After case ...: [no-match] | Switch.cs:95:18:95:20 | After access to type Int32 [no-match] |
| Switch.cs:95:13:95:23 | case ...: | Switch.cs:93:17:93:17 | access to parameter o |
-| Switch.cs:95:18:95:20 | access to type Int32 | Switch.cs:95:13:95:23 | After case ...: [match] |
-| Switch.cs:96:17:96:28 | Before return ...; | Switch.cs:95:18:95:20 | access to type Int32 |
+| Switch.cs:95:18:95:20 | access to type Int32 | Switch.cs:95:13:95:23 | case ...: |
+| Switch.cs:96:17:96:28 | Before return ...; | Switch.cs:95:13:95:23 | After case ...: [match] |
| Switch.cs:96:17:96:28 | return ...; | Switch.cs:96:24:96:27 | true |
| Switch.cs:96:24:96:27 | true | Switch.cs:96:17:96:28 | Before return ...; |
| Switch.cs:98:9:98:21 | Before return ...; | Switch.cs:93:9:97:9 | After switch (...) {...} |
@@ -13604,14 +13749,18 @@ postDominance
| Switch.cs:103:17:103:25 | After access to property Length | Switch.cs:103:17:103:25 | access to property Length |
| Switch.cs:103:17:103:25 | Before access to property Length | Switch.cs:103:9:107:9 | switch (...) {...} |
| Switch.cs:103:17:103:25 | access to property Length | Switch.cs:103:17:103:17 | After access to parameter s [non-null] |
+| Switch.cs:105:13:105:19 | After case ...: [match] | Switch.cs:105:18:105:18 | After 0 [match] |
+| Switch.cs:105:13:105:19 | After case ...: [no-match] | Switch.cs:105:18:105:18 | After 0 [no-match] |
| Switch.cs:105:13:105:19 | case ...: | Switch.cs:103:17:103:25 | After access to property Length |
-| Switch.cs:105:18:105:18 | 0 | Switch.cs:105:13:105:19 | After case ...: [match] |
-| Switch.cs:105:21:105:29 | Before return ...; | Switch.cs:105:18:105:18 | 0 |
+| Switch.cs:105:18:105:18 | 0 | Switch.cs:105:13:105:19 | case ...: |
+| Switch.cs:105:21:105:29 | Before return ...; | Switch.cs:105:13:105:19 | After case ...: [match] |
| Switch.cs:105:21:105:29 | return ...; | Switch.cs:105:28:105:28 | 0 |
| Switch.cs:105:28:105:28 | 0 | Switch.cs:105:21:105:29 | Before return ...; |
+| Switch.cs:106:13:106:19 | After case ...: [match] | Switch.cs:106:18:106:18 | After 1 [match] |
+| Switch.cs:106:13:106:19 | After case ...: [no-match] | Switch.cs:106:18:106:18 | After 1 [no-match] |
| Switch.cs:106:13:106:19 | case ...: | Switch.cs:105:13:105:19 | After case ...: [no-match] |
-| Switch.cs:106:18:106:18 | 1 | Switch.cs:106:13:106:19 | After case ...: [match] |
-| Switch.cs:106:21:106:29 | Before return ...; | Switch.cs:106:18:106:18 | 1 |
+| Switch.cs:106:18:106:18 | 1 | Switch.cs:106:13:106:19 | case ...: |
+| Switch.cs:106:21:106:29 | Before return ...; | Switch.cs:106:13:106:19 | After case ...: [match] |
| Switch.cs:106:21:106:29 | return ...; | Switch.cs:106:28:106:28 | 1 |
| Switch.cs:106:28:106:28 | 1 | Switch.cs:106:21:106:29 | Before return ...; |
| Switch.cs:108:9:108:18 | Before return ...; | Switch.cs:103:9:107:9 | After switch (...) {...} |
@@ -13640,21 +13789,25 @@ postDominance
| Switch.cs:115:17:115:24 | After access to property Length | Switch.cs:115:17:115:24 | access to property Length |
| Switch.cs:115:17:115:24 | Before access to property Length | Switch.cs:115:9:119:9 | switch (...) {...} |
| Switch.cs:115:17:115:24 | access to property Length | Switch.cs:115:17:115:17 | access to parameter s |
+| Switch.cs:117:13:117:35 | After case ...: [match] | Switch.cs:117:18:117:18 | After 3 [match] |
+| Switch.cs:117:13:117:35 | After case ...: [no-match] | Switch.cs:117:18:117:18 | After 3 [no-match] |
| Switch.cs:117:13:117:35 | case ...: | Switch.cs:115:17:115:24 | After access to property Length |
-| Switch.cs:117:18:117:18 | 3 | Switch.cs:117:13:117:35 | After case ...: [match] |
+| Switch.cs:117:18:117:18 | 3 | Switch.cs:117:13:117:35 | case ...: |
| Switch.cs:117:25:117:25 | access to parameter s | Switch.cs:117:25:117:34 | Before ... == ... |
| Switch.cs:117:25:117:34 | ... == ... | Switch.cs:117:30:117:34 | "foo" |
-| Switch.cs:117:25:117:34 | Before ... == ... | Switch.cs:117:18:117:18 | 3 |
+| Switch.cs:117:25:117:34 | Before ... == ... | Switch.cs:117:13:117:35 | After case ...: [match] |
| Switch.cs:117:30:117:34 | "foo" | Switch.cs:117:25:117:25 | access to parameter s |
| Switch.cs:117:37:117:45 | Before return ...; | Switch.cs:117:25:117:34 | After ... == ... [true] |
| Switch.cs:117:37:117:45 | return ...; | Switch.cs:117:44:117:44 | 1 |
| Switch.cs:117:44:117:44 | 1 | Switch.cs:117:37:117:45 | Before return ...; |
+| Switch.cs:118:13:118:34 | After case ...: [match] | Switch.cs:118:18:118:18 | After 2 [match] |
+| Switch.cs:118:13:118:34 | After case ...: [no-match] | Switch.cs:118:18:118:18 | After 2 [no-match] |
| Switch.cs:118:13:118:34 | case ...: | Switch.cs:117:13:117:35 | After case ...: [no-match] |
| Switch.cs:118:13:118:34 | case ...: | Switch.cs:117:25:117:34 | After ... == ... [false] |
-| Switch.cs:118:18:118:18 | 2 | Switch.cs:118:13:118:34 | After case ...: [match] |
+| Switch.cs:118:18:118:18 | 2 | Switch.cs:118:13:118:34 | case ...: |
| Switch.cs:118:25:118:25 | access to parameter s | Switch.cs:118:25:118:33 | Before ... == ... |
| Switch.cs:118:25:118:33 | ... == ... | Switch.cs:118:30:118:33 | "fu" |
-| Switch.cs:118:25:118:33 | Before ... == ... | Switch.cs:118:18:118:18 | 2 |
+| Switch.cs:118:25:118:33 | Before ... == ... | Switch.cs:118:13:118:34 | After case ...: [match] |
| Switch.cs:118:30:118:33 | "fu" | Switch.cs:118:25:118:25 | access to parameter s |
| Switch.cs:118:36:118:44 | Before return ...; | Switch.cs:118:25:118:33 | After ... == ... [true] |
| Switch.cs:118:36:118:44 | return ...; | Switch.cs:118:43:118:43 | 2 |
@@ -13675,13 +13828,16 @@ postDominance
| Switch.cs:125:9:126:19 | if (...) ... | Switch.cs:124:5:127:5 | {...} |
| Switch.cs:125:13:125:13 | access to parameter o | Switch.cs:125:13:125:48 | ... switch { ... } |
| Switch.cs:125:13:125:48 | ... switch { ... } | Switch.cs:125:9:126:19 | if (...) ... |
-| Switch.cs:125:24:125:29 | Boolean b | Switch.cs:125:24:125:34 | After ... => ... [match] |
+| Switch.cs:125:24:125:29 | Boolean b | Switch.cs:125:24:125:34 | ... => ... |
| Switch.cs:125:24:125:34 | ... => ... | Switch.cs:125:13:125:13 | access to parameter o |
-| Switch.cs:125:34:125:34 | access to local variable b | Switch.cs:125:24:125:29 | Boolean b |
-| Switch.cs:125:37:125:37 | _ | Switch.cs:125:37:125:46 | After ... => ... [match] |
+| Switch.cs:125:24:125:34 | After ... => ... [match] | Switch.cs:125:24:125:29 | After Boolean b [match] |
+| Switch.cs:125:24:125:34 | After ... => ... [no-match] | Switch.cs:125:24:125:29 | After Boolean b [no-match] |
+| Switch.cs:125:34:125:34 | access to local variable b | Switch.cs:125:24:125:34 | After ... => ... [match] |
+| Switch.cs:125:37:125:37 | After _ [match] | Switch.cs:125:37:125:37 | _ |
+| Switch.cs:125:37:125:37 | _ | Switch.cs:125:37:125:46 | ... => ... |
| Switch.cs:125:37:125:46 | ... => ... | Switch.cs:125:24:125:34 | After ... => ... [no-match] |
-| Switch.cs:125:37:125:46 | After ... => ... [match] | Switch.cs:125:37:125:46 | ... => ... |
-| Switch.cs:125:42:125:46 | false | Switch.cs:125:37:125:37 | _ |
+| Switch.cs:125:37:125:46 | After ... => ... [match] | Switch.cs:125:37:125:37 | After _ [match] |
+| Switch.cs:125:42:125:46 | false | Switch.cs:125:37:125:46 | After ... => ... [match] |
| Switch.cs:126:13:126:19 | Before return ...; | Switch.cs:125:13:125:48 | After ... switch { ... } [true] |
| Switch.cs:126:13:126:19 | return ...; | Switch.cs:126:13:126:19 | Before return ...; |
| Switch.cs:129:12:129:14 | Exit | Switch.cs:129:12:129:14 | Normal Exit |
@@ -13696,13 +13852,16 @@ postDominance
| Switch.cs:131:16:131:66 | call to method ToString | Switch.cs:131:17:131:53 | After ... switch { ... } [non-null] |
| Switch.cs:131:17:131:17 | access to parameter o | Switch.cs:131:17:131:53 | ... switch { ... } |
| Switch.cs:131:17:131:53 | ... switch { ... } | Switch.cs:131:16:131:66 | Before call to method ToString |
-| Switch.cs:131:28:131:35 | String s | Switch.cs:131:28:131:40 | After ... => ... [match] |
+| Switch.cs:131:28:131:35 | String s | Switch.cs:131:28:131:40 | ... => ... |
| Switch.cs:131:28:131:40 | ... => ... | Switch.cs:131:17:131:17 | access to parameter o |
-| Switch.cs:131:40:131:40 | access to local variable s | Switch.cs:131:28:131:35 | String s |
-| Switch.cs:131:43:131:43 | _ | Switch.cs:131:43:131:51 | After ... => ... [match] |
+| Switch.cs:131:28:131:40 | After ... => ... [match] | Switch.cs:131:28:131:35 | After String s [match] |
+| Switch.cs:131:28:131:40 | After ... => ... [no-match] | Switch.cs:131:28:131:35 | After String s [no-match] |
+| Switch.cs:131:40:131:40 | access to local variable s | Switch.cs:131:28:131:40 | After ... => ... [match] |
+| Switch.cs:131:43:131:43 | After _ [match] | Switch.cs:131:43:131:43 | _ |
+| Switch.cs:131:43:131:43 | _ | Switch.cs:131:43:131:51 | ... => ... |
| Switch.cs:131:43:131:51 | ... => ... | Switch.cs:131:28:131:40 | After ... => ... [no-match] |
-| Switch.cs:131:43:131:51 | After ... => ... [match] | Switch.cs:131:43:131:51 | ... => ... |
-| Switch.cs:131:48:131:51 | null | Switch.cs:131:43:131:43 | _ |
+| Switch.cs:131:43:131:51 | After ... => ... [match] | Switch.cs:131:43:131:43 | After _ [match] |
+| Switch.cs:131:48:131:51 | null | Switch.cs:131:43:131:51 | After ... => ... [match] |
| Switch.cs:134:9:134:11 | Exit | Switch.cs:134:9:134:11 | Normal Exit |
| Switch.cs:134:9:134:11 | Normal Exit | Switch.cs:138:22:138:31 | return ...; |
| Switch.cs:134:9:134:11 | Normal Exit | Switch.cs:139:21:139:29 | return ...; |
@@ -13719,14 +13878,18 @@ postDominance
| Switch.cs:138:29:138:30 | After -... | Switch.cs:138:29:138:30 | -... |
| Switch.cs:138:29:138:30 | Before -... | Switch.cs:138:22:138:31 | Before return ...; |
| Switch.cs:138:30:138:30 | 1 | Switch.cs:138:29:138:30 | Before -... |
+| Switch.cs:139:13:139:19 | After case ...: [match] | Switch.cs:139:18:139:18 | After 1 [match] |
+| Switch.cs:139:13:139:19 | After case ...: [no-match] | Switch.cs:139:18:139:18 | After 1 [no-match] |
| Switch.cs:139:13:139:19 | case ...: | Switch.cs:136:17:136:17 | access to parameter i |
-| Switch.cs:139:18:139:18 | 1 | Switch.cs:139:13:139:19 | After case ...: [match] |
-| Switch.cs:139:21:139:29 | Before return ...; | Switch.cs:139:18:139:18 | 1 |
+| Switch.cs:139:18:139:18 | 1 | Switch.cs:139:13:139:19 | case ...: |
+| Switch.cs:139:21:139:29 | Before return ...; | Switch.cs:139:13:139:19 | After case ...: [match] |
| Switch.cs:139:21:139:29 | return ...; | Switch.cs:139:28:139:28 | 1 |
| Switch.cs:139:28:139:28 | 1 | Switch.cs:139:21:139:29 | Before return ...; |
+| Switch.cs:140:13:140:19 | After case ...: [match] | Switch.cs:140:18:140:18 | After 2 [match] |
+| Switch.cs:140:13:140:19 | After case ...: [no-match] | Switch.cs:140:18:140:18 | After 2 [no-match] |
| Switch.cs:140:13:140:19 | case ...: | Switch.cs:139:13:139:19 | After case ...: [no-match] |
-| Switch.cs:140:18:140:18 | 2 | Switch.cs:140:13:140:19 | After case ...: [match] |
-| Switch.cs:140:21:140:29 | Before return ...; | Switch.cs:140:18:140:18 | 2 |
+| Switch.cs:140:18:140:18 | 2 | Switch.cs:140:13:140:19 | case ...: |
+| Switch.cs:140:21:140:29 | Before return ...; | Switch.cs:140:13:140:19 | After case ...: [match] |
| Switch.cs:140:21:140:29 | return ...; | Switch.cs:140:28:140:28 | 2 |
| Switch.cs:140:28:140:28 | 2 | Switch.cs:140:21:140:29 | Before return ...; |
| Switch.cs:144:9:144:11 | Exit | Switch.cs:144:9:144:11 | Normal Exit |
@@ -13737,9 +13900,11 @@ postDominance
| Switch.cs:145:5:152:5 | {...} | Switch.cs:144:17:144:17 | i |
| Switch.cs:146:9:151:9 | switch (...) {...} | Switch.cs:145:5:152:5 | {...} |
| Switch.cs:146:17:146:17 | access to parameter i | Switch.cs:146:9:151:9 | switch (...) {...} |
+| Switch.cs:148:13:148:19 | After case ...: [match] | Switch.cs:148:18:148:18 | After 1 [match] |
+| Switch.cs:148:13:148:19 | After case ...: [no-match] | Switch.cs:148:18:148:18 | After 1 [no-match] |
| Switch.cs:148:13:148:19 | case ...: | Switch.cs:146:17:146:17 | access to parameter i |
-| Switch.cs:148:18:148:18 | 1 | Switch.cs:148:13:148:19 | After case ...: [match] |
-| Switch.cs:148:21:148:29 | Before return ...; | Switch.cs:148:18:148:18 | 1 |
+| Switch.cs:148:18:148:18 | 1 | Switch.cs:148:13:148:19 | case ...: |
+| Switch.cs:148:21:148:29 | Before return ...; | Switch.cs:148:13:148:19 | After case ...: [match] |
| Switch.cs:148:21:148:29 | return ...; | Switch.cs:148:28:148:28 | 1 |
| Switch.cs:148:28:148:28 | 1 | Switch.cs:148:21:148:29 | Before return ...; |
| Switch.cs:149:13:149:20 | After default: [match] | Switch.cs:149:13:149:20 | default: |
@@ -13750,9 +13915,11 @@ postDominance
| Switch.cs:149:29:149:30 | After -... | Switch.cs:149:29:149:30 | -... |
| Switch.cs:149:29:149:30 | Before -... | Switch.cs:149:22:149:31 | Before return ...; |
| Switch.cs:149:30:149:30 | 1 | Switch.cs:149:29:149:30 | Before -... |
+| Switch.cs:150:13:150:19 | After case ...: [match] | Switch.cs:150:18:150:18 | After 2 [match] |
+| Switch.cs:150:13:150:19 | After case ...: [no-match] | Switch.cs:150:18:150:18 | After 2 [no-match] |
| Switch.cs:150:13:150:19 | case ...: | Switch.cs:148:13:148:19 | After case ...: [no-match] |
-| Switch.cs:150:18:150:18 | 2 | Switch.cs:150:13:150:19 | After case ...: [match] |
-| Switch.cs:150:21:150:29 | Before return ...; | Switch.cs:150:18:150:18 | 2 |
+| Switch.cs:150:18:150:18 | 2 | Switch.cs:150:13:150:19 | case ...: |
+| Switch.cs:150:21:150:29 | Before return ...; | Switch.cs:150:13:150:19 | After case ...: [match] |
| Switch.cs:150:21:150:29 | return ...; | Switch.cs:150:28:150:28 | 2 |
| Switch.cs:150:28:150:28 | 2 | Switch.cs:150:21:150:29 | Before return ...; |
| Switch.cs:154:10:154:12 | Exit | Switch.cs:154:10:154:12 | Normal Exit |
@@ -13771,12 +13938,16 @@ postDominance
| Switch.cs:156:17:156:54 | After ... switch { ... } | Switch.cs:156:36:156:38 | "a" |
| Switch.cs:156:17:156:54 | After ... switch { ... } | Switch.cs:156:41:156:52 | After ... => ... [no-match] |
| Switch.cs:156:17:156:54 | After ... switch { ... } | Switch.cs:156:50:156:52 | "b" |
-| Switch.cs:156:28:156:31 | true | Switch.cs:156:28:156:38 | After ... => ... [match] |
+| Switch.cs:156:28:156:31 | true | Switch.cs:156:28:156:38 | ... => ... |
| Switch.cs:156:28:156:38 | ... => ... | Switch.cs:156:17:156:17 | access to parameter b |
-| Switch.cs:156:36:156:38 | "a" | Switch.cs:156:28:156:31 | true |
-| Switch.cs:156:41:156:45 | false | Switch.cs:156:41:156:52 | After ... => ... [match] |
+| Switch.cs:156:28:156:38 | After ... => ... [match] | Switch.cs:156:28:156:31 | After true [match] |
+| Switch.cs:156:28:156:38 | After ... => ... [no-match] | Switch.cs:156:28:156:31 | After true [no-match] |
+| Switch.cs:156:36:156:38 | "a" | Switch.cs:156:28:156:38 | After ... => ... [match] |
+| Switch.cs:156:41:156:45 | false | Switch.cs:156:41:156:52 | ... => ... |
| Switch.cs:156:41:156:52 | ... => ... | Switch.cs:156:28:156:38 | After ... => ... [no-match] |
-| Switch.cs:156:50:156:52 | "b" | Switch.cs:156:41:156:45 | false |
+| Switch.cs:156:41:156:52 | After ... => ... [match] | Switch.cs:156:41:156:45 | After false [match] |
+| Switch.cs:156:41:156:52 | After ... => ... [no-match] | Switch.cs:156:41:156:45 | After false [no-match] |
+| Switch.cs:156:50:156:52 | "b" | Switch.cs:156:41:156:52 | After ... => ... [match] |
| Switch.cs:157:9:160:49 | After if (...) ... | Switch.cs:158:13:158:49 | After ...; |
| Switch.cs:157:9:160:49 | After if (...) ... | Switch.cs:160:13:160:49 | After ...; |
| Switch.cs:157:9:160:49 | if (...) ... | Switch.cs:156:9:156:55 | After ... ...; |
@@ -13817,25 +13988,31 @@ postDominance
| Switch.cs:165:9:177:9 | After switch (...) {...} | Switch.cs:176:17:176:22 | break; |
| Switch.cs:165:9:177:9 | switch (...) {...} | Switch.cs:164:5:178:5 | {...} |
| Switch.cs:165:17:165:17 | access to parameter i | Switch.cs:165:9:177:9 | switch (...) {...} |
+| Switch.cs:167:13:167:19 | After case ...: [match] | Switch.cs:167:18:167:18 | After 1 [match] |
+| Switch.cs:167:13:167:19 | After case ...: [no-match] | Switch.cs:167:18:167:18 | After 1 [no-match] |
| Switch.cs:167:13:167:19 | case ...: | Switch.cs:165:17:165:17 | access to parameter i |
-| Switch.cs:167:18:167:18 | 1 | Switch.cs:167:13:167:19 | After case ...: [match] |
+| Switch.cs:167:18:167:18 | 1 | Switch.cs:167:13:167:19 | case ...: |
+| Switch.cs:168:13:168:19 | After case ...: [match] | Switch.cs:168:18:168:18 | After 2 [match] |
+| Switch.cs:168:13:168:19 | After case ...: [no-match] | Switch.cs:168:18:168:18 | After 2 [no-match] |
| Switch.cs:168:13:168:19 | case ...: | Switch.cs:167:13:167:19 | After case ...: [no-match] |
-| Switch.cs:168:18:168:18 | 2 | Switch.cs:168:13:168:19 | After case ...: [match] |
+| Switch.cs:168:18:168:18 | 2 | Switch.cs:168:13:168:19 | case ...: |
| Switch.cs:169:17:169:50 | After call to method WriteLine | Switch.cs:169:17:169:50 | call to method WriteLine |
| Switch.cs:169:17:169:50 | Before call to method WriteLine | Switch.cs:169:17:169:51 | ...; |
| Switch.cs:169:17:169:50 | call to method WriteLine | Switch.cs:169:42:169:49 | "1 or 2" |
-| Switch.cs:169:17:169:51 | ...; | Switch.cs:167:18:167:18 | 1 |
-| Switch.cs:169:17:169:51 | ...; | Switch.cs:168:18:168:18 | 2 |
+| Switch.cs:169:17:169:51 | ...; | Switch.cs:167:13:167:19 | After case ...: [match] |
+| Switch.cs:169:17:169:51 | ...; | Switch.cs:168:13:168:19 | After case ...: [match] |
| Switch.cs:169:17:169:51 | After ...; | Switch.cs:169:17:169:50 | After call to method WriteLine |
| Switch.cs:169:42:169:49 | "1 or 2" | Switch.cs:169:17:169:50 | Before call to method WriteLine |
| Switch.cs:170:17:170:22 | Before break; | Switch.cs:169:17:169:51 | After ...; |
| Switch.cs:170:17:170:22 | break; | Switch.cs:170:17:170:22 | Before break; |
+| Switch.cs:171:13:171:19 | After case ...: [match] | Switch.cs:171:18:171:18 | After 3 [match] |
+| Switch.cs:171:13:171:19 | After case ...: [no-match] | Switch.cs:171:18:171:18 | After 3 [no-match] |
| Switch.cs:171:13:171:19 | case ...: | Switch.cs:168:13:168:19 | After case ...: [no-match] |
-| Switch.cs:171:18:171:18 | 3 | Switch.cs:171:13:171:19 | After case ...: [match] |
+| Switch.cs:171:18:171:18 | 3 | Switch.cs:171:13:171:19 | case ...: |
| Switch.cs:172:17:172:45 | After call to method WriteLine | Switch.cs:172:17:172:45 | call to method WriteLine |
| Switch.cs:172:17:172:45 | Before call to method WriteLine | Switch.cs:172:17:172:46 | ...; |
| Switch.cs:172:17:172:45 | call to method WriteLine | Switch.cs:172:42:172:44 | "3" |
-| Switch.cs:172:17:172:46 | ...; | Switch.cs:171:18:171:18 | 3 |
+| Switch.cs:172:17:172:46 | ...; | Switch.cs:171:13:171:19 | After case ...: [match] |
| Switch.cs:172:17:172:46 | After ...; | Switch.cs:172:17:172:45 | After call to method WriteLine |
| Switch.cs:172:42:172:44 | "3" | Switch.cs:172:17:172:45 | Before call to method WriteLine |
| Switch.cs:173:17:173:22 | Before break; | Switch.cs:172:17:172:46 | After ...; |
@@ -14201,36 +14378,40 @@ postDominance
| cflow.cs:39:9:50:9 | After switch (...) {...} | cflow.cs:49:17:49:22 | break; |
| cflow.cs:39:9:50:9 | switch (...) {...} | cflow.cs:38:5:68:5 | {...} |
| cflow.cs:39:17:39:17 | access to parameter a | cflow.cs:39:9:50:9 | switch (...) {...} |
-| cflow.cs:41:13:41:19 | After case ...: [no-match] | cflow.cs:41:13:41:19 | case ...: |
+| cflow.cs:41:13:41:19 | After case ...: [no-match] | cflow.cs:41:18:41:18 | After 1 [no-match] |
| cflow.cs:41:13:41:19 | case ...: | cflow.cs:39:17:39:17 | access to parameter a |
-| cflow.cs:41:18:41:18 | 1 | cflow.cs:41:13:41:19 | After case ...: [match] |
+| cflow.cs:41:18:41:18 | 1 | cflow.cs:41:13:41:19 | case ...: |
+| cflow.cs:41:18:41:18 | After 1 [no-match] | cflow.cs:41:18:41:18 | 1 |
| cflow.cs:42:17:42:38 | After call to method WriteLine | cflow.cs:42:17:42:38 | call to method WriteLine |
| cflow.cs:42:17:42:38 | Before call to method WriteLine | cflow.cs:42:17:42:39 | ...; |
| cflow.cs:42:17:42:38 | call to method WriteLine | cflow.cs:42:35:42:37 | "1" |
-| cflow.cs:42:17:42:39 | ...; | cflow.cs:41:18:41:18 | 1 |
+| cflow.cs:42:17:42:39 | ...; | cflow.cs:41:13:41:19 | After case ...: [match] |
| cflow.cs:42:17:42:39 | After ...; | cflow.cs:42:17:42:38 | After call to method WriteLine |
| cflow.cs:42:35:42:37 | "1" | cflow.cs:42:17:42:38 | Before call to method WriteLine |
| cflow.cs:43:17:43:28 | Before goto case ...; | cflow.cs:42:17:42:39 | After ...; |
| cflow.cs:43:17:43:28 | goto case ...; | cflow.cs:43:27:43:27 | 2 |
| cflow.cs:43:27:43:27 | 2 | cflow.cs:43:17:43:28 | Before goto case ...; |
-| cflow.cs:44:13:44:19 | After case ...: [no-match] | cflow.cs:44:13:44:19 | case ...: |
+| cflow.cs:44:13:44:19 | After case ...: [no-match] | cflow.cs:44:18:44:18 | After 2 [no-match] |
| cflow.cs:44:13:44:19 | case ...: | cflow.cs:41:13:41:19 | After case ...: [no-match] |
-| cflow.cs:44:18:44:18 | 2 | cflow.cs:44:13:44:19 | After case ...: [match] |
+| cflow.cs:44:18:44:18 | 2 | cflow.cs:44:13:44:19 | case ...: |
+| cflow.cs:44:18:44:18 | After 2 [no-match] | cflow.cs:44:18:44:18 | 2 |
| cflow.cs:45:17:45:38 | After call to method WriteLine | cflow.cs:45:17:45:38 | call to method WriteLine |
| cflow.cs:45:17:45:38 | Before call to method WriteLine | cflow.cs:45:17:45:39 | ...; |
| cflow.cs:45:17:45:38 | call to method WriteLine | cflow.cs:45:35:45:37 | "2" |
-| cflow.cs:45:17:45:39 | ...; | cflow.cs:44:18:44:18 | 2 |
+| cflow.cs:45:17:45:39 | ...; | cflow.cs:44:13:44:19 | After case ...: [match] |
| cflow.cs:45:17:45:39 | After ...; | cflow.cs:45:17:45:38 | After call to method WriteLine |
| cflow.cs:45:35:45:37 | "2" | cflow.cs:45:17:45:38 | Before call to method WriteLine |
| cflow.cs:46:17:46:28 | Before goto case ...; | cflow.cs:45:17:45:39 | After ...; |
| cflow.cs:46:17:46:28 | goto case ...; | cflow.cs:46:27:46:27 | 1 |
| cflow.cs:46:27:46:27 | 1 | cflow.cs:46:17:46:28 | Before goto case ...; |
+| cflow.cs:47:13:47:19 | After case ...: [match] | cflow.cs:47:18:47:18 | After 3 [match] |
+| cflow.cs:47:13:47:19 | After case ...: [no-match] | cflow.cs:47:18:47:18 | After 3 [no-match] |
| cflow.cs:47:13:47:19 | case ...: | cflow.cs:44:13:44:19 | After case ...: [no-match] |
-| cflow.cs:47:18:47:18 | 3 | cflow.cs:47:13:47:19 | After case ...: [match] |
+| cflow.cs:47:18:47:18 | 3 | cflow.cs:47:13:47:19 | case ...: |
| cflow.cs:48:17:48:38 | After call to method WriteLine | cflow.cs:48:17:48:38 | call to method WriteLine |
| cflow.cs:48:17:48:38 | Before call to method WriteLine | cflow.cs:48:17:48:39 | ...; |
| cflow.cs:48:17:48:38 | call to method WriteLine | cflow.cs:48:35:48:37 | "3" |
-| cflow.cs:48:17:48:39 | ...; | cflow.cs:47:18:47:18 | 3 |
+| cflow.cs:48:17:48:39 | ...; | cflow.cs:47:13:47:19 | After case ...: [match] |
| cflow.cs:48:17:48:39 | After ...; | cflow.cs:48:17:48:38 | After call to method WriteLine |
| cflow.cs:48:35:48:37 | "3" | cflow.cs:48:17:48:38 | Before call to method WriteLine |
| cflow.cs:49:17:49:22 | Before break; | cflow.cs:48:17:48:39 | After ...; |
@@ -14239,12 +14420,14 @@ postDominance
| cflow.cs:51:9:59:9 | After switch (...) {...} | cflow.cs:58:17:58:22 | break; |
| cflow.cs:51:9:59:9 | switch (...) {...} | cflow.cs:39:9:50:9 | After switch (...) {...} |
| cflow.cs:51:17:51:17 | access to parameter a | cflow.cs:51:9:59:9 | switch (...) {...} |
+| cflow.cs:53:13:53:20 | After case ...: [match] | cflow.cs:53:18:53:19 | After 42 [match] |
+| cflow.cs:53:13:53:20 | After case ...: [no-match] | cflow.cs:53:18:53:19 | After 42 [no-match] |
| cflow.cs:53:13:53:20 | case ...: | cflow.cs:51:17:51:17 | access to parameter a |
-| cflow.cs:53:18:53:19 | 42 | cflow.cs:53:13:53:20 | After case ...: [match] |
+| cflow.cs:53:18:53:19 | 42 | cflow.cs:53:13:53:20 | case ...: |
| cflow.cs:54:17:54:47 | After call to method WriteLine | cflow.cs:54:17:54:47 | call to method WriteLine |
| cflow.cs:54:17:54:47 | Before call to method WriteLine | cflow.cs:54:17:54:48 | ...; |
| cflow.cs:54:17:54:47 | call to method WriteLine | cflow.cs:54:35:54:46 | "The answer" |
-| cflow.cs:54:17:54:48 | ...; | cflow.cs:53:18:53:19 | 42 |
+| cflow.cs:54:17:54:48 | ...; | cflow.cs:53:13:53:20 | After case ...: [match] |
| cflow.cs:54:17:54:48 | After ...; | cflow.cs:54:17:54:47 | After call to method WriteLine |
| cflow.cs:54:35:54:46 | "The answer" | cflow.cs:54:17:54:47 | Before call to method WriteLine |
| cflow.cs:55:17:55:22 | Before break; | cflow.cs:54:17:54:48 | After ...; |
@@ -14269,10 +14452,12 @@ postDominance
| cflow.cs:60:27:60:31 | Before access to field Field | cflow.cs:60:17:60:32 | Before call to method Parse |
| cflow.cs:60:27:60:31 | access to field Field | cflow.cs:60:27:60:31 | this access |
| cflow.cs:60:27:60:31 | this access | cflow.cs:60:27:60:31 | Before access to field Field |
+| cflow.cs:62:13:62:19 | After case ...: [match] | cflow.cs:62:18:62:18 | After 0 [match] |
+| cflow.cs:62:13:62:19 | After case ...: [no-match] | cflow.cs:62:18:62:18 | After 0 [no-match] |
| cflow.cs:62:13:62:19 | case ...: | cflow.cs:60:17:60:32 | After call to method Parse |
-| cflow.cs:62:18:62:18 | 0 | cflow.cs:62:13:62:19 | After case ...: [match] |
+| cflow.cs:62:18:62:18 | 0 | cflow.cs:62:13:62:19 | case ...: |
| cflow.cs:63:17:64:55 | After if (...) ... | cflow.cs:63:21:63:34 | After !... [false] |
-| cflow.cs:63:17:64:55 | if (...) ... | cflow.cs:62:18:62:18 | 0 |
+| cflow.cs:63:17:64:55 | if (...) ... | cflow.cs:62:13:62:19 | After case ...: [match] |
| cflow.cs:63:21:63:34 | !... | cflow.cs:63:17:64:55 | if (...) ... |
| cflow.cs:63:21:63:34 | After !... [false] | cflow.cs:63:23:63:33 | After ... == ... [true] |
| cflow.cs:63:21:63:34 | After !... [true] | cflow.cs:63:23:63:33 | After ... == ... [false] |
@@ -15151,23 +15336,29 @@ postDominance
| cflow.cs:246:17:246:32 | After ... + ... | cflow.cs:246:17:246:32 | ... + ... |
| cflow.cs:246:17:246:32 | Before ... + ... | cflow.cs:246:9:258:9 | switch (...) {...} |
| cflow.cs:246:32:246:32 | 3 | cflow.cs:246:17:246:28 | After access to property Length |
+| cflow.cs:248:13:248:19 | After case ...: [match] | cflow.cs:248:18:248:18 | After 0 [match] |
+| cflow.cs:248:13:248:19 | After case ...: [no-match] | cflow.cs:248:18:248:18 | After 0 [no-match] |
| cflow.cs:248:13:248:19 | case ...: | cflow.cs:246:17:246:32 | After ... + ... |
-| cflow.cs:248:18:248:18 | 0 | cflow.cs:248:13:248:19 | After case ...: [match] |
-| cflow.cs:249:17:249:29 | Before goto default; | cflow.cs:248:18:248:18 | 0 |
+| cflow.cs:248:18:248:18 | 0 | cflow.cs:248:13:248:19 | case ...: |
+| cflow.cs:249:17:249:29 | Before goto default; | cflow.cs:248:13:248:19 | After case ...: [match] |
| cflow.cs:249:17:249:29 | goto default; | cflow.cs:249:17:249:29 | Before goto default; |
+| cflow.cs:250:13:250:19 | After case ...: [match] | cflow.cs:250:18:250:18 | After 1 [match] |
+| cflow.cs:250:13:250:19 | After case ...: [no-match] | cflow.cs:250:18:250:18 | After 1 [no-match] |
| cflow.cs:250:13:250:19 | case ...: | cflow.cs:248:13:248:19 | After case ...: [no-match] |
-| cflow.cs:250:18:250:18 | 1 | cflow.cs:250:13:250:19 | After case ...: [match] |
+| cflow.cs:250:18:250:18 | 1 | cflow.cs:250:13:250:19 | case ...: |
| cflow.cs:251:17:251:36 | After call to method WriteLine | cflow.cs:251:17:251:36 | call to method WriteLine |
| cflow.cs:251:17:251:36 | Before call to method WriteLine | cflow.cs:251:17:251:37 | ...; |
| cflow.cs:251:17:251:36 | call to method WriteLine | cflow.cs:251:35:251:35 | 1 |
-| cflow.cs:251:17:251:37 | ...; | cflow.cs:250:18:250:18 | 1 |
+| cflow.cs:251:17:251:37 | ...; | cflow.cs:250:13:250:19 | After case ...: [match] |
| cflow.cs:251:17:251:37 | After ...; | cflow.cs:251:17:251:36 | After call to method WriteLine |
| cflow.cs:251:35:251:35 | 1 | cflow.cs:251:17:251:36 | Before call to method WriteLine |
| cflow.cs:252:17:252:22 | Before break; | cflow.cs:251:17:251:37 | After ...; |
| cflow.cs:252:17:252:22 | break; | cflow.cs:252:17:252:22 | Before break; |
+| cflow.cs:253:13:253:19 | After case ...: [match] | cflow.cs:253:18:253:18 | After 2 [match] |
+| cflow.cs:253:13:253:19 | After case ...: [no-match] | cflow.cs:253:18:253:18 | After 2 [no-match] |
| cflow.cs:253:13:253:19 | case ...: | cflow.cs:250:13:250:19 | After case ...: [no-match] |
-| cflow.cs:253:18:253:18 | 2 | cflow.cs:253:13:253:19 | After case ...: [match] |
-| cflow.cs:254:17:254:27 | Before goto ...; | cflow.cs:253:18:253:18 | 2 |
+| cflow.cs:253:18:253:18 | 2 | cflow.cs:253:13:253:19 | case ...: |
+| cflow.cs:254:17:254:27 | Before goto ...; | cflow.cs:253:13:253:19 | After case ...: [match] |
| cflow.cs:254:17:254:27 | goto ...; | cflow.cs:254:17:254:27 | Before goto ...; |
| cflow.cs:255:13:255:20 | After default: [match] | cflow.cs:249:17:249:29 | goto default; |
| cflow.cs:255:13:255:20 | After default: [match] | cflow.cs:255:13:255:20 | default: |
@@ -18387,34 +18578,34 @@ blockDominance
| Patterns.cs:5:10:5:11 | Entry | Patterns.cs:16:18:16:28 | After ... is ... [false] |
| Patterns.cs:5:10:5:11 | Entry | Patterns.cs:16:18:16:28 | [MatchTrue] ... is ... |
| Patterns.cs:5:10:5:11 | Entry | Patterns.cs:20:9:38:9 | After switch (...) {...} |
-| Patterns.cs:5:10:5:11 | Entry | Patterns.cs:22:13:22:23 | After case ...: [match] |
-| Patterns.cs:5:10:5:11 | Entry | Patterns.cs:22:13:22:23 | After case ...: [no-match] |
-| Patterns.cs:5:10:5:11 | Entry | Patterns.cs:24:13:24:36 | After case ...: [match] |
-| Patterns.cs:5:10:5:11 | Entry | Patterns.cs:24:13:24:36 | After case ...: [no-match] |
+| Patterns.cs:5:10:5:11 | Entry | Patterns.cs:22:18:22:22 | After "xyz" [match] |
+| Patterns.cs:5:10:5:11 | Entry | Patterns.cs:22:18:22:22 | After "xyz" [no-match] |
+| Patterns.cs:5:10:5:11 | Entry | Patterns.cs:24:18:24:23 | After Int32 i2 [match] |
+| Patterns.cs:5:10:5:11 | Entry | Patterns.cs:24:18:24:23 | After Int32 i2 [no-match] |
| Patterns.cs:5:10:5:11 | Entry | Patterns.cs:24:30:24:35 | After ... > ... [false] |
| Patterns.cs:5:10:5:11 | Entry | Patterns.cs:24:30:24:35 | After ... > ... [true] |
-| Patterns.cs:5:10:5:11 | Entry | Patterns.cs:27:13:27:24 | After case ...: [match] |
-| Patterns.cs:5:10:5:11 | Entry | Patterns.cs:27:13:27:24 | After case ...: [no-match] |
| Patterns.cs:5:10:5:11 | Entry | Patterns.cs:27:13:27:24 | case ...: |
-| Patterns.cs:5:10:5:11 | Entry | Patterns.cs:30:13:30:27 | After case ...: [match] |
-| Patterns.cs:5:10:5:11 | Entry | Patterns.cs:30:13:30:27 | After case ...: [no-match] |
-| Patterns.cs:5:10:5:11 | Entry | Patterns.cs:33:13:33:24 | After case ...: [match] |
-| Patterns.cs:5:10:5:11 | Entry | Patterns.cs:33:13:33:24 | After case ...: [no-match] |
+| Patterns.cs:5:10:5:11 | Entry | Patterns.cs:27:18:27:23 | After Int32 i3 [match] |
+| Patterns.cs:5:10:5:11 | Entry | Patterns.cs:27:18:27:23 | After Int32 i3 [no-match] |
+| Patterns.cs:5:10:5:11 | Entry | Patterns.cs:30:18:30:26 | After String s2 [match] |
+| Patterns.cs:5:10:5:11 | Entry | Patterns.cs:30:18:30:26 | After String s2 [no-match] |
+| Patterns.cs:5:10:5:11 | Entry | Patterns.cs:33:18:33:23 | After Object v2 [match] |
+| Patterns.cs:5:10:5:11 | Entry | Patterns.cs:33:18:33:23 | After Object v2 [no-match] |
| Patterns.cs:8:9:18:9 | After if (...) ... | Patterns.cs:8:9:18:9 | After if (...) ... |
| Patterns.cs:8:9:18:9 | After if (...) ... | Patterns.cs:20:9:38:9 | After switch (...) {...} |
-| Patterns.cs:8:9:18:9 | After if (...) ... | Patterns.cs:22:13:22:23 | After case ...: [match] |
-| Patterns.cs:8:9:18:9 | After if (...) ... | Patterns.cs:22:13:22:23 | After case ...: [no-match] |
-| Patterns.cs:8:9:18:9 | After if (...) ... | Patterns.cs:24:13:24:36 | After case ...: [match] |
-| Patterns.cs:8:9:18:9 | After if (...) ... | Patterns.cs:24:13:24:36 | After case ...: [no-match] |
+| Patterns.cs:8:9:18:9 | After if (...) ... | Patterns.cs:22:18:22:22 | After "xyz" [match] |
+| Patterns.cs:8:9:18:9 | After if (...) ... | Patterns.cs:22:18:22:22 | After "xyz" [no-match] |
+| Patterns.cs:8:9:18:9 | After if (...) ... | Patterns.cs:24:18:24:23 | After Int32 i2 [match] |
+| Patterns.cs:8:9:18:9 | After if (...) ... | Patterns.cs:24:18:24:23 | After Int32 i2 [no-match] |
| Patterns.cs:8:9:18:9 | After if (...) ... | Patterns.cs:24:30:24:35 | After ... > ... [false] |
| Patterns.cs:8:9:18:9 | After if (...) ... | Patterns.cs:24:30:24:35 | After ... > ... [true] |
-| Patterns.cs:8:9:18:9 | After if (...) ... | Patterns.cs:27:13:27:24 | After case ...: [match] |
-| Patterns.cs:8:9:18:9 | After if (...) ... | Patterns.cs:27:13:27:24 | After case ...: [no-match] |
| Patterns.cs:8:9:18:9 | After if (...) ... | Patterns.cs:27:13:27:24 | case ...: |
-| Patterns.cs:8:9:18:9 | After if (...) ... | Patterns.cs:30:13:30:27 | After case ...: [match] |
-| Patterns.cs:8:9:18:9 | After if (...) ... | Patterns.cs:30:13:30:27 | After case ...: [no-match] |
-| Patterns.cs:8:9:18:9 | After if (...) ... | Patterns.cs:33:13:33:24 | After case ...: [match] |
-| Patterns.cs:8:9:18:9 | After if (...) ... | Patterns.cs:33:13:33:24 | After case ...: [no-match] |
+| Patterns.cs:8:9:18:9 | After if (...) ... | Patterns.cs:27:18:27:23 | After Int32 i3 [match] |
+| Patterns.cs:8:9:18:9 | After if (...) ... | Patterns.cs:27:18:27:23 | After Int32 i3 [no-match] |
+| Patterns.cs:8:9:18:9 | After if (...) ... | Patterns.cs:30:18:30:26 | After String s2 [match] |
+| Patterns.cs:8:9:18:9 | After if (...) ... | Patterns.cs:30:18:30:26 | After String s2 [no-match] |
+| Patterns.cs:8:9:18:9 | After if (...) ... | Patterns.cs:33:18:33:23 | After Object v2 [match] |
+| Patterns.cs:8:9:18:9 | After if (...) ... | Patterns.cs:33:18:33:23 | After Object v2 [no-match] |
| Patterns.cs:8:13:8:23 | After ... is ... [false] | Patterns.cs:8:13:8:23 | After ... is ... [false] |
| Patterns.cs:8:13:8:23 | After ... is ... [false] | Patterns.cs:12:14:18:9 | After if (...) ... |
| Patterns.cs:8:13:8:23 | After ... is ... [false] | Patterns.cs:12:18:12:31 | After ... is ... [false] |
@@ -18433,44 +18624,44 @@ blockDominance
| Patterns.cs:16:18:16:28 | After ... is ... [false] | Patterns.cs:16:18:16:28 | After ... is ... [false] |
| Patterns.cs:16:18:16:28 | [MatchTrue] ... is ... | Patterns.cs:16:18:16:28 | [MatchTrue] ... is ... |
| Patterns.cs:20:9:38:9 | After switch (...) {...} | Patterns.cs:20:9:38:9 | After switch (...) {...} |
-| Patterns.cs:22:13:22:23 | After case ...: [match] | Patterns.cs:22:13:22:23 | After case ...: [match] |
-| Patterns.cs:22:13:22:23 | After case ...: [no-match] | Patterns.cs:22:13:22:23 | After case ...: [no-match] |
-| Patterns.cs:22:13:22:23 | After case ...: [no-match] | Patterns.cs:24:13:24:36 | After case ...: [match] |
-| Patterns.cs:22:13:22:23 | After case ...: [no-match] | Patterns.cs:24:13:24:36 | After case ...: [no-match] |
-| Patterns.cs:22:13:22:23 | After case ...: [no-match] | Patterns.cs:24:30:24:35 | After ... > ... [false] |
-| Patterns.cs:22:13:22:23 | After case ...: [no-match] | Patterns.cs:24:30:24:35 | After ... > ... [true] |
-| Patterns.cs:22:13:22:23 | After case ...: [no-match] | Patterns.cs:27:13:27:24 | After case ...: [match] |
-| Patterns.cs:22:13:22:23 | After case ...: [no-match] | Patterns.cs:27:13:27:24 | After case ...: [no-match] |
-| Patterns.cs:22:13:22:23 | After case ...: [no-match] | Patterns.cs:27:13:27:24 | case ...: |
-| Patterns.cs:22:13:22:23 | After case ...: [no-match] | Patterns.cs:30:13:30:27 | After case ...: [match] |
-| Patterns.cs:22:13:22:23 | After case ...: [no-match] | Patterns.cs:30:13:30:27 | After case ...: [no-match] |
-| Patterns.cs:22:13:22:23 | After case ...: [no-match] | Patterns.cs:33:13:33:24 | After case ...: [match] |
-| Patterns.cs:22:13:22:23 | After case ...: [no-match] | Patterns.cs:33:13:33:24 | After case ...: [no-match] |
-| Patterns.cs:24:13:24:36 | After case ...: [match] | Patterns.cs:24:13:24:36 | After case ...: [match] |
-| Patterns.cs:24:13:24:36 | After case ...: [match] | Patterns.cs:24:30:24:35 | After ... > ... [false] |
-| Patterns.cs:24:13:24:36 | After case ...: [match] | Patterns.cs:24:30:24:35 | After ... > ... [true] |
-| Patterns.cs:24:13:24:36 | After case ...: [no-match] | Patterns.cs:24:13:24:36 | After case ...: [no-match] |
+| Patterns.cs:22:18:22:22 | After "xyz" [match] | Patterns.cs:22:18:22:22 | After "xyz" [match] |
+| Patterns.cs:22:18:22:22 | After "xyz" [no-match] | Patterns.cs:22:18:22:22 | After "xyz" [no-match] |
+| Patterns.cs:22:18:22:22 | After "xyz" [no-match] | Patterns.cs:24:18:24:23 | After Int32 i2 [match] |
+| Patterns.cs:22:18:22:22 | After "xyz" [no-match] | Patterns.cs:24:18:24:23 | After Int32 i2 [no-match] |
+| Patterns.cs:22:18:22:22 | After "xyz" [no-match] | Patterns.cs:24:30:24:35 | After ... > ... [false] |
+| Patterns.cs:22:18:22:22 | After "xyz" [no-match] | Patterns.cs:24:30:24:35 | After ... > ... [true] |
+| Patterns.cs:22:18:22:22 | After "xyz" [no-match] | Patterns.cs:27:13:27:24 | case ...: |
+| Patterns.cs:22:18:22:22 | After "xyz" [no-match] | Patterns.cs:27:18:27:23 | After Int32 i3 [match] |
+| Patterns.cs:22:18:22:22 | After "xyz" [no-match] | Patterns.cs:27:18:27:23 | After Int32 i3 [no-match] |
+| Patterns.cs:22:18:22:22 | After "xyz" [no-match] | Patterns.cs:30:18:30:26 | After String s2 [match] |
+| Patterns.cs:22:18:22:22 | After "xyz" [no-match] | Patterns.cs:30:18:30:26 | After String s2 [no-match] |
+| Patterns.cs:22:18:22:22 | After "xyz" [no-match] | Patterns.cs:33:18:33:23 | After Object v2 [match] |
+| Patterns.cs:22:18:22:22 | After "xyz" [no-match] | Patterns.cs:33:18:33:23 | After Object v2 [no-match] |
+| Patterns.cs:24:18:24:23 | After Int32 i2 [match] | Patterns.cs:24:18:24:23 | After Int32 i2 [match] |
+| Patterns.cs:24:18:24:23 | After Int32 i2 [match] | Patterns.cs:24:30:24:35 | After ... > ... [false] |
+| Patterns.cs:24:18:24:23 | After Int32 i2 [match] | Patterns.cs:24:30:24:35 | After ... > ... [true] |
+| Patterns.cs:24:18:24:23 | After Int32 i2 [no-match] | Patterns.cs:24:18:24:23 | After Int32 i2 [no-match] |
| Patterns.cs:24:30:24:35 | After ... > ... [false] | Patterns.cs:24:30:24:35 | After ... > ... [false] |
| Patterns.cs:24:30:24:35 | After ... > ... [true] | Patterns.cs:24:30:24:35 | After ... > ... [true] |
-| Patterns.cs:27:13:27:24 | After case ...: [match] | Patterns.cs:27:13:27:24 | After case ...: [match] |
-| Patterns.cs:27:13:27:24 | After case ...: [no-match] | Patterns.cs:27:13:27:24 | After case ...: [no-match] |
-| Patterns.cs:27:13:27:24 | After case ...: [no-match] | Patterns.cs:30:13:30:27 | After case ...: [match] |
-| Patterns.cs:27:13:27:24 | After case ...: [no-match] | Patterns.cs:30:13:30:27 | After case ...: [no-match] |
-| Patterns.cs:27:13:27:24 | After case ...: [no-match] | Patterns.cs:33:13:33:24 | After case ...: [match] |
-| Patterns.cs:27:13:27:24 | After case ...: [no-match] | Patterns.cs:33:13:33:24 | After case ...: [no-match] |
-| Patterns.cs:27:13:27:24 | case ...: | Patterns.cs:27:13:27:24 | After case ...: [match] |
-| Patterns.cs:27:13:27:24 | case ...: | Patterns.cs:27:13:27:24 | After case ...: [no-match] |
| Patterns.cs:27:13:27:24 | case ...: | Patterns.cs:27:13:27:24 | case ...: |
-| Patterns.cs:27:13:27:24 | case ...: | Patterns.cs:30:13:30:27 | After case ...: [match] |
-| Patterns.cs:27:13:27:24 | case ...: | Patterns.cs:30:13:30:27 | After case ...: [no-match] |
-| Patterns.cs:27:13:27:24 | case ...: | Patterns.cs:33:13:33:24 | After case ...: [match] |
-| Patterns.cs:27:13:27:24 | case ...: | Patterns.cs:33:13:33:24 | After case ...: [no-match] |
-| Patterns.cs:30:13:30:27 | After case ...: [match] | Patterns.cs:30:13:30:27 | After case ...: [match] |
-| Patterns.cs:30:13:30:27 | After case ...: [no-match] | Patterns.cs:30:13:30:27 | After case ...: [no-match] |
-| Patterns.cs:30:13:30:27 | After case ...: [no-match] | Patterns.cs:33:13:33:24 | After case ...: [match] |
-| Patterns.cs:30:13:30:27 | After case ...: [no-match] | Patterns.cs:33:13:33:24 | After case ...: [no-match] |
-| Patterns.cs:33:13:33:24 | After case ...: [match] | Patterns.cs:33:13:33:24 | After case ...: [match] |
-| Patterns.cs:33:13:33:24 | After case ...: [no-match] | Patterns.cs:33:13:33:24 | After case ...: [no-match] |
+| Patterns.cs:27:13:27:24 | case ...: | Patterns.cs:27:18:27:23 | After Int32 i3 [match] |
+| Patterns.cs:27:13:27:24 | case ...: | Patterns.cs:27:18:27:23 | After Int32 i3 [no-match] |
+| Patterns.cs:27:13:27:24 | case ...: | Patterns.cs:30:18:30:26 | After String s2 [match] |
+| Patterns.cs:27:13:27:24 | case ...: | Patterns.cs:30:18:30:26 | After String s2 [no-match] |
+| Patterns.cs:27:13:27:24 | case ...: | Patterns.cs:33:18:33:23 | After Object v2 [match] |
+| Patterns.cs:27:13:27:24 | case ...: | Patterns.cs:33:18:33:23 | After Object v2 [no-match] |
+| Patterns.cs:27:18:27:23 | After Int32 i3 [match] | Patterns.cs:27:18:27:23 | After Int32 i3 [match] |
+| Patterns.cs:27:18:27:23 | After Int32 i3 [no-match] | Patterns.cs:27:18:27:23 | After Int32 i3 [no-match] |
+| Patterns.cs:27:18:27:23 | After Int32 i3 [no-match] | Patterns.cs:30:18:30:26 | After String s2 [match] |
+| Patterns.cs:27:18:27:23 | After Int32 i3 [no-match] | Patterns.cs:30:18:30:26 | After String s2 [no-match] |
+| Patterns.cs:27:18:27:23 | After Int32 i3 [no-match] | Patterns.cs:33:18:33:23 | After Object v2 [match] |
+| Patterns.cs:27:18:27:23 | After Int32 i3 [no-match] | Patterns.cs:33:18:33:23 | After Object v2 [no-match] |
+| Patterns.cs:30:18:30:26 | After String s2 [match] | Patterns.cs:30:18:30:26 | After String s2 [match] |
+| Patterns.cs:30:18:30:26 | After String s2 [no-match] | Patterns.cs:30:18:30:26 | After String s2 [no-match] |
+| Patterns.cs:30:18:30:26 | After String s2 [no-match] | Patterns.cs:33:18:33:23 | After Object v2 [match] |
+| Patterns.cs:30:18:30:26 | After String s2 [no-match] | Patterns.cs:33:18:33:23 | After Object v2 [no-match] |
+| Patterns.cs:33:18:33:23 | After Object v2 [match] | Patterns.cs:33:18:33:23 | After Object v2 [match] |
+| Patterns.cs:33:18:33:23 | After Object v2 [no-match] | Patterns.cs:33:18:33:23 | After Object v2 [no-match] |
| Patterns.cs:47:24:47:25 | Entry | Patterns.cs:47:24:47:25 | Entry |
| Patterns.cs:47:24:47:25 | Entry | Patterns.cs:48:9:48:20 | After ... is ... |
| Patterns.cs:47:24:47:25 | Entry | Patterns.cs:48:9:48:20 | [MatchTrue] ... is ... |
@@ -18502,45 +18693,45 @@ blockDominance
| Patterns.cs:54:9:54:37 | [MatchTrue] ... is ... | Patterns.cs:54:9:54:37 | [MatchTrue] ... is ... |
| Patterns.cs:56:26:56:27 | Entry | Patterns.cs:56:26:56:27 | Entry |
| Patterns.cs:56:26:56:27 | Entry | Patterns.cs:58:16:62:9 | After ... switch { ... } |
-| Patterns.cs:56:26:56:27 | Entry | Patterns.cs:60:13:60:28 | After ... => ... [match] |
-| Patterns.cs:56:26:56:27 | Entry | Patterns.cs:60:13:60:28 | After ... => ... [no-match] |
+| Patterns.cs:56:26:56:27 | Entry | Patterns.cs:60:13:60:17 | After not ... [match] |
+| Patterns.cs:56:26:56:27 | Entry | Patterns.cs:60:13:60:17 | After not ... [no-match] |
| Patterns.cs:58:16:62:9 | After ... switch { ... } | Patterns.cs:58:16:62:9 | After ... switch { ... } |
-| Patterns.cs:60:13:60:28 | After ... => ... [match] | Patterns.cs:60:13:60:28 | After ... => ... [match] |
-| Patterns.cs:60:13:60:28 | After ... => ... [no-match] | Patterns.cs:60:13:60:28 | After ... => ... [no-match] |
+| Patterns.cs:60:13:60:17 | After not ... [match] | Patterns.cs:60:13:60:17 | After not ... [match] |
+| Patterns.cs:60:13:60:17 | After not ... [no-match] | Patterns.cs:60:13:60:17 | After not ... [no-match] |
| Patterns.cs:65:26:65:27 | Entry | Patterns.cs:65:26:65:27 | Entry |
| Patterns.cs:65:26:65:27 | Entry | Patterns.cs:67:16:71:9 | After ... switch { ... } |
-| Patterns.cs:65:26:65:27 | Entry | Patterns.cs:69:13:69:33 | After ... => ... [match] |
-| Patterns.cs:65:26:65:27 | Entry | Patterns.cs:69:13:69:33 | After ... => ... [no-match] |
-| Patterns.cs:65:26:65:27 | Entry | Patterns.cs:70:13:70:27 | After ... => ... [match] |
-| Patterns.cs:65:26:65:27 | Entry | Patterns.cs:70:13:70:27 | After ... => ... [no-match] |
+| Patterns.cs:65:26:65:27 | Entry | Patterns.cs:69:13:69:17 | After not ... [match] |
+| Patterns.cs:65:26:65:27 | Entry | Patterns.cs:69:13:69:17 | After not ... [no-match] |
+| Patterns.cs:65:26:65:27 | Entry | Patterns.cs:70:13:70:13 | After 2 [match] |
+| Patterns.cs:65:26:65:27 | Entry | Patterns.cs:70:13:70:13 | After 2 [no-match] |
| Patterns.cs:67:16:71:9 | After ... switch { ... } | Patterns.cs:67:16:71:9 | After ... switch { ... } |
-| Patterns.cs:69:13:69:33 | After ... => ... [match] | Patterns.cs:69:13:69:33 | After ... => ... [match] |
-| Patterns.cs:69:13:69:33 | After ... => ... [no-match] | Patterns.cs:69:13:69:33 | After ... => ... [no-match] |
-| Patterns.cs:69:13:69:33 | After ... => ... [no-match] | Patterns.cs:70:13:70:27 | After ... => ... [match] |
-| Patterns.cs:69:13:69:33 | After ... => ... [no-match] | Patterns.cs:70:13:70:27 | After ... => ... [no-match] |
-| Patterns.cs:70:13:70:27 | After ... => ... [match] | Patterns.cs:70:13:70:27 | After ... => ... [match] |
-| Patterns.cs:70:13:70:27 | After ... => ... [no-match] | Patterns.cs:70:13:70:27 | After ... => ... [no-match] |
+| Patterns.cs:69:13:69:17 | After not ... [match] | Patterns.cs:69:13:69:17 | After not ... [match] |
+| Patterns.cs:69:13:69:17 | After not ... [no-match] | Patterns.cs:69:13:69:17 | After not ... [no-match] |
+| Patterns.cs:69:13:69:17 | After not ... [no-match] | Patterns.cs:70:13:70:13 | After 2 [match] |
+| Patterns.cs:69:13:69:17 | After not ... [no-match] | Patterns.cs:70:13:70:13 | After 2 [no-match] |
+| Patterns.cs:70:13:70:13 | After 2 [match] | Patterns.cs:70:13:70:13 | After 2 [match] |
+| Patterns.cs:70:13:70:13 | After 2 [no-match] | Patterns.cs:70:13:70:13 | After 2 [no-match] |
| Patterns.cs:74:26:74:27 | Entry | Patterns.cs:74:26:74:27 | Entry |
| Patterns.cs:74:26:74:27 | Entry | Patterns.cs:76:16:82:9 | After ... switch { ... } |
-| Patterns.cs:74:26:74:27 | Entry | Patterns.cs:78:13:78:24 | After ... => ... [match] |
-| Patterns.cs:74:26:74:27 | Entry | Patterns.cs:78:13:78:24 | After ... => ... [no-match] |
-| Patterns.cs:74:26:74:27 | Entry | Patterns.cs:79:13:79:24 | After ... => ... [match] |
-| Patterns.cs:74:26:74:27 | Entry | Patterns.cs:79:13:79:24 | After ... => ... [no-match] |
-| Patterns.cs:74:26:74:27 | Entry | Patterns.cs:80:13:80:20 | After ... => ... [match] |
-| Patterns.cs:74:26:74:27 | Entry | Patterns.cs:80:13:80:20 | After ... => ... [no-match] |
+| Patterns.cs:74:26:74:27 | Entry | Patterns.cs:78:13:78:15 | After > ... [match] |
+| Patterns.cs:74:26:74:27 | Entry | Patterns.cs:78:13:78:15 | After > ... [no-match] |
+| Patterns.cs:74:26:74:27 | Entry | Patterns.cs:79:13:79:15 | After < ... [match] |
+| Patterns.cs:74:26:74:27 | Entry | Patterns.cs:79:13:79:15 | After < ... [no-match] |
+| Patterns.cs:74:26:74:27 | Entry | Patterns.cs:80:13:80:13 | After 1 [match] |
+| Patterns.cs:74:26:74:27 | Entry | Patterns.cs:80:13:80:13 | After 1 [no-match] |
| Patterns.cs:76:16:82:9 | After ... switch { ... } | Patterns.cs:76:16:82:9 | After ... switch { ... } |
-| Patterns.cs:78:13:78:24 | After ... => ... [match] | Patterns.cs:78:13:78:24 | After ... => ... [match] |
-| Patterns.cs:78:13:78:24 | After ... => ... [no-match] | Patterns.cs:78:13:78:24 | After ... => ... [no-match] |
-| Patterns.cs:78:13:78:24 | After ... => ... [no-match] | Patterns.cs:79:13:79:24 | After ... => ... [match] |
-| Patterns.cs:78:13:78:24 | After ... => ... [no-match] | Patterns.cs:79:13:79:24 | After ... => ... [no-match] |
-| Patterns.cs:78:13:78:24 | After ... => ... [no-match] | Patterns.cs:80:13:80:20 | After ... => ... [match] |
-| Patterns.cs:78:13:78:24 | After ... => ... [no-match] | Patterns.cs:80:13:80:20 | After ... => ... [no-match] |
-| Patterns.cs:79:13:79:24 | After ... => ... [match] | Patterns.cs:79:13:79:24 | After ... => ... [match] |
-| Patterns.cs:79:13:79:24 | After ... => ... [no-match] | Patterns.cs:79:13:79:24 | After ... => ... [no-match] |
-| Patterns.cs:79:13:79:24 | After ... => ... [no-match] | Patterns.cs:80:13:80:20 | After ... => ... [match] |
-| Patterns.cs:79:13:79:24 | After ... => ... [no-match] | Patterns.cs:80:13:80:20 | After ... => ... [no-match] |
-| Patterns.cs:80:13:80:20 | After ... => ... [match] | Patterns.cs:80:13:80:20 | After ... => ... [match] |
-| Patterns.cs:80:13:80:20 | After ... => ... [no-match] | Patterns.cs:80:13:80:20 | After ... => ... [no-match] |
+| Patterns.cs:78:13:78:15 | After > ... [match] | Patterns.cs:78:13:78:15 | After > ... [match] |
+| Patterns.cs:78:13:78:15 | After > ... [no-match] | Patterns.cs:78:13:78:15 | After > ... [no-match] |
+| Patterns.cs:78:13:78:15 | After > ... [no-match] | Patterns.cs:79:13:79:15 | After < ... [match] |
+| Patterns.cs:78:13:78:15 | After > ... [no-match] | Patterns.cs:79:13:79:15 | After < ... [no-match] |
+| Patterns.cs:78:13:78:15 | After > ... [no-match] | Patterns.cs:80:13:80:13 | After 1 [match] |
+| Patterns.cs:78:13:78:15 | After > ... [no-match] | Patterns.cs:80:13:80:13 | After 1 [no-match] |
+| Patterns.cs:79:13:79:15 | After < ... [match] | Patterns.cs:79:13:79:15 | After < ... [match] |
+| Patterns.cs:79:13:79:15 | After < ... [no-match] | Patterns.cs:79:13:79:15 | After < ... [no-match] |
+| Patterns.cs:79:13:79:15 | After < ... [no-match] | Patterns.cs:80:13:80:13 | After 1 [match] |
+| Patterns.cs:79:13:79:15 | After < ... [no-match] | Patterns.cs:80:13:80:13 | After 1 [no-match] |
+| Patterns.cs:80:13:80:13 | After 1 [match] | Patterns.cs:80:13:80:13 | After 1 [match] |
+| Patterns.cs:80:13:80:13 | After 1 [no-match] | Patterns.cs:80:13:80:13 | After 1 [no-match] |
| Patterns.cs:85:26:85:27 | Entry | Patterns.cs:85:26:85:27 | Entry |
| Patterns.cs:85:26:85:27 | Entry | Patterns.cs:85:39:85:53 | After ... is ... [false] |
| Patterns.cs:85:26:85:27 | Entry | Patterns.cs:85:39:85:53 | [MatchTrue] ... is ... |
@@ -18588,110 +18779,113 @@ blockDominance
| Switch.cs:10:10:10:11 | Entry | Switch.cs:10:10:10:11 | Exceptional Exit |
| Switch.cs:10:10:10:11 | Entry | Switch.cs:10:10:10:11 | Exit |
| Switch.cs:10:10:10:11 | Entry | Switch.cs:10:10:10:11 | Normal Exit |
-| Switch.cs:10:10:10:11 | Entry | Switch.cs:14:13:14:21 | After case ...: [match] |
-| Switch.cs:10:10:10:11 | Entry | Switch.cs:14:13:14:21 | After case ...: [no-match] |
+| Switch.cs:10:10:10:11 | Entry | Switch.cs:14:18:14:20 | After "a" [match] |
+| Switch.cs:10:10:10:11 | Entry | Switch.cs:14:18:14:20 | After "a" [no-match] |
| Switch.cs:10:10:10:11 | Entry | Switch.cs:16:13:16:19 | After case ...: [match] |
-| Switch.cs:10:10:10:11 | Entry | Switch.cs:16:13:16:19 | After case ...: [no-match] |
-| Switch.cs:10:10:10:11 | Entry | Switch.cs:18:13:18:22 | After case ...: [match] |
-| Switch.cs:10:10:10:11 | Entry | Switch.cs:18:13:18:22 | After case ...: [no-match] |
-| Switch.cs:10:10:10:11 | Entry | Switch.cs:20:13:20:23 | After case ...: [match] |
-| Switch.cs:10:10:10:11 | Entry | Switch.cs:20:13:20:23 | After case ...: [no-match] |
+| Switch.cs:10:10:10:11 | Entry | Switch.cs:16:18:16:18 | After 0 [match] |
+| Switch.cs:10:10:10:11 | Entry | Switch.cs:16:18:16:18 | After 0 [no-match] |
+| Switch.cs:10:10:10:11 | Entry | Switch.cs:18:18:18:21 | After null [match] |
+| Switch.cs:10:10:10:11 | Entry | Switch.cs:18:18:18:21 | After null [no-match] |
+| Switch.cs:10:10:10:11 | Entry | Switch.cs:20:18:20:22 | After Int32 i [match] |
+| Switch.cs:10:10:10:11 | Entry | Switch.cs:20:18:20:22 | After Int32 i [no-match] |
| Switch.cs:10:10:10:11 | Entry | Switch.cs:21:21:21:29 | After ... == ... [false] |
| Switch.cs:10:10:10:11 | Entry | Switch.cs:21:21:21:29 | After ... == ... [true] |
-| Switch.cs:10:10:10:11 | Entry | Switch.cs:24:13:24:56 | After case ...: [match] |
-| Switch.cs:10:10:10:11 | Entry | Switch.cs:24:13:24:56 | After case ...: [no-match] |
+| Switch.cs:10:10:10:11 | Entry | Switch.cs:24:18:24:25 | After String s [match] |
+| Switch.cs:10:10:10:11 | Entry | Switch.cs:24:18:24:25 | After String s [no-match] |
| Switch.cs:10:10:10:11 | Entry | Switch.cs:24:32:24:43 | After ... > ... [false] |
| Switch.cs:10:10:10:11 | Entry | Switch.cs:24:32:24:43 | After ... > ... [true] |
| Switch.cs:10:10:10:11 | Entry | Switch.cs:24:32:24:55 | After ... && ... [false] |
| Switch.cs:10:10:10:11 | Entry | Switch.cs:24:48:24:55 | After ... != ... [false] |
| Switch.cs:10:10:10:11 | Entry | Switch.cs:24:48:24:55 | After ... != ... [true] |
-| Switch.cs:10:10:10:11 | Entry | Switch.cs:27:13:27:39 | After case ...: [match] |
-| Switch.cs:10:10:10:11 | Entry | Switch.cs:27:13:27:39 | After case ...: [no-match] |
| Switch.cs:10:10:10:11 | Entry | Switch.cs:27:13:27:39 | case ...: |
+| Switch.cs:10:10:10:11 | Entry | Switch.cs:27:18:27:25 | After Double d [match] |
+| Switch.cs:10:10:10:11 | Entry | Switch.cs:27:18:27:25 | After Double d [no-match] |
| Switch.cs:10:10:10:11 | Entry | Switch.cs:30:13:30:20 | After default: [match] |
| Switch.cs:10:10:10:11 | Exceptional Exit | Switch.cs:10:10:10:11 | Exceptional Exit |
| Switch.cs:10:10:10:11 | Exit | Switch.cs:10:10:10:11 | Exit |
| Switch.cs:10:10:10:11 | Normal Exit | Switch.cs:10:10:10:11 | Normal Exit |
-| Switch.cs:14:13:14:21 | After case ...: [match] | Switch.cs:14:13:14:21 | After case ...: [match] |
-| Switch.cs:14:13:14:21 | After case ...: [no-match] | Switch.cs:10:10:10:11 | Exceptional Exit |
-| Switch.cs:14:13:14:21 | After case ...: [no-match] | Switch.cs:14:13:14:21 | After case ...: [no-match] |
-| Switch.cs:14:13:14:21 | After case ...: [no-match] | Switch.cs:16:13:16:19 | After case ...: [match] |
-| Switch.cs:14:13:14:21 | After case ...: [no-match] | Switch.cs:16:13:16:19 | After case ...: [no-match] |
-| Switch.cs:14:13:14:21 | After case ...: [no-match] | Switch.cs:18:13:18:22 | After case ...: [match] |
-| Switch.cs:14:13:14:21 | After case ...: [no-match] | Switch.cs:18:13:18:22 | After case ...: [no-match] |
-| Switch.cs:14:13:14:21 | After case ...: [no-match] | Switch.cs:20:13:20:23 | After case ...: [match] |
-| Switch.cs:14:13:14:21 | After case ...: [no-match] | Switch.cs:20:13:20:23 | After case ...: [no-match] |
-| Switch.cs:14:13:14:21 | After case ...: [no-match] | Switch.cs:21:21:21:29 | After ... == ... [false] |
-| Switch.cs:14:13:14:21 | After case ...: [no-match] | Switch.cs:21:21:21:29 | After ... == ... [true] |
-| Switch.cs:14:13:14:21 | After case ...: [no-match] | Switch.cs:24:13:24:56 | After case ...: [match] |
-| Switch.cs:14:13:14:21 | After case ...: [no-match] | Switch.cs:24:13:24:56 | After case ...: [no-match] |
-| Switch.cs:14:13:14:21 | After case ...: [no-match] | Switch.cs:24:32:24:43 | After ... > ... [false] |
-| Switch.cs:14:13:14:21 | After case ...: [no-match] | Switch.cs:24:32:24:43 | After ... > ... [true] |
-| Switch.cs:14:13:14:21 | After case ...: [no-match] | Switch.cs:24:32:24:55 | After ... && ... [false] |
-| Switch.cs:14:13:14:21 | After case ...: [no-match] | Switch.cs:24:48:24:55 | After ... != ... [false] |
-| Switch.cs:14:13:14:21 | After case ...: [no-match] | Switch.cs:24:48:24:55 | After ... != ... [true] |
-| Switch.cs:14:13:14:21 | After case ...: [no-match] | Switch.cs:27:13:27:39 | After case ...: [match] |
-| Switch.cs:14:13:14:21 | After case ...: [no-match] | Switch.cs:27:13:27:39 | After case ...: [no-match] |
-| Switch.cs:14:13:14:21 | After case ...: [no-match] | Switch.cs:27:13:27:39 | case ...: |
-| Switch.cs:14:13:14:21 | After case ...: [no-match] | Switch.cs:30:13:30:20 | After default: [match] |
+| Switch.cs:14:18:14:20 | After "a" [match] | Switch.cs:14:18:14:20 | After "a" [match] |
+| Switch.cs:14:18:14:20 | After "a" [no-match] | Switch.cs:10:10:10:11 | Exceptional Exit |
+| Switch.cs:14:18:14:20 | After "a" [no-match] | Switch.cs:14:18:14:20 | After "a" [no-match] |
+| Switch.cs:14:18:14:20 | After "a" [no-match] | Switch.cs:16:13:16:19 | After case ...: [match] |
+| Switch.cs:14:18:14:20 | After "a" [no-match] | Switch.cs:16:18:16:18 | After 0 [match] |
+| Switch.cs:14:18:14:20 | After "a" [no-match] | Switch.cs:16:18:16:18 | After 0 [no-match] |
+| Switch.cs:14:18:14:20 | After "a" [no-match] | Switch.cs:18:18:18:21 | After null [match] |
+| Switch.cs:14:18:14:20 | After "a" [no-match] | Switch.cs:18:18:18:21 | After null [no-match] |
+| Switch.cs:14:18:14:20 | After "a" [no-match] | Switch.cs:20:18:20:22 | After Int32 i [match] |
+| Switch.cs:14:18:14:20 | After "a" [no-match] | Switch.cs:20:18:20:22 | After Int32 i [no-match] |
+| Switch.cs:14:18:14:20 | After "a" [no-match] | Switch.cs:21:21:21:29 | After ... == ... [false] |
+| Switch.cs:14:18:14:20 | After "a" [no-match] | Switch.cs:21:21:21:29 | After ... == ... [true] |
+| Switch.cs:14:18:14:20 | After "a" [no-match] | Switch.cs:24:18:24:25 | After String s [match] |
+| Switch.cs:14:18:14:20 | After "a" [no-match] | Switch.cs:24:18:24:25 | After String s [no-match] |
+| Switch.cs:14:18:14:20 | After "a" [no-match] | Switch.cs:24:32:24:43 | After ... > ... [false] |
+| Switch.cs:14:18:14:20 | After "a" [no-match] | Switch.cs:24:32:24:43 | After ... > ... [true] |
+| Switch.cs:14:18:14:20 | After "a" [no-match] | Switch.cs:24:32:24:55 | After ... && ... [false] |
+| Switch.cs:14:18:14:20 | After "a" [no-match] | Switch.cs:24:48:24:55 | After ... != ... [false] |
+| Switch.cs:14:18:14:20 | After "a" [no-match] | Switch.cs:24:48:24:55 | After ... != ... [true] |
+| Switch.cs:14:18:14:20 | After "a" [no-match] | Switch.cs:27:13:27:39 | case ...: |
+| Switch.cs:14:18:14:20 | After "a" [no-match] | Switch.cs:27:18:27:25 | After Double d [match] |
+| Switch.cs:14:18:14:20 | After "a" [no-match] | Switch.cs:27:18:27:25 | After Double d [no-match] |
+| Switch.cs:14:18:14:20 | After "a" [no-match] | Switch.cs:30:13:30:20 | After default: [match] |
| Switch.cs:16:13:16:19 | After case ...: [match] | Switch.cs:16:13:16:19 | After case ...: [match] |
-| Switch.cs:16:13:16:19 | After case ...: [no-match] | Switch.cs:16:13:16:19 | After case ...: [no-match] |
-| Switch.cs:16:13:16:19 | After case ...: [no-match] | Switch.cs:18:13:18:22 | After case ...: [match] |
-| Switch.cs:16:13:16:19 | After case ...: [no-match] | Switch.cs:18:13:18:22 | After case ...: [no-match] |
-| Switch.cs:16:13:16:19 | After case ...: [no-match] | Switch.cs:20:13:20:23 | After case ...: [match] |
-| Switch.cs:16:13:16:19 | After case ...: [no-match] | Switch.cs:20:13:20:23 | After case ...: [no-match] |
-| Switch.cs:16:13:16:19 | After case ...: [no-match] | Switch.cs:21:21:21:29 | After ... == ... [false] |
-| Switch.cs:16:13:16:19 | After case ...: [no-match] | Switch.cs:21:21:21:29 | After ... == ... [true] |
-| Switch.cs:16:13:16:19 | After case ...: [no-match] | Switch.cs:24:13:24:56 | After case ...: [match] |
-| Switch.cs:16:13:16:19 | After case ...: [no-match] | Switch.cs:24:13:24:56 | After case ...: [no-match] |
-| Switch.cs:16:13:16:19 | After case ...: [no-match] | Switch.cs:24:32:24:43 | After ... > ... [false] |
-| Switch.cs:16:13:16:19 | After case ...: [no-match] | Switch.cs:24:32:24:43 | After ... > ... [true] |
-| Switch.cs:16:13:16:19 | After case ...: [no-match] | Switch.cs:24:32:24:55 | After ... && ... [false] |
-| Switch.cs:16:13:16:19 | After case ...: [no-match] | Switch.cs:24:48:24:55 | After ... != ... [false] |
-| Switch.cs:16:13:16:19 | After case ...: [no-match] | Switch.cs:24:48:24:55 | After ... != ... [true] |
-| Switch.cs:16:13:16:19 | After case ...: [no-match] | Switch.cs:27:13:27:39 | After case ...: [match] |
-| Switch.cs:16:13:16:19 | After case ...: [no-match] | Switch.cs:27:13:27:39 | After case ...: [no-match] |
-| Switch.cs:16:13:16:19 | After case ...: [no-match] | Switch.cs:27:13:27:39 | case ...: |
-| Switch.cs:16:13:16:19 | After case ...: [no-match] | Switch.cs:30:13:30:20 | After default: [match] |
-| Switch.cs:18:13:18:22 | After case ...: [match] | Switch.cs:18:13:18:22 | After case ...: [match] |
-| Switch.cs:18:13:18:22 | After case ...: [no-match] | Switch.cs:18:13:18:22 | After case ...: [no-match] |
-| Switch.cs:18:13:18:22 | After case ...: [no-match] | Switch.cs:20:13:20:23 | After case ...: [match] |
-| Switch.cs:18:13:18:22 | After case ...: [no-match] | Switch.cs:20:13:20:23 | After case ...: [no-match] |
-| Switch.cs:18:13:18:22 | After case ...: [no-match] | Switch.cs:21:21:21:29 | After ... == ... [false] |
-| Switch.cs:18:13:18:22 | After case ...: [no-match] | Switch.cs:21:21:21:29 | After ... == ... [true] |
-| Switch.cs:18:13:18:22 | After case ...: [no-match] | Switch.cs:24:13:24:56 | After case ...: [match] |
-| Switch.cs:18:13:18:22 | After case ...: [no-match] | Switch.cs:24:13:24:56 | After case ...: [no-match] |
-| Switch.cs:18:13:18:22 | After case ...: [no-match] | Switch.cs:24:32:24:43 | After ... > ... [false] |
-| Switch.cs:18:13:18:22 | After case ...: [no-match] | Switch.cs:24:32:24:43 | After ... > ... [true] |
-| Switch.cs:18:13:18:22 | After case ...: [no-match] | Switch.cs:24:32:24:55 | After ... && ... [false] |
-| Switch.cs:18:13:18:22 | After case ...: [no-match] | Switch.cs:24:48:24:55 | After ... != ... [false] |
-| Switch.cs:18:13:18:22 | After case ...: [no-match] | Switch.cs:24:48:24:55 | After ... != ... [true] |
-| Switch.cs:18:13:18:22 | After case ...: [no-match] | Switch.cs:27:13:27:39 | After case ...: [match] |
-| Switch.cs:18:13:18:22 | After case ...: [no-match] | Switch.cs:27:13:27:39 | After case ...: [no-match] |
-| Switch.cs:18:13:18:22 | After case ...: [no-match] | Switch.cs:27:13:27:39 | case ...: |
-| Switch.cs:20:13:20:23 | After case ...: [match] | Switch.cs:20:13:20:23 | After case ...: [match] |
-| Switch.cs:20:13:20:23 | After case ...: [match] | Switch.cs:21:21:21:29 | After ... == ... [false] |
-| Switch.cs:20:13:20:23 | After case ...: [match] | Switch.cs:21:21:21:29 | After ... == ... [true] |
-| Switch.cs:20:13:20:23 | After case ...: [no-match] | Switch.cs:20:13:20:23 | After case ...: [no-match] |
-| Switch.cs:20:13:20:23 | After case ...: [no-match] | Switch.cs:24:13:24:56 | After case ...: [match] |
-| Switch.cs:20:13:20:23 | After case ...: [no-match] | Switch.cs:24:13:24:56 | After case ...: [no-match] |
-| Switch.cs:20:13:20:23 | After case ...: [no-match] | Switch.cs:24:32:24:43 | After ... > ... [false] |
-| Switch.cs:20:13:20:23 | After case ...: [no-match] | Switch.cs:24:32:24:43 | After ... > ... [true] |
-| Switch.cs:20:13:20:23 | After case ...: [no-match] | Switch.cs:24:32:24:55 | After ... && ... [false] |
-| Switch.cs:20:13:20:23 | After case ...: [no-match] | Switch.cs:24:48:24:55 | After ... != ... [false] |
-| Switch.cs:20:13:20:23 | After case ...: [no-match] | Switch.cs:24:48:24:55 | After ... != ... [true] |
-| Switch.cs:20:13:20:23 | After case ...: [no-match] | Switch.cs:27:13:27:39 | After case ...: [match] |
-| Switch.cs:20:13:20:23 | After case ...: [no-match] | Switch.cs:27:13:27:39 | After case ...: [no-match] |
-| Switch.cs:20:13:20:23 | After case ...: [no-match] | Switch.cs:27:13:27:39 | case ...: |
+| Switch.cs:16:18:16:18 | After 0 [match] | Switch.cs:16:18:16:18 | After 0 [match] |
+| Switch.cs:16:18:16:18 | After 0 [no-match] | Switch.cs:16:18:16:18 | After 0 [no-match] |
+| Switch.cs:16:18:16:18 | After 0 [no-match] | Switch.cs:18:18:18:21 | After null [match] |
+| Switch.cs:16:18:16:18 | After 0 [no-match] | Switch.cs:18:18:18:21 | After null [no-match] |
+| Switch.cs:16:18:16:18 | After 0 [no-match] | Switch.cs:20:18:20:22 | After Int32 i [match] |
+| Switch.cs:16:18:16:18 | After 0 [no-match] | Switch.cs:20:18:20:22 | After Int32 i [no-match] |
+| Switch.cs:16:18:16:18 | After 0 [no-match] | Switch.cs:21:21:21:29 | After ... == ... [false] |
+| Switch.cs:16:18:16:18 | After 0 [no-match] | Switch.cs:21:21:21:29 | After ... == ... [true] |
+| Switch.cs:16:18:16:18 | After 0 [no-match] | Switch.cs:24:18:24:25 | After String s [match] |
+| Switch.cs:16:18:16:18 | After 0 [no-match] | Switch.cs:24:18:24:25 | After String s [no-match] |
+| Switch.cs:16:18:16:18 | After 0 [no-match] | Switch.cs:24:32:24:43 | After ... > ... [false] |
+| Switch.cs:16:18:16:18 | After 0 [no-match] | Switch.cs:24:32:24:43 | After ... > ... [true] |
+| Switch.cs:16:18:16:18 | After 0 [no-match] | Switch.cs:24:32:24:55 | After ... && ... [false] |
+| Switch.cs:16:18:16:18 | After 0 [no-match] | Switch.cs:24:48:24:55 | After ... != ... [false] |
+| Switch.cs:16:18:16:18 | After 0 [no-match] | Switch.cs:24:48:24:55 | After ... != ... [true] |
+| Switch.cs:16:18:16:18 | After 0 [no-match] | Switch.cs:27:13:27:39 | case ...: |
+| Switch.cs:16:18:16:18 | After 0 [no-match] | Switch.cs:27:18:27:25 | After Double d [match] |
+| Switch.cs:16:18:16:18 | After 0 [no-match] | Switch.cs:27:18:27:25 | After Double d [no-match] |
+| Switch.cs:16:18:16:18 | After 0 [no-match] | Switch.cs:30:13:30:20 | After default: [match] |
+| Switch.cs:18:18:18:21 | After null [match] | Switch.cs:18:18:18:21 | After null [match] |
+| Switch.cs:18:18:18:21 | After null [no-match] | Switch.cs:18:18:18:21 | After null [no-match] |
+| Switch.cs:18:18:18:21 | After null [no-match] | Switch.cs:20:18:20:22 | After Int32 i [match] |
+| Switch.cs:18:18:18:21 | After null [no-match] | Switch.cs:20:18:20:22 | After Int32 i [no-match] |
+| Switch.cs:18:18:18:21 | After null [no-match] | Switch.cs:21:21:21:29 | After ... == ... [false] |
+| Switch.cs:18:18:18:21 | After null [no-match] | Switch.cs:21:21:21:29 | After ... == ... [true] |
+| Switch.cs:18:18:18:21 | After null [no-match] | Switch.cs:24:18:24:25 | After String s [match] |
+| Switch.cs:18:18:18:21 | After null [no-match] | Switch.cs:24:18:24:25 | After String s [no-match] |
+| Switch.cs:18:18:18:21 | After null [no-match] | Switch.cs:24:32:24:43 | After ... > ... [false] |
+| Switch.cs:18:18:18:21 | After null [no-match] | Switch.cs:24:32:24:43 | After ... > ... [true] |
+| Switch.cs:18:18:18:21 | After null [no-match] | Switch.cs:24:32:24:55 | After ... && ... [false] |
+| Switch.cs:18:18:18:21 | After null [no-match] | Switch.cs:24:48:24:55 | After ... != ... [false] |
+| Switch.cs:18:18:18:21 | After null [no-match] | Switch.cs:24:48:24:55 | After ... != ... [true] |
+| Switch.cs:18:18:18:21 | After null [no-match] | Switch.cs:27:13:27:39 | case ...: |
+| Switch.cs:18:18:18:21 | After null [no-match] | Switch.cs:27:18:27:25 | After Double d [match] |
+| Switch.cs:18:18:18:21 | After null [no-match] | Switch.cs:27:18:27:25 | After Double d [no-match] |
+| Switch.cs:20:18:20:22 | After Int32 i [match] | Switch.cs:20:18:20:22 | After Int32 i [match] |
+| Switch.cs:20:18:20:22 | After Int32 i [match] | Switch.cs:21:21:21:29 | After ... == ... [false] |
+| Switch.cs:20:18:20:22 | After Int32 i [match] | Switch.cs:21:21:21:29 | After ... == ... [true] |
+| Switch.cs:20:18:20:22 | After Int32 i [no-match] | Switch.cs:20:18:20:22 | After Int32 i [no-match] |
+| Switch.cs:20:18:20:22 | After Int32 i [no-match] | Switch.cs:24:18:24:25 | After String s [match] |
+| Switch.cs:20:18:20:22 | After Int32 i [no-match] | Switch.cs:24:18:24:25 | After String s [no-match] |
+| Switch.cs:20:18:20:22 | After Int32 i [no-match] | Switch.cs:24:32:24:43 | After ... > ... [false] |
+| Switch.cs:20:18:20:22 | After Int32 i [no-match] | Switch.cs:24:32:24:43 | After ... > ... [true] |
+| Switch.cs:20:18:20:22 | After Int32 i [no-match] | Switch.cs:24:32:24:55 | After ... && ... [false] |
+| Switch.cs:20:18:20:22 | After Int32 i [no-match] | Switch.cs:24:48:24:55 | After ... != ... [false] |
+| Switch.cs:20:18:20:22 | After Int32 i [no-match] | Switch.cs:24:48:24:55 | After ... != ... [true] |
+| Switch.cs:20:18:20:22 | After Int32 i [no-match] | Switch.cs:27:13:27:39 | case ...: |
+| Switch.cs:20:18:20:22 | After Int32 i [no-match] | Switch.cs:27:18:27:25 | After Double d [match] |
+| Switch.cs:20:18:20:22 | After Int32 i [no-match] | Switch.cs:27:18:27:25 | After Double d [no-match] |
| Switch.cs:21:21:21:29 | After ... == ... [false] | Switch.cs:21:21:21:29 | After ... == ... [false] |
| Switch.cs:21:21:21:29 | After ... == ... [true] | Switch.cs:21:21:21:29 | After ... == ... [true] |
-| Switch.cs:24:13:24:56 | After case ...: [match] | Switch.cs:24:13:24:56 | After case ...: [match] |
-| Switch.cs:24:13:24:56 | After case ...: [match] | Switch.cs:24:32:24:43 | After ... > ... [false] |
-| Switch.cs:24:13:24:56 | After case ...: [match] | Switch.cs:24:32:24:43 | After ... > ... [true] |
-| Switch.cs:24:13:24:56 | After case ...: [match] | Switch.cs:24:32:24:55 | After ... && ... [false] |
-| Switch.cs:24:13:24:56 | After case ...: [match] | Switch.cs:24:48:24:55 | After ... != ... [false] |
-| Switch.cs:24:13:24:56 | After case ...: [match] | Switch.cs:24:48:24:55 | After ... != ... [true] |
-| Switch.cs:24:13:24:56 | After case ...: [no-match] | Switch.cs:24:13:24:56 | After case ...: [no-match] |
+| Switch.cs:24:18:24:25 | After String s [match] | Switch.cs:24:18:24:25 | After String s [match] |
+| Switch.cs:24:18:24:25 | After String s [match] | Switch.cs:24:32:24:43 | After ... > ... [false] |
+| Switch.cs:24:18:24:25 | After String s [match] | Switch.cs:24:32:24:43 | After ... > ... [true] |
+| Switch.cs:24:18:24:25 | After String s [match] | Switch.cs:24:32:24:55 | After ... && ... [false] |
+| Switch.cs:24:18:24:25 | After String s [match] | Switch.cs:24:48:24:55 | After ... != ... [false] |
+| Switch.cs:24:18:24:25 | After String s [match] | Switch.cs:24:48:24:55 | After ... != ... [true] |
+| Switch.cs:24:18:24:25 | After String s [no-match] | Switch.cs:24:18:24:25 | After String s [no-match] |
| Switch.cs:24:32:24:43 | After ... > ... [false] | Switch.cs:24:32:24:43 | After ... > ... [false] |
| Switch.cs:24:32:24:43 | After ... > ... [true] | Switch.cs:24:32:24:43 | After ... > ... [true] |
| Switch.cs:24:32:24:43 | After ... > ... [true] | Switch.cs:24:48:24:55 | After ... != ... [false] |
@@ -18699,202 +18893,202 @@ blockDominance
| Switch.cs:24:32:24:55 | After ... && ... [false] | Switch.cs:24:32:24:55 | After ... && ... [false] |
| Switch.cs:24:48:24:55 | After ... != ... [false] | Switch.cs:24:48:24:55 | After ... != ... [false] |
| Switch.cs:24:48:24:55 | After ... != ... [true] | Switch.cs:24:48:24:55 | After ... != ... [true] |
-| Switch.cs:27:13:27:39 | After case ...: [match] | Switch.cs:27:13:27:39 | After case ...: [match] |
-| Switch.cs:27:13:27:39 | After case ...: [no-match] | Switch.cs:27:13:27:39 | After case ...: [no-match] |
-| Switch.cs:27:13:27:39 | case ...: | Switch.cs:27:13:27:39 | After case ...: [match] |
-| Switch.cs:27:13:27:39 | case ...: | Switch.cs:27:13:27:39 | After case ...: [no-match] |
| Switch.cs:27:13:27:39 | case ...: | Switch.cs:27:13:27:39 | case ...: |
+| Switch.cs:27:13:27:39 | case ...: | Switch.cs:27:18:27:25 | After Double d [match] |
+| Switch.cs:27:13:27:39 | case ...: | Switch.cs:27:18:27:25 | After Double d [no-match] |
+| Switch.cs:27:18:27:25 | After Double d [match] | Switch.cs:27:18:27:25 | After Double d [match] |
+| Switch.cs:27:18:27:25 | After Double d [no-match] | Switch.cs:27:18:27:25 | After Double d [no-match] |
| Switch.cs:30:13:30:20 | After default: [match] | Switch.cs:30:13:30:20 | After default: [match] |
| Switch.cs:35:10:35:11 | Entry | Switch.cs:35:10:35:11 | Entry |
| Switch.cs:44:10:44:11 | Entry | Switch.cs:44:10:44:11 | Entry |
| Switch.cs:44:10:44:11 | Entry | Switch.cs:46:9:52:9 | After switch (...) {...} |
-| Switch.cs:44:10:44:11 | Entry | Switch.cs:48:13:48:23 | After case ...: [match] |
-| Switch.cs:44:10:44:11 | Entry | Switch.cs:48:13:48:23 | After case ...: [no-match] |
-| Switch.cs:44:10:44:11 | Entry | Switch.cs:50:13:50:39 | After case ...: [match] |
-| Switch.cs:44:10:44:11 | Entry | Switch.cs:50:13:50:39 | After case ...: [no-match] |
+| Switch.cs:44:10:44:11 | Entry | Switch.cs:48:18:48:20 | After access to type Int32 [match] |
+| Switch.cs:44:10:44:11 | Entry | Switch.cs:48:18:48:20 | After access to type Int32 [no-match] |
+| Switch.cs:44:10:44:11 | Entry | Switch.cs:50:18:50:21 | After access to type Boolean [match] |
+| Switch.cs:44:10:44:11 | Entry | Switch.cs:50:18:50:21 | After access to type Boolean [no-match] |
| Switch.cs:44:10:44:11 | Entry | Switch.cs:50:30:50:38 | After ... != ... [false] |
| Switch.cs:44:10:44:11 | Entry | Switch.cs:50:30:50:38 | After ... != ... [true] |
| Switch.cs:46:9:52:9 | After switch (...) {...} | Switch.cs:46:9:52:9 | After switch (...) {...} |
-| Switch.cs:48:13:48:23 | After case ...: [match] | Switch.cs:48:13:48:23 | After case ...: [match] |
-| Switch.cs:48:13:48:23 | After case ...: [no-match] | Switch.cs:48:13:48:23 | After case ...: [no-match] |
-| Switch.cs:48:13:48:23 | After case ...: [no-match] | Switch.cs:50:13:50:39 | After case ...: [match] |
-| Switch.cs:48:13:48:23 | After case ...: [no-match] | Switch.cs:50:13:50:39 | After case ...: [no-match] |
-| Switch.cs:48:13:48:23 | After case ...: [no-match] | Switch.cs:50:30:50:38 | After ... != ... [false] |
-| Switch.cs:48:13:48:23 | After case ...: [no-match] | Switch.cs:50:30:50:38 | After ... != ... [true] |
-| Switch.cs:50:13:50:39 | After case ...: [match] | Switch.cs:50:13:50:39 | After case ...: [match] |
-| Switch.cs:50:13:50:39 | After case ...: [match] | Switch.cs:50:30:50:38 | After ... != ... [false] |
-| Switch.cs:50:13:50:39 | After case ...: [match] | Switch.cs:50:30:50:38 | After ... != ... [true] |
-| Switch.cs:50:13:50:39 | After case ...: [no-match] | Switch.cs:50:13:50:39 | After case ...: [no-match] |
+| Switch.cs:48:18:48:20 | After access to type Int32 [match] | Switch.cs:48:18:48:20 | After access to type Int32 [match] |
+| Switch.cs:48:18:48:20 | After access to type Int32 [no-match] | Switch.cs:48:18:48:20 | After access to type Int32 [no-match] |
+| Switch.cs:48:18:48:20 | After access to type Int32 [no-match] | Switch.cs:50:18:50:21 | After access to type Boolean [match] |
+| Switch.cs:48:18:48:20 | After access to type Int32 [no-match] | Switch.cs:50:18:50:21 | After access to type Boolean [no-match] |
+| Switch.cs:48:18:48:20 | After access to type Int32 [no-match] | Switch.cs:50:30:50:38 | After ... != ... [false] |
+| Switch.cs:48:18:48:20 | After access to type Int32 [no-match] | Switch.cs:50:30:50:38 | After ... != ... [true] |
+| Switch.cs:50:18:50:21 | After access to type Boolean [match] | Switch.cs:50:18:50:21 | After access to type Boolean [match] |
+| Switch.cs:50:18:50:21 | After access to type Boolean [match] | Switch.cs:50:30:50:38 | After ... != ... [false] |
+| Switch.cs:50:18:50:21 | After access to type Boolean [match] | Switch.cs:50:30:50:38 | After ... != ... [true] |
+| Switch.cs:50:18:50:21 | After access to type Boolean [no-match] | Switch.cs:50:18:50:21 | After access to type Boolean [no-match] |
| Switch.cs:50:30:50:38 | After ... != ... [false] | Switch.cs:50:30:50:38 | After ... != ... [false] |
| Switch.cs:50:30:50:38 | After ... != ... [true] | Switch.cs:50:30:50:38 | After ... != ... [true] |
| Switch.cs:55:10:55:11 | Entry | Switch.cs:55:10:55:11 | Entry |
| Switch.cs:55:10:55:11 | Entry | Switch.cs:57:9:63:9 | After switch (...) {...} |
-| Switch.cs:55:10:55:11 | Entry | Switch.cs:59:13:59:19 | After case ...: [match] |
-| Switch.cs:55:10:55:11 | Entry | Switch.cs:59:13:59:19 | After case ...: [no-match] |
-| Switch.cs:55:10:55:11 | Entry | Switch.cs:61:13:61:19 | After case ...: [match] |
-| Switch.cs:55:10:55:11 | Entry | Switch.cs:61:13:61:19 | After case ...: [no-match] |
+| Switch.cs:55:10:55:11 | Entry | Switch.cs:59:18:59:18 | After 2 [match] |
+| Switch.cs:55:10:55:11 | Entry | Switch.cs:59:18:59:18 | After 2 [no-match] |
+| Switch.cs:55:10:55:11 | Entry | Switch.cs:61:18:61:18 | After 3 [match] |
+| Switch.cs:55:10:55:11 | Entry | Switch.cs:61:18:61:18 | After 3 [no-match] |
| Switch.cs:57:9:63:9 | After switch (...) {...} | Switch.cs:57:9:63:9 | After switch (...) {...} |
-| Switch.cs:59:13:59:19 | After case ...: [match] | Switch.cs:59:13:59:19 | After case ...: [match] |
-| Switch.cs:59:13:59:19 | After case ...: [no-match] | Switch.cs:59:13:59:19 | After case ...: [no-match] |
-| Switch.cs:59:13:59:19 | After case ...: [no-match] | Switch.cs:61:13:61:19 | After case ...: [match] |
-| Switch.cs:59:13:59:19 | After case ...: [no-match] | Switch.cs:61:13:61:19 | After case ...: [no-match] |
-| Switch.cs:61:13:61:19 | After case ...: [match] | Switch.cs:61:13:61:19 | After case ...: [match] |
-| Switch.cs:61:13:61:19 | After case ...: [no-match] | Switch.cs:61:13:61:19 | After case ...: [no-match] |
+| Switch.cs:59:18:59:18 | After 2 [match] | Switch.cs:59:18:59:18 | After 2 [match] |
+| Switch.cs:59:18:59:18 | After 2 [no-match] | Switch.cs:59:18:59:18 | After 2 [no-match] |
+| Switch.cs:59:18:59:18 | After 2 [no-match] | Switch.cs:61:18:61:18 | After 3 [match] |
+| Switch.cs:59:18:59:18 | After 2 [no-match] | Switch.cs:61:18:61:18 | After 3 [no-match] |
+| Switch.cs:61:18:61:18 | After 3 [match] | Switch.cs:61:18:61:18 | After 3 [match] |
+| Switch.cs:61:18:61:18 | After 3 [no-match] | Switch.cs:61:18:61:18 | After 3 [no-match] |
| Switch.cs:66:10:66:11 | Entry | Switch.cs:66:10:66:11 | Entry |
| Switch.cs:66:10:66:11 | Entry | Switch.cs:68:9:74:9 | After switch (...) {...} |
-| Switch.cs:66:10:66:11 | Entry | Switch.cs:70:13:70:23 | After case ...: [match] |
-| Switch.cs:66:10:66:11 | Entry | Switch.cs:70:13:70:23 | After case ...: [no-match] |
-| Switch.cs:66:10:66:11 | Entry | Switch.cs:72:13:72:20 | After case ...: [match] |
-| Switch.cs:66:10:66:11 | Entry | Switch.cs:72:13:72:20 | After case ...: [no-match] |
+| Switch.cs:66:10:66:11 | Entry | Switch.cs:70:18:70:20 | After access to type Int32 [match] |
+| Switch.cs:66:10:66:11 | Entry | Switch.cs:70:18:70:20 | After access to type Int32 [no-match] |
+| Switch.cs:66:10:66:11 | Entry | Switch.cs:72:18:72:19 | After "" [match] |
+| Switch.cs:66:10:66:11 | Entry | Switch.cs:72:18:72:19 | After "" [no-match] |
| Switch.cs:68:9:74:9 | After switch (...) {...} | Switch.cs:68:9:74:9 | After switch (...) {...} |
-| Switch.cs:70:13:70:23 | After case ...: [match] | Switch.cs:70:13:70:23 | After case ...: [match] |
-| Switch.cs:70:13:70:23 | After case ...: [no-match] | Switch.cs:70:13:70:23 | After case ...: [no-match] |
-| Switch.cs:70:13:70:23 | After case ...: [no-match] | Switch.cs:72:13:72:20 | After case ...: [match] |
-| Switch.cs:70:13:70:23 | After case ...: [no-match] | Switch.cs:72:13:72:20 | After case ...: [no-match] |
-| Switch.cs:72:13:72:20 | After case ...: [match] | Switch.cs:72:13:72:20 | After case ...: [match] |
-| Switch.cs:72:13:72:20 | After case ...: [no-match] | Switch.cs:72:13:72:20 | After case ...: [no-match] |
+| Switch.cs:70:18:70:20 | After access to type Int32 [match] | Switch.cs:70:18:70:20 | After access to type Int32 [match] |
+| Switch.cs:70:18:70:20 | After access to type Int32 [no-match] | Switch.cs:70:18:70:20 | After access to type Int32 [no-match] |
+| Switch.cs:70:18:70:20 | After access to type Int32 [no-match] | Switch.cs:72:18:72:19 | After "" [match] |
+| Switch.cs:70:18:70:20 | After access to type Int32 [no-match] | Switch.cs:72:18:72:19 | After "" [no-match] |
+| Switch.cs:72:18:72:19 | After "" [match] | Switch.cs:72:18:72:19 | After "" [match] |
+| Switch.cs:72:18:72:19 | After "" [no-match] | Switch.cs:72:18:72:19 | After "" [no-match] |
| Switch.cs:77:10:77:11 | Entry | Switch.cs:77:10:77:11 | Entry |
| Switch.cs:77:10:77:11 | Entry | Switch.cs:77:10:77:11 | Normal Exit |
| Switch.cs:77:10:77:11 | Entry | Switch.cs:79:9:87:9 | After switch (...) {...} |
-| Switch.cs:77:10:77:11 | Entry | Switch.cs:81:13:81:19 | After case ...: [match] |
-| Switch.cs:77:10:77:11 | Entry | Switch.cs:81:13:81:19 | After case ...: [no-match] |
-| Switch.cs:77:10:77:11 | Entry | Switch.cs:83:13:83:19 | After case ...: [match] |
-| Switch.cs:77:10:77:11 | Entry | Switch.cs:83:13:83:19 | After case ...: [no-match] |
+| Switch.cs:77:10:77:11 | Entry | Switch.cs:81:18:81:18 | After 1 [match] |
+| Switch.cs:77:10:77:11 | Entry | Switch.cs:81:18:81:18 | After 1 [no-match] |
+| Switch.cs:77:10:77:11 | Entry | Switch.cs:83:18:83:18 | After 2 [match] |
+| Switch.cs:77:10:77:11 | Entry | Switch.cs:83:18:83:18 | After 2 [no-match] |
| Switch.cs:77:10:77:11 | Entry | Switch.cs:84:21:84:25 | After ... > ... [false] |
| Switch.cs:77:10:77:11 | Entry | Switch.cs:84:21:84:25 | After ... > ... [true] |
| Switch.cs:77:10:77:11 | Normal Exit | Switch.cs:77:10:77:11 | Normal Exit |
| Switch.cs:79:9:87:9 | After switch (...) {...} | Switch.cs:79:9:87:9 | After switch (...) {...} |
-| Switch.cs:81:13:81:19 | After case ...: [match] | Switch.cs:81:13:81:19 | After case ...: [match] |
-| Switch.cs:81:13:81:19 | After case ...: [no-match] | Switch.cs:79:9:87:9 | After switch (...) {...} |
-| Switch.cs:81:13:81:19 | After case ...: [no-match] | Switch.cs:81:13:81:19 | After case ...: [no-match] |
-| Switch.cs:81:13:81:19 | After case ...: [no-match] | Switch.cs:83:13:83:19 | After case ...: [match] |
-| Switch.cs:81:13:81:19 | After case ...: [no-match] | Switch.cs:83:13:83:19 | After case ...: [no-match] |
-| Switch.cs:81:13:81:19 | After case ...: [no-match] | Switch.cs:84:21:84:25 | After ... > ... [false] |
-| Switch.cs:81:13:81:19 | After case ...: [no-match] | Switch.cs:84:21:84:25 | After ... > ... [true] |
-| Switch.cs:83:13:83:19 | After case ...: [match] | Switch.cs:83:13:83:19 | After case ...: [match] |
-| Switch.cs:83:13:83:19 | After case ...: [match] | Switch.cs:84:21:84:25 | After ... > ... [false] |
-| Switch.cs:83:13:83:19 | After case ...: [match] | Switch.cs:84:21:84:25 | After ... > ... [true] |
-| Switch.cs:83:13:83:19 | After case ...: [no-match] | Switch.cs:83:13:83:19 | After case ...: [no-match] |
+| Switch.cs:81:18:81:18 | After 1 [match] | Switch.cs:81:18:81:18 | After 1 [match] |
+| Switch.cs:81:18:81:18 | After 1 [no-match] | Switch.cs:79:9:87:9 | After switch (...) {...} |
+| Switch.cs:81:18:81:18 | After 1 [no-match] | Switch.cs:81:18:81:18 | After 1 [no-match] |
+| Switch.cs:81:18:81:18 | After 1 [no-match] | Switch.cs:83:18:83:18 | After 2 [match] |
+| Switch.cs:81:18:81:18 | After 1 [no-match] | Switch.cs:83:18:83:18 | After 2 [no-match] |
+| Switch.cs:81:18:81:18 | After 1 [no-match] | Switch.cs:84:21:84:25 | After ... > ... [false] |
+| Switch.cs:81:18:81:18 | After 1 [no-match] | Switch.cs:84:21:84:25 | After ... > ... [true] |
+| Switch.cs:83:18:83:18 | After 2 [match] | Switch.cs:83:18:83:18 | After 2 [match] |
+| Switch.cs:83:18:83:18 | After 2 [match] | Switch.cs:84:21:84:25 | After ... > ... [false] |
+| Switch.cs:83:18:83:18 | After 2 [match] | Switch.cs:84:21:84:25 | After ... > ... [true] |
+| Switch.cs:83:18:83:18 | After 2 [no-match] | Switch.cs:83:18:83:18 | After 2 [no-match] |
| Switch.cs:84:21:84:25 | After ... > ... [false] | Switch.cs:84:21:84:25 | After ... > ... [false] |
| Switch.cs:84:21:84:25 | After ... > ... [true] | Switch.cs:84:21:84:25 | After ... > ... [true] |
| Switch.cs:91:10:91:11 | Entry | Switch.cs:91:10:91:11 | Entry |
| Switch.cs:91:10:91:11 | Entry | Switch.cs:91:10:91:11 | Normal Exit |
-| Switch.cs:91:10:91:11 | Entry | Switch.cs:95:13:95:23 | After case ...: [match] |
-| Switch.cs:91:10:91:11 | Entry | Switch.cs:95:13:95:23 | After case ...: [no-match] |
+| Switch.cs:91:10:91:11 | Entry | Switch.cs:95:18:95:20 | After access to type Int32 [match] |
+| Switch.cs:91:10:91:11 | Entry | Switch.cs:95:18:95:20 | After access to type Int32 [no-match] |
| Switch.cs:91:10:91:11 | Normal Exit | Switch.cs:91:10:91:11 | Normal Exit |
-| Switch.cs:95:13:95:23 | After case ...: [match] | Switch.cs:95:13:95:23 | After case ...: [match] |
-| Switch.cs:95:13:95:23 | After case ...: [no-match] | Switch.cs:95:13:95:23 | After case ...: [no-match] |
+| Switch.cs:95:18:95:20 | After access to type Int32 [match] | Switch.cs:95:18:95:20 | After access to type Int32 [match] |
+| Switch.cs:95:18:95:20 | After access to type Int32 [no-match] | Switch.cs:95:18:95:20 | After access to type Int32 [no-match] |
| Switch.cs:101:9:101:10 | Entry | Switch.cs:101:9:101:10 | Entry |
| Switch.cs:101:9:101:10 | Entry | Switch.cs:101:9:101:10 | Normal Exit |
| Switch.cs:101:9:101:10 | Entry | Switch.cs:103:17:103:17 | After access to parameter s [non-null] |
| Switch.cs:101:9:101:10 | Entry | Switch.cs:103:17:103:17 | After access to parameter s [null] |
| Switch.cs:101:9:101:10 | Entry | Switch.cs:103:17:103:25 | After access to property Length |
-| Switch.cs:101:9:101:10 | Entry | Switch.cs:105:13:105:19 | After case ...: [match] |
-| Switch.cs:101:9:101:10 | Entry | Switch.cs:105:13:105:19 | After case ...: [no-match] |
-| Switch.cs:101:9:101:10 | Entry | Switch.cs:106:13:106:19 | After case ...: [match] |
-| Switch.cs:101:9:101:10 | Entry | Switch.cs:106:13:106:19 | After case ...: [no-match] |
+| Switch.cs:101:9:101:10 | Entry | Switch.cs:105:18:105:18 | After 0 [match] |
+| Switch.cs:101:9:101:10 | Entry | Switch.cs:105:18:105:18 | After 0 [no-match] |
+| Switch.cs:101:9:101:10 | Entry | Switch.cs:106:18:106:18 | After 1 [match] |
+| Switch.cs:101:9:101:10 | Entry | Switch.cs:106:18:106:18 | After 1 [no-match] |
| Switch.cs:101:9:101:10 | Normal Exit | Switch.cs:101:9:101:10 | Normal Exit |
| Switch.cs:103:17:103:17 | After access to parameter s [non-null] | Switch.cs:103:17:103:17 | After access to parameter s [non-null] |
| Switch.cs:103:17:103:17 | After access to parameter s [null] | Switch.cs:103:17:103:17 | After access to parameter s [null] |
| Switch.cs:103:17:103:25 | After access to property Length | Switch.cs:101:9:101:10 | Normal Exit |
| Switch.cs:103:17:103:25 | After access to property Length | Switch.cs:103:17:103:25 | After access to property Length |
-| Switch.cs:103:17:103:25 | After access to property Length | Switch.cs:105:13:105:19 | After case ...: [match] |
-| Switch.cs:103:17:103:25 | After access to property Length | Switch.cs:105:13:105:19 | After case ...: [no-match] |
-| Switch.cs:103:17:103:25 | After access to property Length | Switch.cs:106:13:106:19 | After case ...: [match] |
-| Switch.cs:103:17:103:25 | After access to property Length | Switch.cs:106:13:106:19 | After case ...: [no-match] |
-| Switch.cs:105:13:105:19 | After case ...: [match] | Switch.cs:105:13:105:19 | After case ...: [match] |
-| Switch.cs:105:13:105:19 | After case ...: [no-match] | Switch.cs:105:13:105:19 | After case ...: [no-match] |
-| Switch.cs:105:13:105:19 | After case ...: [no-match] | Switch.cs:106:13:106:19 | After case ...: [match] |
-| Switch.cs:105:13:105:19 | After case ...: [no-match] | Switch.cs:106:13:106:19 | After case ...: [no-match] |
-| Switch.cs:106:13:106:19 | After case ...: [match] | Switch.cs:106:13:106:19 | After case ...: [match] |
-| Switch.cs:106:13:106:19 | After case ...: [no-match] | Switch.cs:106:13:106:19 | After case ...: [no-match] |
+| Switch.cs:103:17:103:25 | After access to property Length | Switch.cs:105:18:105:18 | After 0 [match] |
+| Switch.cs:103:17:103:25 | After access to property Length | Switch.cs:105:18:105:18 | After 0 [no-match] |
+| Switch.cs:103:17:103:25 | After access to property Length | Switch.cs:106:18:106:18 | After 1 [match] |
+| Switch.cs:103:17:103:25 | After access to property Length | Switch.cs:106:18:106:18 | After 1 [no-match] |
+| Switch.cs:105:18:105:18 | After 0 [match] | Switch.cs:105:18:105:18 | After 0 [match] |
+| Switch.cs:105:18:105:18 | After 0 [no-match] | Switch.cs:105:18:105:18 | After 0 [no-match] |
+| Switch.cs:105:18:105:18 | After 0 [no-match] | Switch.cs:106:18:106:18 | After 1 [match] |
+| Switch.cs:105:18:105:18 | After 0 [no-match] | Switch.cs:106:18:106:18 | After 1 [no-match] |
+| Switch.cs:106:18:106:18 | After 1 [match] | Switch.cs:106:18:106:18 | After 1 [match] |
+| Switch.cs:106:18:106:18 | After 1 [no-match] | Switch.cs:106:18:106:18 | After 1 [no-match] |
| Switch.cs:111:17:111:21 | Entry | Switch.cs:111:17:111:21 | Entry |
| Switch.cs:113:9:113:11 | Entry | Switch.cs:113:9:113:11 | Entry |
| Switch.cs:113:9:113:11 | Entry | Switch.cs:113:9:113:11 | Normal Exit |
| Switch.cs:113:9:113:11 | Entry | Switch.cs:115:9:119:9 | After switch (...) {...} |
-| Switch.cs:113:9:113:11 | Entry | Switch.cs:117:13:117:35 | After case ...: [match] |
-| Switch.cs:113:9:113:11 | Entry | Switch.cs:117:13:117:35 | After case ...: [no-match] |
+| Switch.cs:113:9:113:11 | Entry | Switch.cs:117:18:117:18 | After 3 [match] |
+| Switch.cs:113:9:113:11 | Entry | Switch.cs:117:18:117:18 | After 3 [no-match] |
| Switch.cs:113:9:113:11 | Entry | Switch.cs:117:25:117:34 | After ... == ... [false] |
| Switch.cs:113:9:113:11 | Entry | Switch.cs:117:25:117:34 | After ... == ... [true] |
-| Switch.cs:113:9:113:11 | Entry | Switch.cs:118:13:118:34 | After case ...: [match] |
-| Switch.cs:113:9:113:11 | Entry | Switch.cs:118:13:118:34 | After case ...: [no-match] |
| Switch.cs:113:9:113:11 | Entry | Switch.cs:118:13:118:34 | case ...: |
+| Switch.cs:113:9:113:11 | Entry | Switch.cs:118:18:118:18 | After 2 [match] |
+| Switch.cs:113:9:113:11 | Entry | Switch.cs:118:18:118:18 | After 2 [no-match] |
| Switch.cs:113:9:113:11 | Entry | Switch.cs:118:25:118:33 | After ... == ... [false] |
| Switch.cs:113:9:113:11 | Entry | Switch.cs:118:25:118:33 | After ... == ... [true] |
| Switch.cs:113:9:113:11 | Normal Exit | Switch.cs:113:9:113:11 | Normal Exit |
| Switch.cs:115:9:119:9 | After switch (...) {...} | Switch.cs:115:9:119:9 | After switch (...) {...} |
-| Switch.cs:117:13:117:35 | After case ...: [match] | Switch.cs:117:13:117:35 | After case ...: [match] |
-| Switch.cs:117:13:117:35 | After case ...: [match] | Switch.cs:117:25:117:34 | After ... == ... [false] |
-| Switch.cs:117:13:117:35 | After case ...: [match] | Switch.cs:117:25:117:34 | After ... == ... [true] |
-| Switch.cs:117:13:117:35 | After case ...: [no-match] | Switch.cs:117:13:117:35 | After case ...: [no-match] |
+| Switch.cs:117:18:117:18 | After 3 [match] | Switch.cs:117:18:117:18 | After 3 [match] |
+| Switch.cs:117:18:117:18 | After 3 [match] | Switch.cs:117:25:117:34 | After ... == ... [false] |
+| Switch.cs:117:18:117:18 | After 3 [match] | Switch.cs:117:25:117:34 | After ... == ... [true] |
+| Switch.cs:117:18:117:18 | After 3 [no-match] | Switch.cs:117:18:117:18 | After 3 [no-match] |
| Switch.cs:117:25:117:34 | After ... == ... [false] | Switch.cs:117:25:117:34 | After ... == ... [false] |
| Switch.cs:117:25:117:34 | After ... == ... [true] | Switch.cs:117:25:117:34 | After ... == ... [true] |
-| Switch.cs:118:13:118:34 | After case ...: [match] | Switch.cs:118:13:118:34 | After case ...: [match] |
-| Switch.cs:118:13:118:34 | After case ...: [match] | Switch.cs:118:25:118:33 | After ... == ... [false] |
-| Switch.cs:118:13:118:34 | After case ...: [match] | Switch.cs:118:25:118:33 | After ... == ... [true] |
-| Switch.cs:118:13:118:34 | After case ...: [no-match] | Switch.cs:118:13:118:34 | After case ...: [no-match] |
| Switch.cs:118:13:118:34 | case ...: | Switch.cs:115:9:119:9 | After switch (...) {...} |
-| Switch.cs:118:13:118:34 | case ...: | Switch.cs:118:13:118:34 | After case ...: [match] |
-| Switch.cs:118:13:118:34 | case ...: | Switch.cs:118:13:118:34 | After case ...: [no-match] |
| Switch.cs:118:13:118:34 | case ...: | Switch.cs:118:13:118:34 | case ...: |
+| Switch.cs:118:13:118:34 | case ...: | Switch.cs:118:18:118:18 | After 2 [match] |
+| Switch.cs:118:13:118:34 | case ...: | Switch.cs:118:18:118:18 | After 2 [no-match] |
| Switch.cs:118:13:118:34 | case ...: | Switch.cs:118:25:118:33 | After ... == ... [false] |
| Switch.cs:118:13:118:34 | case ...: | Switch.cs:118:25:118:33 | After ... == ... [true] |
+| Switch.cs:118:18:118:18 | After 2 [match] | Switch.cs:118:18:118:18 | After 2 [match] |
+| Switch.cs:118:18:118:18 | After 2 [match] | Switch.cs:118:25:118:33 | After ... == ... [false] |
+| Switch.cs:118:18:118:18 | After 2 [match] | Switch.cs:118:25:118:33 | After ... == ... [true] |
+| Switch.cs:118:18:118:18 | After 2 [no-match] | Switch.cs:118:18:118:18 | After 2 [no-match] |
| Switch.cs:118:25:118:33 | After ... == ... [false] | Switch.cs:118:25:118:33 | After ... == ... [false] |
| Switch.cs:118:25:118:33 | After ... == ... [true] | Switch.cs:118:25:118:33 | After ... == ... [true] |
| Switch.cs:123:10:123:12 | Entry | Switch.cs:123:10:123:12 | Entry |
| Switch.cs:123:10:123:12 | Entry | Switch.cs:123:10:123:12 | Normal Exit |
| Switch.cs:123:10:123:12 | Entry | Switch.cs:125:13:125:48 | After ... switch { ... } [false] |
| Switch.cs:123:10:123:12 | Entry | Switch.cs:125:13:125:48 | After ... switch { ... } [true] |
-| Switch.cs:123:10:123:12 | Entry | Switch.cs:125:24:125:34 | After ... => ... [match] |
-| Switch.cs:123:10:123:12 | Entry | Switch.cs:125:24:125:34 | After ... => ... [no-match] |
+| Switch.cs:123:10:123:12 | Entry | Switch.cs:125:24:125:29 | After Boolean b [match] |
+| Switch.cs:123:10:123:12 | Entry | Switch.cs:125:24:125:29 | After Boolean b [no-match] |
| Switch.cs:123:10:123:12 | Normal Exit | Switch.cs:123:10:123:12 | Normal Exit |
| Switch.cs:125:13:125:48 | After ... switch { ... } [false] | Switch.cs:125:13:125:48 | After ... switch { ... } [false] |
| Switch.cs:125:13:125:48 | After ... switch { ... } [true] | Switch.cs:125:13:125:48 | After ... switch { ... } [true] |
-| Switch.cs:125:24:125:34 | After ... => ... [match] | Switch.cs:125:24:125:34 | After ... => ... [match] |
-| Switch.cs:125:24:125:34 | After ... => ... [no-match] | Switch.cs:125:24:125:34 | After ... => ... [no-match] |
+| Switch.cs:125:24:125:29 | After Boolean b [match] | Switch.cs:125:24:125:29 | After Boolean b [match] |
+| Switch.cs:125:24:125:29 | After Boolean b [no-match] | Switch.cs:125:24:125:29 | After Boolean b [no-match] |
| Switch.cs:129:12:129:14 | Entry | Switch.cs:129:12:129:14 | Entry |
| Switch.cs:129:12:129:14 | Entry | Switch.cs:131:16:131:66 | After call to method ToString |
| Switch.cs:129:12:129:14 | Entry | Switch.cs:131:17:131:53 | After ... switch { ... } [non-null] |
| Switch.cs:129:12:129:14 | Entry | Switch.cs:131:17:131:53 | After ... switch { ... } [null] |
-| Switch.cs:129:12:129:14 | Entry | Switch.cs:131:28:131:40 | After ... => ... [match] |
-| Switch.cs:129:12:129:14 | Entry | Switch.cs:131:28:131:40 | After ... => ... [no-match] |
+| Switch.cs:129:12:129:14 | Entry | Switch.cs:131:28:131:35 | After String s [match] |
+| Switch.cs:129:12:129:14 | Entry | Switch.cs:131:28:131:35 | After String s [no-match] |
| Switch.cs:131:16:131:66 | After call to method ToString | Switch.cs:131:16:131:66 | After call to method ToString |
| Switch.cs:131:17:131:53 | After ... switch { ... } [non-null] | Switch.cs:131:17:131:53 | After ... switch { ... } [non-null] |
| Switch.cs:131:17:131:53 | After ... switch { ... } [null] | Switch.cs:131:17:131:53 | After ... switch { ... } [null] |
-| Switch.cs:131:28:131:40 | After ... => ... [match] | Switch.cs:131:28:131:40 | After ... => ... [match] |
-| Switch.cs:131:28:131:40 | After ... => ... [no-match] | Switch.cs:131:28:131:40 | After ... => ... [no-match] |
+| Switch.cs:131:28:131:35 | After String s [match] | Switch.cs:131:28:131:35 | After String s [match] |
+| Switch.cs:131:28:131:35 | After String s [no-match] | Switch.cs:131:28:131:35 | After String s [no-match] |
| Switch.cs:134:9:134:11 | Entry | Switch.cs:134:9:134:11 | Entry |
| Switch.cs:134:9:134:11 | Entry | Switch.cs:134:9:134:11 | Normal Exit |
-| Switch.cs:134:9:134:11 | Entry | Switch.cs:139:13:139:19 | After case ...: [match] |
-| Switch.cs:134:9:134:11 | Entry | Switch.cs:139:13:139:19 | After case ...: [no-match] |
-| Switch.cs:134:9:134:11 | Entry | Switch.cs:140:13:140:19 | After case ...: [match] |
-| Switch.cs:134:9:134:11 | Entry | Switch.cs:140:13:140:19 | After case ...: [no-match] |
+| Switch.cs:134:9:134:11 | Entry | Switch.cs:139:18:139:18 | After 1 [match] |
+| Switch.cs:134:9:134:11 | Entry | Switch.cs:139:18:139:18 | After 1 [no-match] |
+| Switch.cs:134:9:134:11 | Entry | Switch.cs:140:18:140:18 | After 2 [match] |
+| Switch.cs:134:9:134:11 | Entry | Switch.cs:140:18:140:18 | After 2 [no-match] |
| Switch.cs:134:9:134:11 | Normal Exit | Switch.cs:134:9:134:11 | Normal Exit |
-| Switch.cs:139:13:139:19 | After case ...: [match] | Switch.cs:139:13:139:19 | After case ...: [match] |
-| Switch.cs:139:13:139:19 | After case ...: [no-match] | Switch.cs:139:13:139:19 | After case ...: [no-match] |
-| Switch.cs:139:13:139:19 | After case ...: [no-match] | Switch.cs:140:13:140:19 | After case ...: [match] |
-| Switch.cs:139:13:139:19 | After case ...: [no-match] | Switch.cs:140:13:140:19 | After case ...: [no-match] |
-| Switch.cs:140:13:140:19 | After case ...: [match] | Switch.cs:140:13:140:19 | After case ...: [match] |
-| Switch.cs:140:13:140:19 | After case ...: [no-match] | Switch.cs:140:13:140:19 | After case ...: [no-match] |
+| Switch.cs:139:18:139:18 | After 1 [match] | Switch.cs:139:18:139:18 | After 1 [match] |
+| Switch.cs:139:18:139:18 | After 1 [no-match] | Switch.cs:139:18:139:18 | After 1 [no-match] |
+| Switch.cs:139:18:139:18 | After 1 [no-match] | Switch.cs:140:18:140:18 | After 2 [match] |
+| Switch.cs:139:18:139:18 | After 1 [no-match] | Switch.cs:140:18:140:18 | After 2 [no-match] |
+| Switch.cs:140:18:140:18 | After 2 [match] | Switch.cs:140:18:140:18 | After 2 [match] |
+| Switch.cs:140:18:140:18 | After 2 [no-match] | Switch.cs:140:18:140:18 | After 2 [no-match] |
| Switch.cs:144:9:144:11 | Entry | Switch.cs:144:9:144:11 | Entry |
| Switch.cs:144:9:144:11 | Entry | Switch.cs:144:9:144:11 | Normal Exit |
-| Switch.cs:144:9:144:11 | Entry | Switch.cs:148:13:148:19 | After case ...: [match] |
-| Switch.cs:144:9:144:11 | Entry | Switch.cs:148:13:148:19 | After case ...: [no-match] |
-| Switch.cs:144:9:144:11 | Entry | Switch.cs:150:13:150:19 | After case ...: [match] |
-| Switch.cs:144:9:144:11 | Entry | Switch.cs:150:13:150:19 | After case ...: [no-match] |
+| Switch.cs:144:9:144:11 | Entry | Switch.cs:148:18:148:18 | After 1 [match] |
+| Switch.cs:144:9:144:11 | Entry | Switch.cs:148:18:148:18 | After 1 [no-match] |
+| Switch.cs:144:9:144:11 | Entry | Switch.cs:150:18:150:18 | After 2 [match] |
+| Switch.cs:144:9:144:11 | Entry | Switch.cs:150:18:150:18 | After 2 [no-match] |
| Switch.cs:144:9:144:11 | Normal Exit | Switch.cs:144:9:144:11 | Normal Exit |
-| Switch.cs:148:13:148:19 | After case ...: [match] | Switch.cs:148:13:148:19 | After case ...: [match] |
-| Switch.cs:148:13:148:19 | After case ...: [no-match] | Switch.cs:148:13:148:19 | After case ...: [no-match] |
-| Switch.cs:148:13:148:19 | After case ...: [no-match] | Switch.cs:150:13:150:19 | After case ...: [match] |
-| Switch.cs:148:13:148:19 | After case ...: [no-match] | Switch.cs:150:13:150:19 | After case ...: [no-match] |
-| Switch.cs:150:13:150:19 | After case ...: [match] | Switch.cs:150:13:150:19 | After case ...: [match] |
-| Switch.cs:150:13:150:19 | After case ...: [no-match] | Switch.cs:150:13:150:19 | After case ...: [no-match] |
+| Switch.cs:148:18:148:18 | After 1 [match] | Switch.cs:148:18:148:18 | After 1 [match] |
+| Switch.cs:148:18:148:18 | After 1 [no-match] | Switch.cs:148:18:148:18 | After 1 [no-match] |
+| Switch.cs:148:18:148:18 | After 1 [no-match] | Switch.cs:150:18:150:18 | After 2 [match] |
+| Switch.cs:148:18:148:18 | After 1 [no-match] | Switch.cs:150:18:150:18 | After 2 [no-match] |
+| Switch.cs:150:18:150:18 | After 2 [match] | Switch.cs:150:18:150:18 | After 2 [match] |
+| Switch.cs:150:18:150:18 | After 2 [no-match] | Switch.cs:150:18:150:18 | After 2 [no-match] |
| Switch.cs:154:10:154:12 | Entry | Switch.cs:154:10:154:12 | Entry |
| Switch.cs:154:10:154:12 | Entry | Switch.cs:156:17:156:54 | After ... switch { ... } |
-| Switch.cs:154:10:154:12 | Entry | Switch.cs:156:28:156:38 | After ... => ... [match] |
-| Switch.cs:154:10:154:12 | Entry | Switch.cs:156:28:156:38 | After ... => ... [no-match] |
-| Switch.cs:154:10:154:12 | Entry | Switch.cs:156:41:156:52 | After ... => ... [match] |
-| Switch.cs:154:10:154:12 | Entry | Switch.cs:156:41:156:52 | After ... => ... [no-match] |
+| Switch.cs:154:10:154:12 | Entry | Switch.cs:156:28:156:31 | After true [match] |
+| Switch.cs:154:10:154:12 | Entry | Switch.cs:156:28:156:31 | After true [no-match] |
+| Switch.cs:154:10:154:12 | Entry | Switch.cs:156:41:156:45 | After false [match] |
+| Switch.cs:154:10:154:12 | Entry | Switch.cs:156:41:156:45 | After false [no-match] |
| Switch.cs:154:10:154:12 | Entry | Switch.cs:157:9:160:49 | After if (...) ... |
| Switch.cs:154:10:154:12 | Entry | Switch.cs:157:13:157:13 | After access to parameter b [false] |
| Switch.cs:154:10:154:12 | Entry | Switch.cs:157:13:157:13 | After access to parameter b [true] |
@@ -18902,38 +19096,38 @@ blockDominance
| Switch.cs:156:17:156:54 | After ... switch { ... } | Switch.cs:157:9:160:49 | After if (...) ... |
| Switch.cs:156:17:156:54 | After ... switch { ... } | Switch.cs:157:13:157:13 | After access to parameter b [false] |
| Switch.cs:156:17:156:54 | After ... switch { ... } | Switch.cs:157:13:157:13 | After access to parameter b [true] |
-| Switch.cs:156:28:156:38 | After ... => ... [match] | Switch.cs:156:28:156:38 | After ... => ... [match] |
-| Switch.cs:156:28:156:38 | After ... => ... [no-match] | Switch.cs:156:28:156:38 | After ... => ... [no-match] |
-| Switch.cs:156:28:156:38 | After ... => ... [no-match] | Switch.cs:156:41:156:52 | After ... => ... [match] |
-| Switch.cs:156:28:156:38 | After ... => ... [no-match] | Switch.cs:156:41:156:52 | After ... => ... [no-match] |
-| Switch.cs:156:41:156:52 | After ... => ... [match] | Switch.cs:156:41:156:52 | After ... => ... [match] |
-| Switch.cs:156:41:156:52 | After ... => ... [no-match] | Switch.cs:156:41:156:52 | After ... => ... [no-match] |
+| Switch.cs:156:28:156:31 | After true [match] | Switch.cs:156:28:156:31 | After true [match] |
+| Switch.cs:156:28:156:31 | After true [no-match] | Switch.cs:156:28:156:31 | After true [no-match] |
+| Switch.cs:156:28:156:31 | After true [no-match] | Switch.cs:156:41:156:45 | After false [match] |
+| Switch.cs:156:28:156:31 | After true [no-match] | Switch.cs:156:41:156:45 | After false [no-match] |
+| Switch.cs:156:41:156:45 | After false [match] | Switch.cs:156:41:156:45 | After false [match] |
+| Switch.cs:156:41:156:45 | After false [no-match] | Switch.cs:156:41:156:45 | After false [no-match] |
| Switch.cs:157:9:160:49 | After if (...) ... | Switch.cs:157:9:160:49 | After if (...) ... |
| Switch.cs:157:13:157:13 | After access to parameter b [false] | Switch.cs:157:13:157:13 | After access to parameter b [false] |
| Switch.cs:157:13:157:13 | After access to parameter b [true] | Switch.cs:157:13:157:13 | After access to parameter b [true] |
| Switch.cs:163:10:163:12 | Entry | Switch.cs:163:10:163:12 | Entry |
| Switch.cs:163:10:163:12 | Entry | Switch.cs:165:9:177:9 | After switch (...) {...} |
-| Switch.cs:163:10:163:12 | Entry | Switch.cs:167:13:167:19 | After case ...: [match] |
-| Switch.cs:163:10:163:12 | Entry | Switch.cs:167:13:167:19 | After case ...: [no-match] |
-| Switch.cs:163:10:163:12 | Entry | Switch.cs:168:13:168:19 | After case ...: [match] |
-| Switch.cs:163:10:163:12 | Entry | Switch.cs:168:13:168:19 | After case ...: [no-match] |
+| Switch.cs:163:10:163:12 | Entry | Switch.cs:167:18:167:18 | After 1 [match] |
+| Switch.cs:163:10:163:12 | Entry | Switch.cs:167:18:167:18 | After 1 [no-match] |
+| Switch.cs:163:10:163:12 | Entry | Switch.cs:168:18:168:18 | After 2 [match] |
+| Switch.cs:163:10:163:12 | Entry | Switch.cs:168:18:168:18 | After 2 [no-match] |
| Switch.cs:163:10:163:12 | Entry | Switch.cs:169:17:169:51 | ...; |
-| Switch.cs:163:10:163:12 | Entry | Switch.cs:171:13:171:19 | After case ...: [match] |
-| Switch.cs:163:10:163:12 | Entry | Switch.cs:171:13:171:19 | After case ...: [no-match] |
+| Switch.cs:163:10:163:12 | Entry | Switch.cs:171:18:171:18 | After 3 [match] |
+| Switch.cs:163:10:163:12 | Entry | Switch.cs:171:18:171:18 | After 3 [no-match] |
| Switch.cs:165:9:177:9 | After switch (...) {...} | Switch.cs:165:9:177:9 | After switch (...) {...} |
-| Switch.cs:167:13:167:19 | After case ...: [match] | Switch.cs:167:13:167:19 | After case ...: [match] |
-| Switch.cs:167:13:167:19 | After case ...: [no-match] | Switch.cs:167:13:167:19 | After case ...: [no-match] |
-| Switch.cs:167:13:167:19 | After case ...: [no-match] | Switch.cs:168:13:168:19 | After case ...: [match] |
-| Switch.cs:167:13:167:19 | After case ...: [no-match] | Switch.cs:168:13:168:19 | After case ...: [no-match] |
-| Switch.cs:167:13:167:19 | After case ...: [no-match] | Switch.cs:171:13:171:19 | After case ...: [match] |
-| Switch.cs:167:13:167:19 | After case ...: [no-match] | Switch.cs:171:13:171:19 | After case ...: [no-match] |
-| Switch.cs:168:13:168:19 | After case ...: [match] | Switch.cs:168:13:168:19 | After case ...: [match] |
-| Switch.cs:168:13:168:19 | After case ...: [no-match] | Switch.cs:168:13:168:19 | After case ...: [no-match] |
-| Switch.cs:168:13:168:19 | After case ...: [no-match] | Switch.cs:171:13:171:19 | After case ...: [match] |
-| Switch.cs:168:13:168:19 | After case ...: [no-match] | Switch.cs:171:13:171:19 | After case ...: [no-match] |
+| Switch.cs:167:18:167:18 | After 1 [match] | Switch.cs:167:18:167:18 | After 1 [match] |
+| Switch.cs:167:18:167:18 | After 1 [no-match] | Switch.cs:167:18:167:18 | After 1 [no-match] |
+| Switch.cs:167:18:167:18 | After 1 [no-match] | Switch.cs:168:18:168:18 | After 2 [match] |
+| Switch.cs:167:18:167:18 | After 1 [no-match] | Switch.cs:168:18:168:18 | After 2 [no-match] |
+| Switch.cs:167:18:167:18 | After 1 [no-match] | Switch.cs:171:18:171:18 | After 3 [match] |
+| Switch.cs:167:18:167:18 | After 1 [no-match] | Switch.cs:171:18:171:18 | After 3 [no-match] |
+| Switch.cs:168:18:168:18 | After 2 [match] | Switch.cs:168:18:168:18 | After 2 [match] |
+| Switch.cs:168:18:168:18 | After 2 [no-match] | Switch.cs:168:18:168:18 | After 2 [no-match] |
+| Switch.cs:168:18:168:18 | After 2 [no-match] | Switch.cs:171:18:171:18 | After 3 [match] |
+| Switch.cs:168:18:168:18 | After 2 [no-match] | Switch.cs:171:18:171:18 | After 3 [no-match] |
| Switch.cs:169:17:169:51 | ...; | Switch.cs:169:17:169:51 | ...; |
-| Switch.cs:171:13:171:19 | After case ...: [match] | Switch.cs:171:13:171:19 | After case ...: [match] |
-| Switch.cs:171:13:171:19 | After case ...: [no-match] | Switch.cs:171:13:171:19 | After case ...: [no-match] |
+| Switch.cs:171:18:171:18 | After 3 [match] | Switch.cs:171:18:171:18 | After 3 [match] |
+| Switch.cs:171:18:171:18 | After 3 [no-match] | Switch.cs:171:18:171:18 | After 3 [no-match] |
| TypeAccesses.cs:1:7:1:18 | Entry | TypeAccesses.cs:1:7:1:18 | Entry |
| TypeAccesses.cs:3:10:3:10 | Entry | TypeAccesses.cs:3:10:3:10 | Entry |
| TypeAccesses.cs:3:10:3:10 | Entry | TypeAccesses.cs:7:9:7:25 | After if (...) ... |
@@ -19135,75 +19329,80 @@ blockDominance
| cflow.cs:37:17:37:22 | Entry | cflow.cs:37:17:37:22 | Exit |
| cflow.cs:37:17:37:22 | Entry | cflow.cs:39:9:50:9 | After switch (...) {...} |
| cflow.cs:37:17:37:22 | Entry | cflow.cs:41:13:41:19 | After case ...: [match] |
-| cflow.cs:37:17:37:22 | Entry | cflow.cs:41:13:41:19 | After case ...: [no-match] |
+| cflow.cs:37:17:37:22 | Entry | cflow.cs:41:18:41:18 | After 1 [match] |
+| cflow.cs:37:17:37:22 | Entry | cflow.cs:41:18:41:18 | After 1 [no-match] |
| cflow.cs:37:17:37:22 | Entry | cflow.cs:44:13:44:19 | After case ...: [match] |
-| cflow.cs:37:17:37:22 | Entry | cflow.cs:44:13:44:19 | After case ...: [no-match] |
-| cflow.cs:37:17:37:22 | Entry | cflow.cs:47:13:47:19 | After case ...: [match] |
-| cflow.cs:37:17:37:22 | Entry | cflow.cs:47:13:47:19 | After case ...: [no-match] |
+| cflow.cs:37:17:37:22 | Entry | cflow.cs:44:18:44:18 | After 2 [match] |
+| cflow.cs:37:17:37:22 | Entry | cflow.cs:44:18:44:18 | After 2 [no-match] |
+| cflow.cs:37:17:37:22 | Entry | cflow.cs:47:18:47:18 | After 3 [match] |
+| cflow.cs:37:17:37:22 | Entry | cflow.cs:47:18:47:18 | After 3 [no-match] |
| cflow.cs:37:17:37:22 | Entry | cflow.cs:51:9:59:9 | After switch (...) {...} |
-| cflow.cs:37:17:37:22 | Entry | cflow.cs:53:13:53:20 | After case ...: [match] |
-| cflow.cs:37:17:37:22 | Entry | cflow.cs:53:13:53:20 | After case ...: [no-match] |
+| cflow.cs:37:17:37:22 | Entry | cflow.cs:53:18:53:19 | After 42 [match] |
+| cflow.cs:37:17:37:22 | Entry | cflow.cs:53:18:53:19 | After 42 [no-match] |
| cflow.cs:37:17:37:22 | Entry | cflow.cs:60:9:66:9 | After switch (...) {...} |
-| cflow.cs:37:17:37:22 | Entry | cflow.cs:62:13:62:19 | After case ...: [match] |
-| cflow.cs:37:17:37:22 | Entry | cflow.cs:62:13:62:19 | After case ...: [no-match] |
+| cflow.cs:37:17:37:22 | Entry | cflow.cs:62:18:62:18 | After 0 [match] |
+| cflow.cs:37:17:37:22 | Entry | cflow.cs:62:18:62:18 | After 0 [no-match] |
| cflow.cs:37:17:37:22 | Entry | cflow.cs:63:23:63:33 | After ... == ... [false] |
| cflow.cs:37:17:37:22 | Entry | cflow.cs:63:23:63:33 | After ... == ... [true] |
| cflow.cs:37:17:37:22 | Exit | cflow.cs:37:17:37:22 | Exit |
| cflow.cs:39:9:50:9 | After switch (...) {...} | cflow.cs:37:17:37:22 | Exit |
| cflow.cs:39:9:50:9 | After switch (...) {...} | cflow.cs:39:9:50:9 | After switch (...) {...} |
| cflow.cs:39:9:50:9 | After switch (...) {...} | cflow.cs:51:9:59:9 | After switch (...) {...} |
-| cflow.cs:39:9:50:9 | After switch (...) {...} | cflow.cs:53:13:53:20 | After case ...: [match] |
-| cflow.cs:39:9:50:9 | After switch (...) {...} | cflow.cs:53:13:53:20 | After case ...: [no-match] |
+| cflow.cs:39:9:50:9 | After switch (...) {...} | cflow.cs:53:18:53:19 | After 42 [match] |
+| cflow.cs:39:9:50:9 | After switch (...) {...} | cflow.cs:53:18:53:19 | After 42 [no-match] |
| cflow.cs:39:9:50:9 | After switch (...) {...} | cflow.cs:60:9:66:9 | After switch (...) {...} |
-| cflow.cs:39:9:50:9 | After switch (...) {...} | cflow.cs:62:13:62:19 | After case ...: [match] |
-| cflow.cs:39:9:50:9 | After switch (...) {...} | cflow.cs:62:13:62:19 | After case ...: [no-match] |
+| cflow.cs:39:9:50:9 | After switch (...) {...} | cflow.cs:62:18:62:18 | After 0 [match] |
+| cflow.cs:39:9:50:9 | After switch (...) {...} | cflow.cs:62:18:62:18 | After 0 [no-match] |
| cflow.cs:39:9:50:9 | After switch (...) {...} | cflow.cs:63:23:63:33 | After ... == ... [false] |
| cflow.cs:39:9:50:9 | After switch (...) {...} | cflow.cs:63:23:63:33 | After ... == ... [true] |
| cflow.cs:41:13:41:19 | After case ...: [match] | cflow.cs:41:13:41:19 | After case ...: [match] |
-| cflow.cs:41:13:41:19 | After case ...: [no-match] | cflow.cs:37:17:37:22 | Exit |
-| cflow.cs:41:13:41:19 | After case ...: [no-match] | cflow.cs:39:9:50:9 | After switch (...) {...} |
-| cflow.cs:41:13:41:19 | After case ...: [no-match] | cflow.cs:41:13:41:19 | After case ...: [no-match] |
-| cflow.cs:41:13:41:19 | After case ...: [no-match] | cflow.cs:44:13:44:19 | After case ...: [no-match] |
-| cflow.cs:41:13:41:19 | After case ...: [no-match] | cflow.cs:47:13:47:19 | After case ...: [match] |
-| cflow.cs:41:13:41:19 | After case ...: [no-match] | cflow.cs:47:13:47:19 | After case ...: [no-match] |
-| cflow.cs:41:13:41:19 | After case ...: [no-match] | cflow.cs:51:9:59:9 | After switch (...) {...} |
-| cflow.cs:41:13:41:19 | After case ...: [no-match] | cflow.cs:53:13:53:20 | After case ...: [match] |
-| cflow.cs:41:13:41:19 | After case ...: [no-match] | cflow.cs:53:13:53:20 | After case ...: [no-match] |
-| cflow.cs:41:13:41:19 | After case ...: [no-match] | cflow.cs:60:9:66:9 | After switch (...) {...} |
-| cflow.cs:41:13:41:19 | After case ...: [no-match] | cflow.cs:62:13:62:19 | After case ...: [match] |
-| cflow.cs:41:13:41:19 | After case ...: [no-match] | cflow.cs:62:13:62:19 | After case ...: [no-match] |
-| cflow.cs:41:13:41:19 | After case ...: [no-match] | cflow.cs:63:23:63:33 | After ... == ... [false] |
-| cflow.cs:41:13:41:19 | After case ...: [no-match] | cflow.cs:63:23:63:33 | After ... == ... [true] |
+| cflow.cs:41:18:41:18 | After 1 [match] | cflow.cs:41:18:41:18 | After 1 [match] |
+| cflow.cs:41:18:41:18 | After 1 [no-match] | cflow.cs:37:17:37:22 | Exit |
+| cflow.cs:41:18:41:18 | After 1 [no-match] | cflow.cs:39:9:50:9 | After switch (...) {...} |
+| cflow.cs:41:18:41:18 | After 1 [no-match] | cflow.cs:41:18:41:18 | After 1 [no-match] |
+| cflow.cs:41:18:41:18 | After 1 [no-match] | cflow.cs:44:18:44:18 | After 2 [match] |
+| cflow.cs:41:18:41:18 | After 1 [no-match] | cflow.cs:44:18:44:18 | After 2 [no-match] |
+| cflow.cs:41:18:41:18 | After 1 [no-match] | cflow.cs:47:18:47:18 | After 3 [match] |
+| cflow.cs:41:18:41:18 | After 1 [no-match] | cflow.cs:47:18:47:18 | After 3 [no-match] |
+| cflow.cs:41:18:41:18 | After 1 [no-match] | cflow.cs:51:9:59:9 | After switch (...) {...} |
+| cflow.cs:41:18:41:18 | After 1 [no-match] | cflow.cs:53:18:53:19 | After 42 [match] |
+| cflow.cs:41:18:41:18 | After 1 [no-match] | cflow.cs:53:18:53:19 | After 42 [no-match] |
+| cflow.cs:41:18:41:18 | After 1 [no-match] | cflow.cs:60:9:66:9 | After switch (...) {...} |
+| cflow.cs:41:18:41:18 | After 1 [no-match] | cflow.cs:62:18:62:18 | After 0 [match] |
+| cflow.cs:41:18:41:18 | After 1 [no-match] | cflow.cs:62:18:62:18 | After 0 [no-match] |
+| cflow.cs:41:18:41:18 | After 1 [no-match] | cflow.cs:63:23:63:33 | After ... == ... [false] |
+| cflow.cs:41:18:41:18 | After 1 [no-match] | cflow.cs:63:23:63:33 | After ... == ... [true] |
| cflow.cs:44:13:44:19 | After case ...: [match] | cflow.cs:44:13:44:19 | After case ...: [match] |
-| cflow.cs:44:13:44:19 | After case ...: [no-match] | cflow.cs:37:17:37:22 | Exit |
-| cflow.cs:44:13:44:19 | After case ...: [no-match] | cflow.cs:39:9:50:9 | After switch (...) {...} |
-| cflow.cs:44:13:44:19 | After case ...: [no-match] | cflow.cs:44:13:44:19 | After case ...: [no-match] |
-| cflow.cs:44:13:44:19 | After case ...: [no-match] | cflow.cs:47:13:47:19 | After case ...: [match] |
-| cflow.cs:44:13:44:19 | After case ...: [no-match] | cflow.cs:47:13:47:19 | After case ...: [no-match] |
-| cflow.cs:44:13:44:19 | After case ...: [no-match] | cflow.cs:51:9:59:9 | After switch (...) {...} |
-| cflow.cs:44:13:44:19 | After case ...: [no-match] | cflow.cs:53:13:53:20 | After case ...: [match] |
-| cflow.cs:44:13:44:19 | After case ...: [no-match] | cflow.cs:53:13:53:20 | After case ...: [no-match] |
-| cflow.cs:44:13:44:19 | After case ...: [no-match] | cflow.cs:60:9:66:9 | After switch (...) {...} |
-| cflow.cs:44:13:44:19 | After case ...: [no-match] | cflow.cs:62:13:62:19 | After case ...: [match] |
-| cflow.cs:44:13:44:19 | After case ...: [no-match] | cflow.cs:62:13:62:19 | After case ...: [no-match] |
-| cflow.cs:44:13:44:19 | After case ...: [no-match] | cflow.cs:63:23:63:33 | After ... == ... [false] |
-| cflow.cs:44:13:44:19 | After case ...: [no-match] | cflow.cs:63:23:63:33 | After ... == ... [true] |
-| cflow.cs:47:13:47:19 | After case ...: [match] | cflow.cs:47:13:47:19 | After case ...: [match] |
-| cflow.cs:47:13:47:19 | After case ...: [no-match] | cflow.cs:47:13:47:19 | After case ...: [no-match] |
+| cflow.cs:44:18:44:18 | After 2 [match] | cflow.cs:44:18:44:18 | After 2 [match] |
+| cflow.cs:44:18:44:18 | After 2 [no-match] | cflow.cs:37:17:37:22 | Exit |
+| cflow.cs:44:18:44:18 | After 2 [no-match] | cflow.cs:39:9:50:9 | After switch (...) {...} |
+| cflow.cs:44:18:44:18 | After 2 [no-match] | cflow.cs:44:18:44:18 | After 2 [no-match] |
+| cflow.cs:44:18:44:18 | After 2 [no-match] | cflow.cs:47:18:47:18 | After 3 [match] |
+| cflow.cs:44:18:44:18 | After 2 [no-match] | cflow.cs:47:18:47:18 | After 3 [no-match] |
+| cflow.cs:44:18:44:18 | After 2 [no-match] | cflow.cs:51:9:59:9 | After switch (...) {...} |
+| cflow.cs:44:18:44:18 | After 2 [no-match] | cflow.cs:53:18:53:19 | After 42 [match] |
+| cflow.cs:44:18:44:18 | After 2 [no-match] | cflow.cs:53:18:53:19 | After 42 [no-match] |
+| cflow.cs:44:18:44:18 | After 2 [no-match] | cflow.cs:60:9:66:9 | After switch (...) {...} |
+| cflow.cs:44:18:44:18 | After 2 [no-match] | cflow.cs:62:18:62:18 | After 0 [match] |
+| cflow.cs:44:18:44:18 | After 2 [no-match] | cflow.cs:62:18:62:18 | After 0 [no-match] |
+| cflow.cs:44:18:44:18 | After 2 [no-match] | cflow.cs:63:23:63:33 | After ... == ... [false] |
+| cflow.cs:44:18:44:18 | After 2 [no-match] | cflow.cs:63:23:63:33 | After ... == ... [true] |
+| cflow.cs:47:18:47:18 | After 3 [match] | cflow.cs:47:18:47:18 | After 3 [match] |
+| cflow.cs:47:18:47:18 | After 3 [no-match] | cflow.cs:47:18:47:18 | After 3 [no-match] |
| cflow.cs:51:9:59:9 | After switch (...) {...} | cflow.cs:37:17:37:22 | Exit |
| cflow.cs:51:9:59:9 | After switch (...) {...} | cflow.cs:51:9:59:9 | After switch (...) {...} |
| cflow.cs:51:9:59:9 | After switch (...) {...} | cflow.cs:60:9:66:9 | After switch (...) {...} |
-| cflow.cs:51:9:59:9 | After switch (...) {...} | cflow.cs:62:13:62:19 | After case ...: [match] |
-| cflow.cs:51:9:59:9 | After switch (...) {...} | cflow.cs:62:13:62:19 | After case ...: [no-match] |
+| cflow.cs:51:9:59:9 | After switch (...) {...} | cflow.cs:62:18:62:18 | After 0 [match] |
+| cflow.cs:51:9:59:9 | After switch (...) {...} | cflow.cs:62:18:62:18 | After 0 [no-match] |
| cflow.cs:51:9:59:9 | After switch (...) {...} | cflow.cs:63:23:63:33 | After ... == ... [false] |
| cflow.cs:51:9:59:9 | After switch (...) {...} | cflow.cs:63:23:63:33 | After ... == ... [true] |
-| cflow.cs:53:13:53:20 | After case ...: [match] | cflow.cs:53:13:53:20 | After case ...: [match] |
-| cflow.cs:53:13:53:20 | After case ...: [no-match] | cflow.cs:53:13:53:20 | After case ...: [no-match] |
+| cflow.cs:53:18:53:19 | After 42 [match] | cflow.cs:53:18:53:19 | After 42 [match] |
+| cflow.cs:53:18:53:19 | After 42 [no-match] | cflow.cs:53:18:53:19 | After 42 [no-match] |
| cflow.cs:60:9:66:9 | After switch (...) {...} | cflow.cs:60:9:66:9 | After switch (...) {...} |
-| cflow.cs:62:13:62:19 | After case ...: [match] | cflow.cs:62:13:62:19 | After case ...: [match] |
-| cflow.cs:62:13:62:19 | After case ...: [match] | cflow.cs:63:23:63:33 | After ... == ... [false] |
-| cflow.cs:62:13:62:19 | After case ...: [match] | cflow.cs:63:23:63:33 | After ... == ... [true] |
-| cflow.cs:62:13:62:19 | After case ...: [no-match] | cflow.cs:62:13:62:19 | After case ...: [no-match] |
+| cflow.cs:62:18:62:18 | After 0 [match] | cflow.cs:62:18:62:18 | After 0 [match] |
+| cflow.cs:62:18:62:18 | After 0 [match] | cflow.cs:63:23:63:33 | After ... == ... [false] |
+| cflow.cs:62:18:62:18 | After 0 [match] | cflow.cs:63:23:63:33 | After ... == ... [true] |
+| cflow.cs:62:18:62:18 | After 0 [no-match] | cflow.cs:62:18:62:18 | After 0 [no-match] |
| cflow.cs:63:23:63:33 | After ... == ... [false] | cflow.cs:63:23:63:33 | After ... == ... [false] |
| cflow.cs:63:23:63:33 | After ... == ... [true] | cflow.cs:63:23:63:33 | After ... == ... [true] |
| cflow.cs:70:18:70:18 | Entry | cflow.cs:70:18:70:18 | Entry |
@@ -19588,12 +19787,12 @@ blockDominance
| cflow.cs:240:10:240:13 | Entry | cflow.cs:244:13:244:28 | After ... > ... [false] |
| cflow.cs:240:10:240:13 | Entry | cflow.cs:244:13:244:28 | After ... > ... [true] |
| cflow.cs:240:10:240:13 | Entry | cflow.cs:246:9:258:9 | After switch (...) {...} |
-| cflow.cs:240:10:240:13 | Entry | cflow.cs:248:13:248:19 | After case ...: [match] |
-| cflow.cs:240:10:240:13 | Entry | cflow.cs:248:13:248:19 | After case ...: [no-match] |
-| cflow.cs:240:10:240:13 | Entry | cflow.cs:250:13:250:19 | After case ...: [match] |
-| cflow.cs:240:10:240:13 | Entry | cflow.cs:250:13:250:19 | After case ...: [no-match] |
-| cflow.cs:240:10:240:13 | Entry | cflow.cs:253:13:253:19 | After case ...: [match] |
-| cflow.cs:240:10:240:13 | Entry | cflow.cs:253:13:253:19 | After case ...: [no-match] |
+| cflow.cs:240:10:240:13 | Entry | cflow.cs:248:18:248:18 | After 0 [match] |
+| cflow.cs:240:10:240:13 | Entry | cflow.cs:248:18:248:18 | After 0 [no-match] |
+| cflow.cs:240:10:240:13 | Entry | cflow.cs:250:18:250:18 | After 1 [match] |
+| cflow.cs:240:10:240:13 | Entry | cflow.cs:250:18:250:18 | After 1 [no-match] |
+| cflow.cs:240:10:240:13 | Entry | cflow.cs:253:18:253:18 | After 2 [match] |
+| cflow.cs:240:10:240:13 | Entry | cflow.cs:253:18:253:18 | After 2 [no-match] |
| cflow.cs:240:10:240:13 | Entry | cflow.cs:255:13:255:20 | After default: [match] |
| cflow.cs:242:5:242:9 | Label: | cflow.cs:242:5:242:9 | Label: |
| cflow.cs:242:5:242:9 | Label: | cflow.cs:242:12:242:41 | After if (...) ... |
@@ -19602,49 +19801,49 @@ blockDominance
| cflow.cs:242:5:242:9 | Label: | cflow.cs:244:13:244:28 | After ... > ... [false] |
| cflow.cs:242:5:242:9 | Label: | cflow.cs:244:13:244:28 | After ... > ... [true] |
| cflow.cs:242:5:242:9 | Label: | cflow.cs:246:9:258:9 | After switch (...) {...} |
-| cflow.cs:242:5:242:9 | Label: | cflow.cs:248:13:248:19 | After case ...: [match] |
-| cflow.cs:242:5:242:9 | Label: | cflow.cs:248:13:248:19 | After case ...: [no-match] |
-| cflow.cs:242:5:242:9 | Label: | cflow.cs:250:13:250:19 | After case ...: [match] |
-| cflow.cs:242:5:242:9 | Label: | cflow.cs:250:13:250:19 | After case ...: [no-match] |
-| cflow.cs:242:5:242:9 | Label: | cflow.cs:253:13:253:19 | After case ...: [match] |
-| cflow.cs:242:5:242:9 | Label: | cflow.cs:253:13:253:19 | After case ...: [no-match] |
+| cflow.cs:242:5:242:9 | Label: | cflow.cs:248:18:248:18 | After 0 [match] |
+| cflow.cs:242:5:242:9 | Label: | cflow.cs:248:18:248:18 | After 0 [no-match] |
+| cflow.cs:242:5:242:9 | Label: | cflow.cs:250:18:250:18 | After 1 [match] |
+| cflow.cs:242:5:242:9 | Label: | cflow.cs:250:18:250:18 | After 1 [no-match] |
+| cflow.cs:242:5:242:9 | Label: | cflow.cs:253:18:253:18 | After 2 [match] |
+| cflow.cs:242:5:242:9 | Label: | cflow.cs:253:18:253:18 | After 2 [no-match] |
| cflow.cs:242:5:242:9 | Label: | cflow.cs:255:13:255:20 | After default: [match] |
| cflow.cs:242:12:242:41 | After if (...) ... | cflow.cs:242:12:242:41 | After if (...) ... |
| cflow.cs:242:12:242:41 | After if (...) ... | cflow.cs:244:13:244:28 | After ... > ... [false] |
| cflow.cs:242:12:242:41 | After if (...) ... | cflow.cs:244:13:244:28 | After ... > ... [true] |
| cflow.cs:242:12:242:41 | After if (...) ... | cflow.cs:246:9:258:9 | After switch (...) {...} |
-| cflow.cs:242:12:242:41 | After if (...) ... | cflow.cs:248:13:248:19 | After case ...: [match] |
-| cflow.cs:242:12:242:41 | After if (...) ... | cflow.cs:248:13:248:19 | After case ...: [no-match] |
-| cflow.cs:242:12:242:41 | After if (...) ... | cflow.cs:250:13:250:19 | After case ...: [match] |
-| cflow.cs:242:12:242:41 | After if (...) ... | cflow.cs:250:13:250:19 | After case ...: [no-match] |
-| cflow.cs:242:12:242:41 | After if (...) ... | cflow.cs:253:13:253:19 | After case ...: [match] |
-| cflow.cs:242:12:242:41 | After if (...) ... | cflow.cs:253:13:253:19 | After case ...: [no-match] |
+| cflow.cs:242:12:242:41 | After if (...) ... | cflow.cs:248:18:248:18 | After 0 [match] |
+| cflow.cs:242:12:242:41 | After if (...) ... | cflow.cs:248:18:248:18 | After 0 [no-match] |
+| cflow.cs:242:12:242:41 | After if (...) ... | cflow.cs:250:18:250:18 | After 1 [match] |
+| cflow.cs:242:12:242:41 | After if (...) ... | cflow.cs:250:18:250:18 | After 1 [no-match] |
+| cflow.cs:242:12:242:41 | After if (...) ... | cflow.cs:253:18:253:18 | After 2 [match] |
+| cflow.cs:242:12:242:41 | After if (...) ... | cflow.cs:253:18:253:18 | After 2 [no-match] |
| cflow.cs:242:12:242:41 | After if (...) ... | cflow.cs:255:13:255:20 | After default: [match] |
| cflow.cs:242:19:242:35 | After ... == ... [false] | cflow.cs:242:19:242:35 | After ... == ... [false] |
| cflow.cs:242:19:242:35 | After ... == ... [true] | cflow.cs:242:19:242:35 | After ... == ... [true] |
| cflow.cs:244:13:244:28 | After ... > ... [false] | cflow.cs:244:13:244:28 | After ... > ... [false] |
| cflow.cs:244:13:244:28 | After ... > ... [false] | cflow.cs:246:9:258:9 | After switch (...) {...} |
-| cflow.cs:244:13:244:28 | After ... > ... [false] | cflow.cs:248:13:248:19 | After case ...: [match] |
-| cflow.cs:244:13:244:28 | After ... > ... [false] | cflow.cs:248:13:248:19 | After case ...: [no-match] |
-| cflow.cs:244:13:244:28 | After ... > ... [false] | cflow.cs:250:13:250:19 | After case ...: [match] |
-| cflow.cs:244:13:244:28 | After ... > ... [false] | cflow.cs:250:13:250:19 | After case ...: [no-match] |
-| cflow.cs:244:13:244:28 | After ... > ... [false] | cflow.cs:253:13:253:19 | After case ...: [match] |
-| cflow.cs:244:13:244:28 | After ... > ... [false] | cflow.cs:253:13:253:19 | After case ...: [no-match] |
+| cflow.cs:244:13:244:28 | After ... > ... [false] | cflow.cs:248:18:248:18 | After 0 [match] |
+| cflow.cs:244:13:244:28 | After ... > ... [false] | cflow.cs:248:18:248:18 | After 0 [no-match] |
+| cflow.cs:244:13:244:28 | After ... > ... [false] | cflow.cs:250:18:250:18 | After 1 [match] |
+| cflow.cs:244:13:244:28 | After ... > ... [false] | cflow.cs:250:18:250:18 | After 1 [no-match] |
+| cflow.cs:244:13:244:28 | After ... > ... [false] | cflow.cs:253:18:253:18 | After 2 [match] |
+| cflow.cs:244:13:244:28 | After ... > ... [false] | cflow.cs:253:18:253:18 | After 2 [no-match] |
| cflow.cs:244:13:244:28 | After ... > ... [false] | cflow.cs:255:13:255:20 | After default: [match] |
| cflow.cs:244:13:244:28 | After ... > ... [true] | cflow.cs:244:13:244:28 | After ... > ... [true] |
| cflow.cs:246:9:258:9 | After switch (...) {...} | cflow.cs:246:9:258:9 | After switch (...) {...} |
-| cflow.cs:248:13:248:19 | After case ...: [match] | cflow.cs:248:13:248:19 | After case ...: [match] |
-| cflow.cs:248:13:248:19 | After case ...: [no-match] | cflow.cs:248:13:248:19 | After case ...: [no-match] |
-| cflow.cs:248:13:248:19 | After case ...: [no-match] | cflow.cs:250:13:250:19 | After case ...: [match] |
-| cflow.cs:248:13:248:19 | After case ...: [no-match] | cflow.cs:250:13:250:19 | After case ...: [no-match] |
-| cflow.cs:248:13:248:19 | After case ...: [no-match] | cflow.cs:253:13:253:19 | After case ...: [match] |
-| cflow.cs:248:13:248:19 | After case ...: [no-match] | cflow.cs:253:13:253:19 | After case ...: [no-match] |
-| cflow.cs:250:13:250:19 | After case ...: [match] | cflow.cs:250:13:250:19 | After case ...: [match] |
-| cflow.cs:250:13:250:19 | After case ...: [no-match] | cflow.cs:250:13:250:19 | After case ...: [no-match] |
-| cflow.cs:250:13:250:19 | After case ...: [no-match] | cflow.cs:253:13:253:19 | After case ...: [match] |
-| cflow.cs:250:13:250:19 | After case ...: [no-match] | cflow.cs:253:13:253:19 | After case ...: [no-match] |
-| cflow.cs:253:13:253:19 | After case ...: [match] | cflow.cs:253:13:253:19 | After case ...: [match] |
-| cflow.cs:253:13:253:19 | After case ...: [no-match] | cflow.cs:253:13:253:19 | After case ...: [no-match] |
+| cflow.cs:248:18:248:18 | After 0 [match] | cflow.cs:248:18:248:18 | After 0 [match] |
+| cflow.cs:248:18:248:18 | After 0 [no-match] | cflow.cs:248:18:248:18 | After 0 [no-match] |
+| cflow.cs:248:18:248:18 | After 0 [no-match] | cflow.cs:250:18:250:18 | After 1 [match] |
+| cflow.cs:248:18:248:18 | After 0 [no-match] | cflow.cs:250:18:250:18 | After 1 [no-match] |
+| cflow.cs:248:18:248:18 | After 0 [no-match] | cflow.cs:253:18:253:18 | After 2 [match] |
+| cflow.cs:248:18:248:18 | After 0 [no-match] | cflow.cs:253:18:253:18 | After 2 [no-match] |
+| cflow.cs:250:18:250:18 | After 1 [match] | cflow.cs:250:18:250:18 | After 1 [match] |
+| cflow.cs:250:18:250:18 | After 1 [no-match] | cflow.cs:250:18:250:18 | After 1 [no-match] |
+| cflow.cs:250:18:250:18 | After 1 [no-match] | cflow.cs:253:18:253:18 | After 2 [match] |
+| cflow.cs:250:18:250:18 | After 1 [no-match] | cflow.cs:253:18:253:18 | After 2 [no-match] |
+| cflow.cs:253:18:253:18 | After 2 [match] | cflow.cs:253:18:253:18 | After 2 [match] |
+| cflow.cs:253:18:253:18 | After 2 [no-match] | cflow.cs:253:18:253:18 | After 2 [no-match] |
| cflow.cs:255:13:255:20 | After default: [match] | cflow.cs:255:13:255:20 | After default: [match] |
| cflow.cs:261:49:261:53 | Entry | cflow.cs:261:49:261:53 | Entry |
| cflow.cs:261:49:261:53 | Entry | cflow.cs:261:49:261:53 | Exceptional Exit |
@@ -22546,34 +22745,34 @@ postBlockDominance
| Patterns.cs:20:9:38:9 | After switch (...) {...} | Patterns.cs:16:18:16:28 | After ... is ... [false] |
| Patterns.cs:20:9:38:9 | After switch (...) {...} | Patterns.cs:16:18:16:28 | [MatchTrue] ... is ... |
| Patterns.cs:20:9:38:9 | After switch (...) {...} | Patterns.cs:20:9:38:9 | After switch (...) {...} |
-| Patterns.cs:20:9:38:9 | After switch (...) {...} | Patterns.cs:22:13:22:23 | After case ...: [match] |
-| Patterns.cs:20:9:38:9 | After switch (...) {...} | Patterns.cs:22:13:22:23 | After case ...: [no-match] |
-| Patterns.cs:20:9:38:9 | After switch (...) {...} | Patterns.cs:24:13:24:36 | After case ...: [match] |
-| Patterns.cs:20:9:38:9 | After switch (...) {...} | Patterns.cs:24:13:24:36 | After case ...: [no-match] |
+| Patterns.cs:20:9:38:9 | After switch (...) {...} | Patterns.cs:22:18:22:22 | After "xyz" [match] |
+| Patterns.cs:20:9:38:9 | After switch (...) {...} | Patterns.cs:22:18:22:22 | After "xyz" [no-match] |
+| Patterns.cs:20:9:38:9 | After switch (...) {...} | Patterns.cs:24:18:24:23 | After Int32 i2 [match] |
+| Patterns.cs:20:9:38:9 | After switch (...) {...} | Patterns.cs:24:18:24:23 | After Int32 i2 [no-match] |
| Patterns.cs:20:9:38:9 | After switch (...) {...} | Patterns.cs:24:30:24:35 | After ... > ... [false] |
| Patterns.cs:20:9:38:9 | After switch (...) {...} | Patterns.cs:24:30:24:35 | After ... > ... [true] |
-| Patterns.cs:20:9:38:9 | After switch (...) {...} | Patterns.cs:27:13:27:24 | After case ...: [match] |
-| Patterns.cs:20:9:38:9 | After switch (...) {...} | Patterns.cs:27:13:27:24 | After case ...: [no-match] |
| Patterns.cs:20:9:38:9 | After switch (...) {...} | Patterns.cs:27:13:27:24 | case ...: |
-| Patterns.cs:20:9:38:9 | After switch (...) {...} | Patterns.cs:30:13:30:27 | After case ...: [match] |
-| Patterns.cs:20:9:38:9 | After switch (...) {...} | Patterns.cs:30:13:30:27 | After case ...: [no-match] |
-| Patterns.cs:20:9:38:9 | After switch (...) {...} | Patterns.cs:33:13:33:24 | After case ...: [match] |
-| Patterns.cs:20:9:38:9 | After switch (...) {...} | Patterns.cs:33:13:33:24 | After case ...: [no-match] |
-| Patterns.cs:22:13:22:23 | After case ...: [match] | Patterns.cs:22:13:22:23 | After case ...: [match] |
-| Patterns.cs:22:13:22:23 | After case ...: [no-match] | Patterns.cs:22:13:22:23 | After case ...: [no-match] |
-| Patterns.cs:24:13:24:36 | After case ...: [match] | Patterns.cs:24:13:24:36 | After case ...: [match] |
-| Patterns.cs:24:13:24:36 | After case ...: [no-match] | Patterns.cs:24:13:24:36 | After case ...: [no-match] |
+| Patterns.cs:20:9:38:9 | After switch (...) {...} | Patterns.cs:27:18:27:23 | After Int32 i3 [match] |
+| Patterns.cs:20:9:38:9 | After switch (...) {...} | Patterns.cs:27:18:27:23 | After Int32 i3 [no-match] |
+| Patterns.cs:20:9:38:9 | After switch (...) {...} | Patterns.cs:30:18:30:26 | After String s2 [match] |
+| Patterns.cs:20:9:38:9 | After switch (...) {...} | Patterns.cs:30:18:30:26 | After String s2 [no-match] |
+| Patterns.cs:20:9:38:9 | After switch (...) {...} | Patterns.cs:33:18:33:23 | After Object v2 [match] |
+| Patterns.cs:20:9:38:9 | After switch (...) {...} | Patterns.cs:33:18:33:23 | After Object v2 [no-match] |
+| Patterns.cs:22:18:22:22 | After "xyz" [match] | Patterns.cs:22:18:22:22 | After "xyz" [match] |
+| Patterns.cs:22:18:22:22 | After "xyz" [no-match] | Patterns.cs:22:18:22:22 | After "xyz" [no-match] |
+| Patterns.cs:24:18:24:23 | After Int32 i2 [match] | Patterns.cs:24:18:24:23 | After Int32 i2 [match] |
+| Patterns.cs:24:18:24:23 | After Int32 i2 [no-match] | Patterns.cs:24:18:24:23 | After Int32 i2 [no-match] |
| Patterns.cs:24:30:24:35 | After ... > ... [false] | Patterns.cs:24:30:24:35 | After ... > ... [false] |
| Patterns.cs:24:30:24:35 | After ... > ... [true] | Patterns.cs:24:30:24:35 | After ... > ... [true] |
-| Patterns.cs:27:13:27:24 | After case ...: [match] | Patterns.cs:27:13:27:24 | After case ...: [match] |
-| Patterns.cs:27:13:27:24 | After case ...: [no-match] | Patterns.cs:27:13:27:24 | After case ...: [no-match] |
-| Patterns.cs:27:13:27:24 | case ...: | Patterns.cs:24:13:24:36 | After case ...: [no-match] |
+| Patterns.cs:27:13:27:24 | case ...: | Patterns.cs:24:18:24:23 | After Int32 i2 [no-match] |
| Patterns.cs:27:13:27:24 | case ...: | Patterns.cs:24:30:24:35 | After ... > ... [false] |
| Patterns.cs:27:13:27:24 | case ...: | Patterns.cs:27:13:27:24 | case ...: |
-| Patterns.cs:30:13:30:27 | After case ...: [match] | Patterns.cs:30:13:30:27 | After case ...: [match] |
-| Patterns.cs:30:13:30:27 | After case ...: [no-match] | Patterns.cs:30:13:30:27 | After case ...: [no-match] |
-| Patterns.cs:33:13:33:24 | After case ...: [match] | Patterns.cs:33:13:33:24 | After case ...: [match] |
-| Patterns.cs:33:13:33:24 | After case ...: [no-match] | Patterns.cs:33:13:33:24 | After case ...: [no-match] |
+| Patterns.cs:27:18:27:23 | After Int32 i3 [match] | Patterns.cs:27:18:27:23 | After Int32 i3 [match] |
+| Patterns.cs:27:18:27:23 | After Int32 i3 [no-match] | Patterns.cs:27:18:27:23 | After Int32 i3 [no-match] |
+| Patterns.cs:30:18:30:26 | After String s2 [match] | Patterns.cs:30:18:30:26 | After String s2 [match] |
+| Patterns.cs:30:18:30:26 | After String s2 [no-match] | Patterns.cs:30:18:30:26 | After String s2 [no-match] |
+| Patterns.cs:33:18:33:23 | After Object v2 [match] | Patterns.cs:33:18:33:23 | After Object v2 [match] |
+| Patterns.cs:33:18:33:23 | After Object v2 [no-match] | Patterns.cs:33:18:33:23 | After Object v2 [no-match] |
| Patterns.cs:47:24:47:25 | Entry | Patterns.cs:47:24:47:25 | Entry |
| Patterns.cs:48:9:48:20 | After ... is ... | Patterns.cs:47:24:47:25 | Entry |
| Patterns.cs:48:9:48:20 | After ... is ... | Patterns.cs:48:9:48:20 | After ... is ... |
@@ -22606,36 +22805,36 @@ postBlockDominance
| Patterns.cs:56:26:56:27 | Entry | Patterns.cs:56:26:56:27 | Entry |
| Patterns.cs:58:16:62:9 | After ... switch { ... } | Patterns.cs:56:26:56:27 | Entry |
| Patterns.cs:58:16:62:9 | After ... switch { ... } | Patterns.cs:58:16:62:9 | After ... switch { ... } |
-| Patterns.cs:58:16:62:9 | After ... switch { ... } | Patterns.cs:60:13:60:28 | After ... => ... [match] |
-| Patterns.cs:58:16:62:9 | After ... switch { ... } | Patterns.cs:60:13:60:28 | After ... => ... [no-match] |
-| Patterns.cs:60:13:60:28 | After ... => ... [match] | Patterns.cs:60:13:60:28 | After ... => ... [match] |
-| Patterns.cs:60:13:60:28 | After ... => ... [no-match] | Patterns.cs:60:13:60:28 | After ... => ... [no-match] |
+| Patterns.cs:58:16:62:9 | After ... switch { ... } | Patterns.cs:60:13:60:17 | After not ... [match] |
+| Patterns.cs:58:16:62:9 | After ... switch { ... } | Patterns.cs:60:13:60:17 | After not ... [no-match] |
+| Patterns.cs:60:13:60:17 | After not ... [match] | Patterns.cs:60:13:60:17 | After not ... [match] |
+| Patterns.cs:60:13:60:17 | After not ... [no-match] | Patterns.cs:60:13:60:17 | After not ... [no-match] |
| Patterns.cs:65:26:65:27 | Entry | Patterns.cs:65:26:65:27 | Entry |
| Patterns.cs:67:16:71:9 | After ... switch { ... } | Patterns.cs:65:26:65:27 | Entry |
| Patterns.cs:67:16:71:9 | After ... switch { ... } | Patterns.cs:67:16:71:9 | After ... switch { ... } |
-| Patterns.cs:67:16:71:9 | After ... switch { ... } | Patterns.cs:69:13:69:33 | After ... => ... [match] |
-| Patterns.cs:67:16:71:9 | After ... switch { ... } | Patterns.cs:69:13:69:33 | After ... => ... [no-match] |
-| Patterns.cs:67:16:71:9 | After ... switch { ... } | Patterns.cs:70:13:70:27 | After ... => ... [match] |
-| Patterns.cs:67:16:71:9 | After ... switch { ... } | Patterns.cs:70:13:70:27 | After ... => ... [no-match] |
-| Patterns.cs:69:13:69:33 | After ... => ... [match] | Patterns.cs:69:13:69:33 | After ... => ... [match] |
-| Patterns.cs:69:13:69:33 | After ... => ... [no-match] | Patterns.cs:69:13:69:33 | After ... => ... [no-match] |
-| Patterns.cs:70:13:70:27 | After ... => ... [match] | Patterns.cs:70:13:70:27 | After ... => ... [match] |
-| Patterns.cs:70:13:70:27 | After ... => ... [no-match] | Patterns.cs:70:13:70:27 | After ... => ... [no-match] |
+| Patterns.cs:67:16:71:9 | After ... switch { ... } | Patterns.cs:69:13:69:17 | After not ... [match] |
+| Patterns.cs:67:16:71:9 | After ... switch { ... } | Patterns.cs:69:13:69:17 | After not ... [no-match] |
+| Patterns.cs:67:16:71:9 | After ... switch { ... } | Patterns.cs:70:13:70:13 | After 2 [match] |
+| Patterns.cs:67:16:71:9 | After ... switch { ... } | Patterns.cs:70:13:70:13 | After 2 [no-match] |
+| Patterns.cs:69:13:69:17 | After not ... [match] | Patterns.cs:69:13:69:17 | After not ... [match] |
+| Patterns.cs:69:13:69:17 | After not ... [no-match] | Patterns.cs:69:13:69:17 | After not ... [no-match] |
+| Patterns.cs:70:13:70:13 | After 2 [match] | Patterns.cs:70:13:70:13 | After 2 [match] |
+| Patterns.cs:70:13:70:13 | After 2 [no-match] | Patterns.cs:70:13:70:13 | After 2 [no-match] |
| Patterns.cs:74:26:74:27 | Entry | Patterns.cs:74:26:74:27 | Entry |
| Patterns.cs:76:16:82:9 | After ... switch { ... } | Patterns.cs:74:26:74:27 | Entry |
| Patterns.cs:76:16:82:9 | After ... switch { ... } | Patterns.cs:76:16:82:9 | After ... switch { ... } |
-| Patterns.cs:76:16:82:9 | After ... switch { ... } | Patterns.cs:78:13:78:24 | After ... => ... [match] |
-| Patterns.cs:76:16:82:9 | After ... switch { ... } | Patterns.cs:78:13:78:24 | After ... => ... [no-match] |
-| Patterns.cs:76:16:82:9 | After ... switch { ... } | Patterns.cs:79:13:79:24 | After ... => ... [match] |
-| Patterns.cs:76:16:82:9 | After ... switch { ... } | Patterns.cs:79:13:79:24 | After ... => ... [no-match] |
-| Patterns.cs:76:16:82:9 | After ... switch { ... } | Patterns.cs:80:13:80:20 | After ... => ... [match] |
-| Patterns.cs:76:16:82:9 | After ... switch { ... } | Patterns.cs:80:13:80:20 | After ... => ... [no-match] |
-| Patterns.cs:78:13:78:24 | After ... => ... [match] | Patterns.cs:78:13:78:24 | After ... => ... [match] |
-| Patterns.cs:78:13:78:24 | After ... => ... [no-match] | Patterns.cs:78:13:78:24 | After ... => ... [no-match] |
-| Patterns.cs:79:13:79:24 | After ... => ... [match] | Patterns.cs:79:13:79:24 | After ... => ... [match] |
-| Patterns.cs:79:13:79:24 | After ... => ... [no-match] | Patterns.cs:79:13:79:24 | After ... => ... [no-match] |
-| Patterns.cs:80:13:80:20 | After ... => ... [match] | Patterns.cs:80:13:80:20 | After ... => ... [match] |
-| Patterns.cs:80:13:80:20 | After ... => ... [no-match] | Patterns.cs:80:13:80:20 | After ... => ... [no-match] |
+| Patterns.cs:76:16:82:9 | After ... switch { ... } | Patterns.cs:78:13:78:15 | After > ... [match] |
+| Patterns.cs:76:16:82:9 | After ... switch { ... } | Patterns.cs:78:13:78:15 | After > ... [no-match] |
+| Patterns.cs:76:16:82:9 | After ... switch { ... } | Patterns.cs:79:13:79:15 | After < ... [match] |
+| Patterns.cs:76:16:82:9 | After ... switch { ... } | Patterns.cs:79:13:79:15 | After < ... [no-match] |
+| Patterns.cs:76:16:82:9 | After ... switch { ... } | Patterns.cs:80:13:80:13 | After 1 [match] |
+| Patterns.cs:76:16:82:9 | After ... switch { ... } | Patterns.cs:80:13:80:13 | After 1 [no-match] |
+| Patterns.cs:78:13:78:15 | After > ... [match] | Patterns.cs:78:13:78:15 | After > ... [match] |
+| Patterns.cs:78:13:78:15 | After > ... [no-match] | Patterns.cs:78:13:78:15 | After > ... [no-match] |
+| Patterns.cs:79:13:79:15 | After < ... [match] | Patterns.cs:79:13:79:15 | After < ... [match] |
+| Patterns.cs:79:13:79:15 | After < ... [no-match] | Patterns.cs:79:13:79:15 | After < ... [no-match] |
+| Patterns.cs:80:13:80:13 | After 1 [match] | Patterns.cs:80:13:80:13 | After 1 [match] |
+| Patterns.cs:80:13:80:13 | After 1 [no-match] | Patterns.cs:80:13:80:13 | After 1 [no-match] |
| Patterns.cs:85:26:85:27 | Entry | Patterns.cs:85:26:85:27 | Entry |
| Patterns.cs:85:39:85:53 | After ... is ... [false] | Patterns.cs:85:39:85:53 | After ... is ... [false] |
| Patterns.cs:85:39:85:53 | [MatchTrue] ... is ... | Patterns.cs:85:39:85:53 | [MatchTrue] ... is ... |
@@ -22682,38 +22881,39 @@ postBlockDominance
| Switch.cs:10:10:10:11 | Exit | Switch.cs:10:10:10:11 | Exit |
| Switch.cs:10:10:10:11 | Normal Exit | Switch.cs:10:10:10:11 | Entry |
| Switch.cs:10:10:10:11 | Normal Exit | Switch.cs:10:10:10:11 | Normal Exit |
-| Switch.cs:10:10:10:11 | Normal Exit | Switch.cs:14:13:14:21 | After case ...: [match] |
-| Switch.cs:10:10:10:11 | Normal Exit | Switch.cs:14:13:14:21 | After case ...: [no-match] |
-| Switch.cs:10:10:10:11 | Normal Exit | Switch.cs:16:13:16:19 | After case ...: [no-match] |
-| Switch.cs:10:10:10:11 | Normal Exit | Switch.cs:18:13:18:22 | After case ...: [match] |
-| Switch.cs:10:10:10:11 | Normal Exit | Switch.cs:18:13:18:22 | After case ...: [no-match] |
-| Switch.cs:10:10:10:11 | Normal Exit | Switch.cs:20:13:20:23 | After case ...: [match] |
-| Switch.cs:10:10:10:11 | Normal Exit | Switch.cs:20:13:20:23 | After case ...: [no-match] |
+| Switch.cs:10:10:10:11 | Normal Exit | Switch.cs:14:18:14:20 | After "a" [match] |
+| Switch.cs:10:10:10:11 | Normal Exit | Switch.cs:14:18:14:20 | After "a" [no-match] |
+| Switch.cs:10:10:10:11 | Normal Exit | Switch.cs:16:18:16:18 | After 0 [no-match] |
+| Switch.cs:10:10:10:11 | Normal Exit | Switch.cs:18:18:18:21 | After null [match] |
+| Switch.cs:10:10:10:11 | Normal Exit | Switch.cs:18:18:18:21 | After null [no-match] |
+| Switch.cs:10:10:10:11 | Normal Exit | Switch.cs:20:18:20:22 | After Int32 i [match] |
+| Switch.cs:10:10:10:11 | Normal Exit | Switch.cs:20:18:20:22 | After Int32 i [no-match] |
| Switch.cs:10:10:10:11 | Normal Exit | Switch.cs:21:21:21:29 | After ... == ... [true] |
-| Switch.cs:10:10:10:11 | Normal Exit | Switch.cs:24:13:24:56 | After case ...: [match] |
-| Switch.cs:10:10:10:11 | Normal Exit | Switch.cs:24:13:24:56 | After case ...: [no-match] |
+| Switch.cs:10:10:10:11 | Normal Exit | Switch.cs:24:18:24:25 | After String s [match] |
+| Switch.cs:10:10:10:11 | Normal Exit | Switch.cs:24:18:24:25 | After String s [no-match] |
| Switch.cs:10:10:10:11 | Normal Exit | Switch.cs:24:32:24:43 | After ... > ... [false] |
| Switch.cs:10:10:10:11 | Normal Exit | Switch.cs:24:32:24:43 | After ... > ... [true] |
| Switch.cs:10:10:10:11 | Normal Exit | Switch.cs:24:32:24:55 | After ... && ... [false] |
| Switch.cs:10:10:10:11 | Normal Exit | Switch.cs:24:48:24:55 | After ... != ... [false] |
| Switch.cs:10:10:10:11 | Normal Exit | Switch.cs:24:48:24:55 | After ... != ... [true] |
-| Switch.cs:10:10:10:11 | Normal Exit | Switch.cs:27:13:27:39 | After case ...: [no-match] |
| Switch.cs:10:10:10:11 | Normal Exit | Switch.cs:27:13:27:39 | case ...: |
+| Switch.cs:10:10:10:11 | Normal Exit | Switch.cs:27:18:27:25 | After Double d [no-match] |
| Switch.cs:10:10:10:11 | Normal Exit | Switch.cs:30:13:30:20 | After default: [match] |
-| Switch.cs:14:13:14:21 | After case ...: [match] | Switch.cs:14:13:14:21 | After case ...: [match] |
-| Switch.cs:14:13:14:21 | After case ...: [no-match] | Switch.cs:14:13:14:21 | After case ...: [no-match] |
+| Switch.cs:14:18:14:20 | After "a" [match] | Switch.cs:14:18:14:20 | After "a" [match] |
+| Switch.cs:14:18:14:20 | After "a" [no-match] | Switch.cs:14:18:14:20 | After "a" [no-match] |
| Switch.cs:16:13:16:19 | After case ...: [match] | Switch.cs:16:13:16:19 | After case ...: [match] |
-| Switch.cs:16:13:16:19 | After case ...: [no-match] | Switch.cs:14:13:14:21 | After case ...: [no-match] |
-| Switch.cs:16:13:16:19 | After case ...: [no-match] | Switch.cs:16:13:16:19 | After case ...: [no-match] |
-| Switch.cs:18:13:18:22 | After case ...: [match] | Switch.cs:18:13:18:22 | After case ...: [match] |
-| Switch.cs:18:13:18:22 | After case ...: [no-match] | Switch.cs:18:13:18:22 | After case ...: [no-match] |
-| Switch.cs:20:13:20:23 | After case ...: [match] | Switch.cs:20:13:20:23 | After case ...: [match] |
-| Switch.cs:20:13:20:23 | After case ...: [no-match] | Switch.cs:20:13:20:23 | After case ...: [no-match] |
+| Switch.cs:16:18:16:18 | After 0 [match] | Switch.cs:16:18:16:18 | After 0 [match] |
+| Switch.cs:16:18:16:18 | After 0 [no-match] | Switch.cs:14:18:14:20 | After "a" [no-match] |
+| Switch.cs:16:18:16:18 | After 0 [no-match] | Switch.cs:16:18:16:18 | After 0 [no-match] |
+| Switch.cs:18:18:18:21 | After null [match] | Switch.cs:18:18:18:21 | After null [match] |
+| Switch.cs:18:18:18:21 | After null [no-match] | Switch.cs:18:18:18:21 | After null [no-match] |
+| Switch.cs:20:18:20:22 | After Int32 i [match] | Switch.cs:20:18:20:22 | After Int32 i [match] |
+| Switch.cs:20:18:20:22 | After Int32 i [no-match] | Switch.cs:20:18:20:22 | After Int32 i [no-match] |
| Switch.cs:21:21:21:29 | After ... == ... [false] | Switch.cs:21:21:21:29 | After ... == ... [false] |
-| Switch.cs:21:21:21:29 | After ... == ... [true] | Switch.cs:20:13:20:23 | After case ...: [match] |
+| Switch.cs:21:21:21:29 | After ... == ... [true] | Switch.cs:20:18:20:22 | After Int32 i [match] |
| Switch.cs:21:21:21:29 | After ... == ... [true] | Switch.cs:21:21:21:29 | After ... == ... [true] |
-| Switch.cs:24:13:24:56 | After case ...: [match] | Switch.cs:24:13:24:56 | After case ...: [match] |
-| Switch.cs:24:13:24:56 | After case ...: [no-match] | Switch.cs:24:13:24:56 | After case ...: [no-match] |
+| Switch.cs:24:18:24:25 | After String s [match] | Switch.cs:24:18:24:25 | After String s [match] |
+| Switch.cs:24:18:24:25 | After String s [no-match] | Switch.cs:24:18:24:25 | After String s [no-match] |
| Switch.cs:24:32:24:43 | After ... > ... [false] | Switch.cs:24:32:24:43 | After ... > ... [false] |
| Switch.cs:24:32:24:43 | After ... > ... [true] | Switch.cs:24:32:24:43 | After ... > ... [true] |
| Switch.cs:24:32:24:55 | After ... && ... [false] | Switch.cs:24:32:24:43 | After ... > ... [false] |
@@ -22721,136 +22921,136 @@ postBlockDominance
| Switch.cs:24:32:24:55 | After ... && ... [false] | Switch.cs:24:48:24:55 | After ... != ... [false] |
| Switch.cs:24:48:24:55 | After ... != ... [false] | Switch.cs:24:48:24:55 | After ... != ... [false] |
| Switch.cs:24:48:24:55 | After ... != ... [true] | Switch.cs:24:48:24:55 | After ... != ... [true] |
-| Switch.cs:27:13:27:39 | After case ...: [match] | Switch.cs:27:13:27:39 | After case ...: [match] |
-| Switch.cs:27:13:27:39 | After case ...: [no-match] | Switch.cs:24:13:24:56 | After case ...: [no-match] |
-| Switch.cs:27:13:27:39 | After case ...: [no-match] | Switch.cs:24:32:24:43 | After ... > ... [false] |
-| Switch.cs:27:13:27:39 | After case ...: [no-match] | Switch.cs:24:32:24:55 | After ... && ... [false] |
-| Switch.cs:27:13:27:39 | After case ...: [no-match] | Switch.cs:24:48:24:55 | After ... != ... [false] |
-| Switch.cs:27:13:27:39 | After case ...: [no-match] | Switch.cs:27:13:27:39 | After case ...: [no-match] |
-| Switch.cs:27:13:27:39 | After case ...: [no-match] | Switch.cs:27:13:27:39 | case ...: |
-| Switch.cs:27:13:27:39 | case ...: | Switch.cs:24:13:24:56 | After case ...: [no-match] |
+| Switch.cs:27:13:27:39 | case ...: | Switch.cs:24:18:24:25 | After String s [no-match] |
| Switch.cs:27:13:27:39 | case ...: | Switch.cs:24:32:24:43 | After ... > ... [false] |
| Switch.cs:27:13:27:39 | case ...: | Switch.cs:24:32:24:55 | After ... && ... [false] |
| Switch.cs:27:13:27:39 | case ...: | Switch.cs:24:48:24:55 | After ... != ... [false] |
| Switch.cs:27:13:27:39 | case ...: | Switch.cs:27:13:27:39 | case ...: |
-| Switch.cs:30:13:30:20 | After default: [match] | Switch.cs:18:13:18:22 | After case ...: [match] |
-| Switch.cs:30:13:30:20 | After default: [match] | Switch.cs:24:13:24:56 | After case ...: [no-match] |
+| Switch.cs:27:18:27:25 | After Double d [match] | Switch.cs:27:18:27:25 | After Double d [match] |
+| Switch.cs:27:18:27:25 | After Double d [no-match] | Switch.cs:24:18:24:25 | After String s [no-match] |
+| Switch.cs:27:18:27:25 | After Double d [no-match] | Switch.cs:24:32:24:43 | After ... > ... [false] |
+| Switch.cs:27:18:27:25 | After Double d [no-match] | Switch.cs:24:32:24:55 | After ... && ... [false] |
+| Switch.cs:27:18:27:25 | After Double d [no-match] | Switch.cs:24:48:24:55 | After ... != ... [false] |
+| Switch.cs:27:18:27:25 | After Double d [no-match] | Switch.cs:27:13:27:39 | case ...: |
+| Switch.cs:27:18:27:25 | After Double d [no-match] | Switch.cs:27:18:27:25 | After Double d [no-match] |
+| Switch.cs:30:13:30:20 | After default: [match] | Switch.cs:18:18:18:21 | After null [match] |
+| Switch.cs:30:13:30:20 | After default: [match] | Switch.cs:24:18:24:25 | After String s [no-match] |
| Switch.cs:30:13:30:20 | After default: [match] | Switch.cs:24:32:24:43 | After ... > ... [false] |
| Switch.cs:30:13:30:20 | After default: [match] | Switch.cs:24:32:24:55 | After ... && ... [false] |
| Switch.cs:30:13:30:20 | After default: [match] | Switch.cs:24:48:24:55 | After ... != ... [false] |
-| Switch.cs:30:13:30:20 | After default: [match] | Switch.cs:27:13:27:39 | After case ...: [no-match] |
| Switch.cs:30:13:30:20 | After default: [match] | Switch.cs:27:13:27:39 | case ...: |
+| Switch.cs:30:13:30:20 | After default: [match] | Switch.cs:27:18:27:25 | After Double d [no-match] |
| Switch.cs:30:13:30:20 | After default: [match] | Switch.cs:30:13:30:20 | After default: [match] |
| Switch.cs:35:10:35:11 | Entry | Switch.cs:35:10:35:11 | Entry |
| Switch.cs:44:10:44:11 | Entry | Switch.cs:44:10:44:11 | Entry |
| Switch.cs:46:9:52:9 | After switch (...) {...} | Switch.cs:44:10:44:11 | Entry |
| Switch.cs:46:9:52:9 | After switch (...) {...} | Switch.cs:46:9:52:9 | After switch (...) {...} |
-| Switch.cs:46:9:52:9 | After switch (...) {...} | Switch.cs:48:13:48:23 | After case ...: [match] |
-| Switch.cs:46:9:52:9 | After switch (...) {...} | Switch.cs:48:13:48:23 | After case ...: [no-match] |
-| Switch.cs:46:9:52:9 | After switch (...) {...} | Switch.cs:50:13:50:39 | After case ...: [match] |
-| Switch.cs:46:9:52:9 | After switch (...) {...} | Switch.cs:50:13:50:39 | After case ...: [no-match] |
+| Switch.cs:46:9:52:9 | After switch (...) {...} | Switch.cs:48:18:48:20 | After access to type Int32 [match] |
+| Switch.cs:46:9:52:9 | After switch (...) {...} | Switch.cs:48:18:48:20 | After access to type Int32 [no-match] |
+| Switch.cs:46:9:52:9 | After switch (...) {...} | Switch.cs:50:18:50:21 | After access to type Boolean [match] |
+| Switch.cs:46:9:52:9 | After switch (...) {...} | Switch.cs:50:18:50:21 | After access to type Boolean [no-match] |
| Switch.cs:46:9:52:9 | After switch (...) {...} | Switch.cs:50:30:50:38 | After ... != ... [false] |
| Switch.cs:46:9:52:9 | After switch (...) {...} | Switch.cs:50:30:50:38 | After ... != ... [true] |
-| Switch.cs:48:13:48:23 | After case ...: [match] | Switch.cs:48:13:48:23 | After case ...: [match] |
-| Switch.cs:48:13:48:23 | After case ...: [no-match] | Switch.cs:48:13:48:23 | After case ...: [no-match] |
-| Switch.cs:50:13:50:39 | After case ...: [match] | Switch.cs:50:13:50:39 | After case ...: [match] |
-| Switch.cs:50:13:50:39 | After case ...: [no-match] | Switch.cs:50:13:50:39 | After case ...: [no-match] |
+| Switch.cs:48:18:48:20 | After access to type Int32 [match] | Switch.cs:48:18:48:20 | After access to type Int32 [match] |
+| Switch.cs:48:18:48:20 | After access to type Int32 [no-match] | Switch.cs:48:18:48:20 | After access to type Int32 [no-match] |
+| Switch.cs:50:18:50:21 | After access to type Boolean [match] | Switch.cs:50:18:50:21 | After access to type Boolean [match] |
+| Switch.cs:50:18:50:21 | After access to type Boolean [no-match] | Switch.cs:50:18:50:21 | After access to type Boolean [no-match] |
| Switch.cs:50:30:50:38 | After ... != ... [false] | Switch.cs:50:30:50:38 | After ... != ... [false] |
| Switch.cs:50:30:50:38 | After ... != ... [true] | Switch.cs:50:30:50:38 | After ... != ... [true] |
| Switch.cs:55:10:55:11 | Entry | Switch.cs:55:10:55:11 | Entry |
| Switch.cs:57:9:63:9 | After switch (...) {...} | Switch.cs:55:10:55:11 | Entry |
| Switch.cs:57:9:63:9 | After switch (...) {...} | Switch.cs:57:9:63:9 | After switch (...) {...} |
-| Switch.cs:57:9:63:9 | After switch (...) {...} | Switch.cs:59:13:59:19 | After case ...: [match] |
-| Switch.cs:57:9:63:9 | After switch (...) {...} | Switch.cs:59:13:59:19 | After case ...: [no-match] |
-| Switch.cs:57:9:63:9 | After switch (...) {...} | Switch.cs:61:13:61:19 | After case ...: [match] |
-| Switch.cs:57:9:63:9 | After switch (...) {...} | Switch.cs:61:13:61:19 | After case ...: [no-match] |
-| Switch.cs:59:13:59:19 | After case ...: [match] | Switch.cs:59:13:59:19 | After case ...: [match] |
-| Switch.cs:59:13:59:19 | After case ...: [no-match] | Switch.cs:59:13:59:19 | After case ...: [no-match] |
-| Switch.cs:61:13:61:19 | After case ...: [match] | Switch.cs:61:13:61:19 | After case ...: [match] |
-| Switch.cs:61:13:61:19 | After case ...: [no-match] | Switch.cs:61:13:61:19 | After case ...: [no-match] |
+| Switch.cs:57:9:63:9 | After switch (...) {...} | Switch.cs:59:18:59:18 | After 2 [match] |
+| Switch.cs:57:9:63:9 | After switch (...) {...} | Switch.cs:59:18:59:18 | After 2 [no-match] |
+| Switch.cs:57:9:63:9 | After switch (...) {...} | Switch.cs:61:18:61:18 | After 3 [match] |
+| Switch.cs:57:9:63:9 | After switch (...) {...} | Switch.cs:61:18:61:18 | After 3 [no-match] |
+| Switch.cs:59:18:59:18 | After 2 [match] | Switch.cs:59:18:59:18 | After 2 [match] |
+| Switch.cs:59:18:59:18 | After 2 [no-match] | Switch.cs:59:18:59:18 | After 2 [no-match] |
+| Switch.cs:61:18:61:18 | After 3 [match] | Switch.cs:61:18:61:18 | After 3 [match] |
+| Switch.cs:61:18:61:18 | After 3 [no-match] | Switch.cs:61:18:61:18 | After 3 [no-match] |
| Switch.cs:66:10:66:11 | Entry | Switch.cs:66:10:66:11 | Entry |
| Switch.cs:68:9:74:9 | After switch (...) {...} | Switch.cs:66:10:66:11 | Entry |
| Switch.cs:68:9:74:9 | After switch (...) {...} | Switch.cs:68:9:74:9 | After switch (...) {...} |
-| Switch.cs:68:9:74:9 | After switch (...) {...} | Switch.cs:70:13:70:23 | After case ...: [match] |
-| Switch.cs:68:9:74:9 | After switch (...) {...} | Switch.cs:70:13:70:23 | After case ...: [no-match] |
-| Switch.cs:68:9:74:9 | After switch (...) {...} | Switch.cs:72:13:72:20 | After case ...: [match] |
-| Switch.cs:68:9:74:9 | After switch (...) {...} | Switch.cs:72:13:72:20 | After case ...: [no-match] |
-| Switch.cs:70:13:70:23 | After case ...: [match] | Switch.cs:70:13:70:23 | After case ...: [match] |
-| Switch.cs:70:13:70:23 | After case ...: [no-match] | Switch.cs:70:13:70:23 | After case ...: [no-match] |
-| Switch.cs:72:13:72:20 | After case ...: [match] | Switch.cs:72:13:72:20 | After case ...: [match] |
-| Switch.cs:72:13:72:20 | After case ...: [no-match] | Switch.cs:72:13:72:20 | After case ...: [no-match] |
+| Switch.cs:68:9:74:9 | After switch (...) {...} | Switch.cs:70:18:70:20 | After access to type Int32 [match] |
+| Switch.cs:68:9:74:9 | After switch (...) {...} | Switch.cs:70:18:70:20 | After access to type Int32 [no-match] |
+| Switch.cs:68:9:74:9 | After switch (...) {...} | Switch.cs:72:18:72:19 | After "" [match] |
+| Switch.cs:68:9:74:9 | After switch (...) {...} | Switch.cs:72:18:72:19 | After "" [no-match] |
+| Switch.cs:70:18:70:20 | After access to type Int32 [match] | Switch.cs:70:18:70:20 | After access to type Int32 [match] |
+| Switch.cs:70:18:70:20 | After access to type Int32 [no-match] | Switch.cs:70:18:70:20 | After access to type Int32 [no-match] |
+| Switch.cs:72:18:72:19 | After "" [match] | Switch.cs:72:18:72:19 | After "" [match] |
+| Switch.cs:72:18:72:19 | After "" [no-match] | Switch.cs:72:18:72:19 | After "" [no-match] |
| Switch.cs:77:10:77:11 | Entry | Switch.cs:77:10:77:11 | Entry |
| Switch.cs:77:10:77:11 | Normal Exit | Switch.cs:77:10:77:11 | Entry |
| Switch.cs:77:10:77:11 | Normal Exit | Switch.cs:77:10:77:11 | Normal Exit |
| Switch.cs:77:10:77:11 | Normal Exit | Switch.cs:79:9:87:9 | After switch (...) {...} |
-| Switch.cs:77:10:77:11 | Normal Exit | Switch.cs:81:13:81:19 | After case ...: [match] |
-| Switch.cs:77:10:77:11 | Normal Exit | Switch.cs:81:13:81:19 | After case ...: [no-match] |
-| Switch.cs:77:10:77:11 | Normal Exit | Switch.cs:83:13:83:19 | After case ...: [match] |
-| Switch.cs:77:10:77:11 | Normal Exit | Switch.cs:83:13:83:19 | After case ...: [no-match] |
+| Switch.cs:77:10:77:11 | Normal Exit | Switch.cs:81:18:81:18 | After 1 [match] |
+| Switch.cs:77:10:77:11 | Normal Exit | Switch.cs:81:18:81:18 | After 1 [no-match] |
+| Switch.cs:77:10:77:11 | Normal Exit | Switch.cs:83:18:83:18 | After 2 [match] |
+| Switch.cs:77:10:77:11 | Normal Exit | Switch.cs:83:18:83:18 | After 2 [no-match] |
| Switch.cs:77:10:77:11 | Normal Exit | Switch.cs:84:21:84:25 | After ... > ... [false] |
| Switch.cs:77:10:77:11 | Normal Exit | Switch.cs:84:21:84:25 | After ... > ... [true] |
| Switch.cs:79:9:87:9 | After switch (...) {...} | Switch.cs:79:9:87:9 | After switch (...) {...} |
-| Switch.cs:79:9:87:9 | After switch (...) {...} | Switch.cs:83:13:83:19 | After case ...: [no-match] |
+| Switch.cs:79:9:87:9 | After switch (...) {...} | Switch.cs:83:18:83:18 | After 2 [no-match] |
| Switch.cs:79:9:87:9 | After switch (...) {...} | Switch.cs:84:21:84:25 | After ... > ... [true] |
-| Switch.cs:81:13:81:19 | After case ...: [match] | Switch.cs:81:13:81:19 | After case ...: [match] |
-| Switch.cs:81:13:81:19 | After case ...: [no-match] | Switch.cs:81:13:81:19 | After case ...: [no-match] |
-| Switch.cs:83:13:83:19 | After case ...: [match] | Switch.cs:83:13:83:19 | After case ...: [match] |
-| Switch.cs:83:13:83:19 | After case ...: [no-match] | Switch.cs:83:13:83:19 | After case ...: [no-match] |
+| Switch.cs:81:18:81:18 | After 1 [match] | Switch.cs:81:18:81:18 | After 1 [match] |
+| Switch.cs:81:18:81:18 | After 1 [no-match] | Switch.cs:81:18:81:18 | After 1 [no-match] |
+| Switch.cs:83:18:83:18 | After 2 [match] | Switch.cs:83:18:83:18 | After 2 [match] |
+| Switch.cs:83:18:83:18 | After 2 [no-match] | Switch.cs:83:18:83:18 | After 2 [no-match] |
| Switch.cs:84:21:84:25 | After ... > ... [false] | Switch.cs:84:21:84:25 | After ... > ... [false] |
| Switch.cs:84:21:84:25 | After ... > ... [true] | Switch.cs:84:21:84:25 | After ... > ... [true] |
| Switch.cs:91:10:91:11 | Entry | Switch.cs:91:10:91:11 | Entry |
| Switch.cs:91:10:91:11 | Normal Exit | Switch.cs:91:10:91:11 | Entry |
| Switch.cs:91:10:91:11 | Normal Exit | Switch.cs:91:10:91:11 | Normal Exit |
-| Switch.cs:91:10:91:11 | Normal Exit | Switch.cs:95:13:95:23 | After case ...: [match] |
-| Switch.cs:91:10:91:11 | Normal Exit | Switch.cs:95:13:95:23 | After case ...: [no-match] |
-| Switch.cs:95:13:95:23 | After case ...: [match] | Switch.cs:95:13:95:23 | After case ...: [match] |
-| Switch.cs:95:13:95:23 | After case ...: [no-match] | Switch.cs:95:13:95:23 | After case ...: [no-match] |
+| Switch.cs:91:10:91:11 | Normal Exit | Switch.cs:95:18:95:20 | After access to type Int32 [match] |
+| Switch.cs:91:10:91:11 | Normal Exit | Switch.cs:95:18:95:20 | After access to type Int32 [no-match] |
+| Switch.cs:95:18:95:20 | After access to type Int32 [match] | Switch.cs:95:18:95:20 | After access to type Int32 [match] |
+| Switch.cs:95:18:95:20 | After access to type Int32 [no-match] | Switch.cs:95:18:95:20 | After access to type Int32 [no-match] |
| Switch.cs:101:9:101:10 | Entry | Switch.cs:101:9:101:10 | Entry |
| Switch.cs:101:9:101:10 | Normal Exit | Switch.cs:101:9:101:10 | Entry |
| Switch.cs:101:9:101:10 | Normal Exit | Switch.cs:101:9:101:10 | Normal Exit |
| Switch.cs:101:9:101:10 | Normal Exit | Switch.cs:103:17:103:17 | After access to parameter s [non-null] |
| Switch.cs:101:9:101:10 | Normal Exit | Switch.cs:103:17:103:17 | After access to parameter s [null] |
| Switch.cs:101:9:101:10 | Normal Exit | Switch.cs:103:17:103:25 | After access to property Length |
-| Switch.cs:101:9:101:10 | Normal Exit | Switch.cs:105:13:105:19 | After case ...: [match] |
-| Switch.cs:101:9:101:10 | Normal Exit | Switch.cs:105:13:105:19 | After case ...: [no-match] |
-| Switch.cs:101:9:101:10 | Normal Exit | Switch.cs:106:13:106:19 | After case ...: [match] |
-| Switch.cs:101:9:101:10 | Normal Exit | Switch.cs:106:13:106:19 | After case ...: [no-match] |
+| Switch.cs:101:9:101:10 | Normal Exit | Switch.cs:105:18:105:18 | After 0 [match] |
+| Switch.cs:101:9:101:10 | Normal Exit | Switch.cs:105:18:105:18 | After 0 [no-match] |
+| Switch.cs:101:9:101:10 | Normal Exit | Switch.cs:106:18:106:18 | After 1 [match] |
+| Switch.cs:101:9:101:10 | Normal Exit | Switch.cs:106:18:106:18 | After 1 [no-match] |
| Switch.cs:103:17:103:17 | After access to parameter s [non-null] | Switch.cs:103:17:103:17 | After access to parameter s [non-null] |
| Switch.cs:103:17:103:17 | After access to parameter s [null] | Switch.cs:103:17:103:17 | After access to parameter s [null] |
| Switch.cs:103:17:103:25 | After access to property Length | Switch.cs:101:9:101:10 | Entry |
| Switch.cs:103:17:103:25 | After access to property Length | Switch.cs:103:17:103:17 | After access to parameter s [non-null] |
| Switch.cs:103:17:103:25 | After access to property Length | Switch.cs:103:17:103:17 | After access to parameter s [null] |
| Switch.cs:103:17:103:25 | After access to property Length | Switch.cs:103:17:103:25 | After access to property Length |
-| Switch.cs:105:13:105:19 | After case ...: [match] | Switch.cs:105:13:105:19 | After case ...: [match] |
-| Switch.cs:105:13:105:19 | After case ...: [no-match] | Switch.cs:105:13:105:19 | After case ...: [no-match] |
-| Switch.cs:106:13:106:19 | After case ...: [match] | Switch.cs:106:13:106:19 | After case ...: [match] |
-| Switch.cs:106:13:106:19 | After case ...: [no-match] | Switch.cs:106:13:106:19 | After case ...: [no-match] |
+| Switch.cs:105:18:105:18 | After 0 [match] | Switch.cs:105:18:105:18 | After 0 [match] |
+| Switch.cs:105:18:105:18 | After 0 [no-match] | Switch.cs:105:18:105:18 | After 0 [no-match] |
+| Switch.cs:106:18:106:18 | After 1 [match] | Switch.cs:106:18:106:18 | After 1 [match] |
+| Switch.cs:106:18:106:18 | After 1 [no-match] | Switch.cs:106:18:106:18 | After 1 [no-match] |
| Switch.cs:111:17:111:21 | Entry | Switch.cs:111:17:111:21 | Entry |
| Switch.cs:113:9:113:11 | Entry | Switch.cs:113:9:113:11 | Entry |
| Switch.cs:113:9:113:11 | Normal Exit | Switch.cs:113:9:113:11 | Entry |
| Switch.cs:113:9:113:11 | Normal Exit | Switch.cs:113:9:113:11 | Normal Exit |
| Switch.cs:113:9:113:11 | Normal Exit | Switch.cs:115:9:119:9 | After switch (...) {...} |
-| Switch.cs:113:9:113:11 | Normal Exit | Switch.cs:117:13:117:35 | After case ...: [match] |
-| Switch.cs:113:9:113:11 | Normal Exit | Switch.cs:117:13:117:35 | After case ...: [no-match] |
+| Switch.cs:113:9:113:11 | Normal Exit | Switch.cs:117:18:117:18 | After 3 [match] |
+| Switch.cs:113:9:113:11 | Normal Exit | Switch.cs:117:18:117:18 | After 3 [no-match] |
| Switch.cs:113:9:113:11 | Normal Exit | Switch.cs:117:25:117:34 | After ... == ... [false] |
| Switch.cs:113:9:113:11 | Normal Exit | Switch.cs:117:25:117:34 | After ... == ... [true] |
-| Switch.cs:113:9:113:11 | Normal Exit | Switch.cs:118:13:118:34 | After case ...: [match] |
-| Switch.cs:113:9:113:11 | Normal Exit | Switch.cs:118:13:118:34 | After case ...: [no-match] |
| Switch.cs:113:9:113:11 | Normal Exit | Switch.cs:118:13:118:34 | case ...: |
+| Switch.cs:113:9:113:11 | Normal Exit | Switch.cs:118:18:118:18 | After 2 [match] |
+| Switch.cs:113:9:113:11 | Normal Exit | Switch.cs:118:18:118:18 | After 2 [no-match] |
| Switch.cs:113:9:113:11 | Normal Exit | Switch.cs:118:25:118:33 | After ... == ... [false] |
| Switch.cs:113:9:113:11 | Normal Exit | Switch.cs:118:25:118:33 | After ... == ... [true] |
| Switch.cs:115:9:119:9 | After switch (...) {...} | Switch.cs:115:9:119:9 | After switch (...) {...} |
-| Switch.cs:115:9:119:9 | After switch (...) {...} | Switch.cs:118:13:118:34 | After case ...: [no-match] |
+| Switch.cs:115:9:119:9 | After switch (...) {...} | Switch.cs:118:18:118:18 | After 2 [no-match] |
| Switch.cs:115:9:119:9 | After switch (...) {...} | Switch.cs:118:25:118:33 | After ... == ... [false] |
-| Switch.cs:117:13:117:35 | After case ...: [match] | Switch.cs:117:13:117:35 | After case ...: [match] |
-| Switch.cs:117:13:117:35 | After case ...: [no-match] | Switch.cs:117:13:117:35 | After case ...: [no-match] |
+| Switch.cs:117:18:117:18 | After 3 [match] | Switch.cs:117:18:117:18 | After 3 [match] |
+| Switch.cs:117:18:117:18 | After 3 [no-match] | Switch.cs:117:18:117:18 | After 3 [no-match] |
| Switch.cs:117:25:117:34 | After ... == ... [false] | Switch.cs:117:25:117:34 | After ... == ... [false] |
| Switch.cs:117:25:117:34 | After ... == ... [true] | Switch.cs:117:25:117:34 | After ... == ... [true] |
-| Switch.cs:118:13:118:34 | After case ...: [match] | Switch.cs:118:13:118:34 | After case ...: [match] |
-| Switch.cs:118:13:118:34 | After case ...: [no-match] | Switch.cs:118:13:118:34 | After case ...: [no-match] |
-| Switch.cs:118:13:118:34 | case ...: | Switch.cs:117:13:117:35 | After case ...: [no-match] |
+| Switch.cs:118:13:118:34 | case ...: | Switch.cs:117:18:117:18 | After 3 [no-match] |
| Switch.cs:118:13:118:34 | case ...: | Switch.cs:117:25:117:34 | After ... == ... [false] |
| Switch.cs:118:13:118:34 | case ...: | Switch.cs:118:13:118:34 | case ...: |
+| Switch.cs:118:18:118:18 | After 2 [match] | Switch.cs:118:18:118:18 | After 2 [match] |
+| Switch.cs:118:18:118:18 | After 2 [no-match] | Switch.cs:118:18:118:18 | After 2 [no-match] |
| Switch.cs:118:25:118:33 | After ... == ... [false] | Switch.cs:118:25:118:33 | After ... == ... [false] |
| Switch.cs:118:25:118:33 | After ... == ... [true] | Switch.cs:118:25:118:33 | After ... == ... [true] |
| Switch.cs:123:10:123:12 | Entry | Switch.cs:123:10:123:12 | Entry |
@@ -22858,62 +23058,62 @@ postBlockDominance
| Switch.cs:123:10:123:12 | Normal Exit | Switch.cs:123:10:123:12 | Normal Exit |
| Switch.cs:123:10:123:12 | Normal Exit | Switch.cs:125:13:125:48 | After ... switch { ... } [false] |
| Switch.cs:123:10:123:12 | Normal Exit | Switch.cs:125:13:125:48 | After ... switch { ... } [true] |
-| Switch.cs:123:10:123:12 | Normal Exit | Switch.cs:125:24:125:34 | After ... => ... [match] |
-| Switch.cs:123:10:123:12 | Normal Exit | Switch.cs:125:24:125:34 | After ... => ... [no-match] |
+| Switch.cs:123:10:123:12 | Normal Exit | Switch.cs:125:24:125:29 | After Boolean b [match] |
+| Switch.cs:123:10:123:12 | Normal Exit | Switch.cs:125:24:125:29 | After Boolean b [no-match] |
| Switch.cs:125:13:125:48 | After ... switch { ... } [false] | Switch.cs:125:13:125:48 | After ... switch { ... } [false] |
| Switch.cs:125:13:125:48 | After ... switch { ... } [true] | Switch.cs:125:13:125:48 | After ... switch { ... } [true] |
-| Switch.cs:125:24:125:34 | After ... => ... [match] | Switch.cs:125:24:125:34 | After ... => ... [match] |
-| Switch.cs:125:24:125:34 | After ... => ... [no-match] | Switch.cs:125:24:125:34 | After ... => ... [no-match] |
+| Switch.cs:125:24:125:29 | After Boolean b [match] | Switch.cs:125:24:125:29 | After Boolean b [match] |
+| Switch.cs:125:24:125:29 | After Boolean b [no-match] | Switch.cs:125:24:125:29 | After Boolean b [no-match] |
| Switch.cs:129:12:129:14 | Entry | Switch.cs:129:12:129:14 | Entry |
| Switch.cs:131:16:131:66 | After call to method ToString | Switch.cs:129:12:129:14 | Entry |
| Switch.cs:131:16:131:66 | After call to method ToString | Switch.cs:131:16:131:66 | After call to method ToString |
| Switch.cs:131:16:131:66 | After call to method ToString | Switch.cs:131:17:131:53 | After ... switch { ... } [non-null] |
| Switch.cs:131:16:131:66 | After call to method ToString | Switch.cs:131:17:131:53 | After ... switch { ... } [null] |
-| Switch.cs:131:16:131:66 | After call to method ToString | Switch.cs:131:28:131:40 | After ... => ... [match] |
-| Switch.cs:131:16:131:66 | After call to method ToString | Switch.cs:131:28:131:40 | After ... => ... [no-match] |
+| Switch.cs:131:16:131:66 | After call to method ToString | Switch.cs:131:28:131:35 | After String s [match] |
+| Switch.cs:131:16:131:66 | After call to method ToString | Switch.cs:131:28:131:35 | After String s [no-match] |
| Switch.cs:131:17:131:53 | After ... switch { ... } [non-null] | Switch.cs:131:17:131:53 | After ... switch { ... } [non-null] |
| Switch.cs:131:17:131:53 | After ... switch { ... } [null] | Switch.cs:131:17:131:53 | After ... switch { ... } [null] |
-| Switch.cs:131:28:131:40 | After ... => ... [match] | Switch.cs:131:28:131:40 | After ... => ... [match] |
-| Switch.cs:131:28:131:40 | After ... => ... [no-match] | Switch.cs:131:28:131:40 | After ... => ... [no-match] |
+| Switch.cs:131:28:131:35 | After String s [match] | Switch.cs:131:28:131:35 | After String s [match] |
+| Switch.cs:131:28:131:35 | After String s [no-match] | Switch.cs:131:28:131:35 | After String s [no-match] |
| Switch.cs:134:9:134:11 | Entry | Switch.cs:134:9:134:11 | Entry |
| Switch.cs:134:9:134:11 | Normal Exit | Switch.cs:134:9:134:11 | Entry |
| Switch.cs:134:9:134:11 | Normal Exit | Switch.cs:134:9:134:11 | Normal Exit |
-| Switch.cs:134:9:134:11 | Normal Exit | Switch.cs:139:13:139:19 | After case ...: [match] |
-| Switch.cs:134:9:134:11 | Normal Exit | Switch.cs:139:13:139:19 | After case ...: [no-match] |
-| Switch.cs:134:9:134:11 | Normal Exit | Switch.cs:140:13:140:19 | After case ...: [match] |
-| Switch.cs:134:9:134:11 | Normal Exit | Switch.cs:140:13:140:19 | After case ...: [no-match] |
-| Switch.cs:139:13:139:19 | After case ...: [match] | Switch.cs:139:13:139:19 | After case ...: [match] |
-| Switch.cs:139:13:139:19 | After case ...: [no-match] | Switch.cs:139:13:139:19 | After case ...: [no-match] |
-| Switch.cs:140:13:140:19 | After case ...: [match] | Switch.cs:140:13:140:19 | After case ...: [match] |
-| Switch.cs:140:13:140:19 | After case ...: [no-match] | Switch.cs:140:13:140:19 | After case ...: [no-match] |
+| Switch.cs:134:9:134:11 | Normal Exit | Switch.cs:139:18:139:18 | After 1 [match] |
+| Switch.cs:134:9:134:11 | Normal Exit | Switch.cs:139:18:139:18 | After 1 [no-match] |
+| Switch.cs:134:9:134:11 | Normal Exit | Switch.cs:140:18:140:18 | After 2 [match] |
+| Switch.cs:134:9:134:11 | Normal Exit | Switch.cs:140:18:140:18 | After 2 [no-match] |
+| Switch.cs:139:18:139:18 | After 1 [match] | Switch.cs:139:18:139:18 | After 1 [match] |
+| Switch.cs:139:18:139:18 | After 1 [no-match] | Switch.cs:139:18:139:18 | After 1 [no-match] |
+| Switch.cs:140:18:140:18 | After 2 [match] | Switch.cs:140:18:140:18 | After 2 [match] |
+| Switch.cs:140:18:140:18 | After 2 [no-match] | Switch.cs:140:18:140:18 | After 2 [no-match] |
| Switch.cs:144:9:144:11 | Entry | Switch.cs:144:9:144:11 | Entry |
| Switch.cs:144:9:144:11 | Normal Exit | Switch.cs:144:9:144:11 | Entry |
| Switch.cs:144:9:144:11 | Normal Exit | Switch.cs:144:9:144:11 | Normal Exit |
-| Switch.cs:144:9:144:11 | Normal Exit | Switch.cs:148:13:148:19 | After case ...: [match] |
-| Switch.cs:144:9:144:11 | Normal Exit | Switch.cs:148:13:148:19 | After case ...: [no-match] |
-| Switch.cs:144:9:144:11 | Normal Exit | Switch.cs:150:13:150:19 | After case ...: [match] |
-| Switch.cs:144:9:144:11 | Normal Exit | Switch.cs:150:13:150:19 | After case ...: [no-match] |
-| Switch.cs:148:13:148:19 | After case ...: [match] | Switch.cs:148:13:148:19 | After case ...: [match] |
-| Switch.cs:148:13:148:19 | After case ...: [no-match] | Switch.cs:148:13:148:19 | After case ...: [no-match] |
-| Switch.cs:150:13:150:19 | After case ...: [match] | Switch.cs:150:13:150:19 | After case ...: [match] |
-| Switch.cs:150:13:150:19 | After case ...: [no-match] | Switch.cs:150:13:150:19 | After case ...: [no-match] |
+| Switch.cs:144:9:144:11 | Normal Exit | Switch.cs:148:18:148:18 | After 1 [match] |
+| Switch.cs:144:9:144:11 | Normal Exit | Switch.cs:148:18:148:18 | After 1 [no-match] |
+| Switch.cs:144:9:144:11 | Normal Exit | Switch.cs:150:18:150:18 | After 2 [match] |
+| Switch.cs:144:9:144:11 | Normal Exit | Switch.cs:150:18:150:18 | After 2 [no-match] |
+| Switch.cs:148:18:148:18 | After 1 [match] | Switch.cs:148:18:148:18 | After 1 [match] |
+| Switch.cs:148:18:148:18 | After 1 [no-match] | Switch.cs:148:18:148:18 | After 1 [no-match] |
+| Switch.cs:150:18:150:18 | After 2 [match] | Switch.cs:150:18:150:18 | After 2 [match] |
+| Switch.cs:150:18:150:18 | After 2 [no-match] | Switch.cs:150:18:150:18 | After 2 [no-match] |
| Switch.cs:154:10:154:12 | Entry | Switch.cs:154:10:154:12 | Entry |
| Switch.cs:156:17:156:54 | After ... switch { ... } | Switch.cs:154:10:154:12 | Entry |
| Switch.cs:156:17:156:54 | After ... switch { ... } | Switch.cs:156:17:156:54 | After ... switch { ... } |
-| Switch.cs:156:17:156:54 | After ... switch { ... } | Switch.cs:156:28:156:38 | After ... => ... [match] |
-| Switch.cs:156:17:156:54 | After ... switch { ... } | Switch.cs:156:28:156:38 | After ... => ... [no-match] |
-| Switch.cs:156:17:156:54 | After ... switch { ... } | Switch.cs:156:41:156:52 | After ... => ... [match] |
-| Switch.cs:156:17:156:54 | After ... switch { ... } | Switch.cs:156:41:156:52 | After ... => ... [no-match] |
-| Switch.cs:156:28:156:38 | After ... => ... [match] | Switch.cs:156:28:156:38 | After ... => ... [match] |
-| Switch.cs:156:28:156:38 | After ... => ... [no-match] | Switch.cs:156:28:156:38 | After ... => ... [no-match] |
-| Switch.cs:156:41:156:52 | After ... => ... [match] | Switch.cs:156:41:156:52 | After ... => ... [match] |
-| Switch.cs:156:41:156:52 | After ... => ... [no-match] | Switch.cs:156:41:156:52 | After ... => ... [no-match] |
+| Switch.cs:156:17:156:54 | After ... switch { ... } | Switch.cs:156:28:156:31 | After true [match] |
+| Switch.cs:156:17:156:54 | After ... switch { ... } | Switch.cs:156:28:156:31 | After true [no-match] |
+| Switch.cs:156:17:156:54 | After ... switch { ... } | Switch.cs:156:41:156:45 | After false [match] |
+| Switch.cs:156:17:156:54 | After ... switch { ... } | Switch.cs:156:41:156:45 | After false [no-match] |
+| Switch.cs:156:28:156:31 | After true [match] | Switch.cs:156:28:156:31 | After true [match] |
+| Switch.cs:156:28:156:31 | After true [no-match] | Switch.cs:156:28:156:31 | After true [no-match] |
+| Switch.cs:156:41:156:45 | After false [match] | Switch.cs:156:41:156:45 | After false [match] |
+| Switch.cs:156:41:156:45 | After false [no-match] | Switch.cs:156:41:156:45 | After false [no-match] |
| Switch.cs:157:9:160:49 | After if (...) ... | Switch.cs:154:10:154:12 | Entry |
| Switch.cs:157:9:160:49 | After if (...) ... | Switch.cs:156:17:156:54 | After ... switch { ... } |
-| Switch.cs:157:9:160:49 | After if (...) ... | Switch.cs:156:28:156:38 | After ... => ... [match] |
-| Switch.cs:157:9:160:49 | After if (...) ... | Switch.cs:156:28:156:38 | After ... => ... [no-match] |
-| Switch.cs:157:9:160:49 | After if (...) ... | Switch.cs:156:41:156:52 | After ... => ... [match] |
-| Switch.cs:157:9:160:49 | After if (...) ... | Switch.cs:156:41:156:52 | After ... => ... [no-match] |
+| Switch.cs:157:9:160:49 | After if (...) ... | Switch.cs:156:28:156:31 | After true [match] |
+| Switch.cs:157:9:160:49 | After if (...) ... | Switch.cs:156:28:156:31 | After true [no-match] |
+| Switch.cs:157:9:160:49 | After if (...) ... | Switch.cs:156:41:156:45 | After false [match] |
+| Switch.cs:157:9:160:49 | After if (...) ... | Switch.cs:156:41:156:45 | After false [no-match] |
| Switch.cs:157:9:160:49 | After if (...) ... | Switch.cs:157:9:160:49 | After if (...) ... |
| Switch.cs:157:9:160:49 | After if (...) ... | Switch.cs:157:13:157:13 | After access to parameter b [false] |
| Switch.cs:157:9:160:49 | After if (...) ... | Switch.cs:157:13:157:13 | After access to parameter b [true] |
@@ -22922,22 +23122,22 @@ postBlockDominance
| Switch.cs:163:10:163:12 | Entry | Switch.cs:163:10:163:12 | Entry |
| Switch.cs:165:9:177:9 | After switch (...) {...} | Switch.cs:163:10:163:12 | Entry |
| Switch.cs:165:9:177:9 | After switch (...) {...} | Switch.cs:165:9:177:9 | After switch (...) {...} |
-| Switch.cs:165:9:177:9 | After switch (...) {...} | Switch.cs:167:13:167:19 | After case ...: [match] |
-| Switch.cs:165:9:177:9 | After switch (...) {...} | Switch.cs:167:13:167:19 | After case ...: [no-match] |
-| Switch.cs:165:9:177:9 | After switch (...) {...} | Switch.cs:168:13:168:19 | After case ...: [match] |
-| Switch.cs:165:9:177:9 | After switch (...) {...} | Switch.cs:168:13:168:19 | After case ...: [no-match] |
+| Switch.cs:165:9:177:9 | After switch (...) {...} | Switch.cs:167:18:167:18 | After 1 [match] |
+| Switch.cs:165:9:177:9 | After switch (...) {...} | Switch.cs:167:18:167:18 | After 1 [no-match] |
+| Switch.cs:165:9:177:9 | After switch (...) {...} | Switch.cs:168:18:168:18 | After 2 [match] |
+| Switch.cs:165:9:177:9 | After switch (...) {...} | Switch.cs:168:18:168:18 | After 2 [no-match] |
| Switch.cs:165:9:177:9 | After switch (...) {...} | Switch.cs:169:17:169:51 | ...; |
-| Switch.cs:165:9:177:9 | After switch (...) {...} | Switch.cs:171:13:171:19 | After case ...: [match] |
-| Switch.cs:165:9:177:9 | After switch (...) {...} | Switch.cs:171:13:171:19 | After case ...: [no-match] |
-| Switch.cs:167:13:167:19 | After case ...: [match] | Switch.cs:167:13:167:19 | After case ...: [match] |
-| Switch.cs:167:13:167:19 | After case ...: [no-match] | Switch.cs:167:13:167:19 | After case ...: [no-match] |
-| Switch.cs:168:13:168:19 | After case ...: [match] | Switch.cs:168:13:168:19 | After case ...: [match] |
-| Switch.cs:168:13:168:19 | After case ...: [no-match] | Switch.cs:168:13:168:19 | After case ...: [no-match] |
-| Switch.cs:169:17:169:51 | ...; | Switch.cs:167:13:167:19 | After case ...: [match] |
-| Switch.cs:169:17:169:51 | ...; | Switch.cs:168:13:168:19 | After case ...: [match] |
+| Switch.cs:165:9:177:9 | After switch (...) {...} | Switch.cs:171:18:171:18 | After 3 [match] |
+| Switch.cs:165:9:177:9 | After switch (...) {...} | Switch.cs:171:18:171:18 | After 3 [no-match] |
+| Switch.cs:167:18:167:18 | After 1 [match] | Switch.cs:167:18:167:18 | After 1 [match] |
+| Switch.cs:167:18:167:18 | After 1 [no-match] | Switch.cs:167:18:167:18 | After 1 [no-match] |
+| Switch.cs:168:18:168:18 | After 2 [match] | Switch.cs:168:18:168:18 | After 2 [match] |
+| Switch.cs:168:18:168:18 | After 2 [no-match] | Switch.cs:168:18:168:18 | After 2 [no-match] |
+| Switch.cs:169:17:169:51 | ...; | Switch.cs:167:18:167:18 | After 1 [match] |
+| Switch.cs:169:17:169:51 | ...; | Switch.cs:168:18:168:18 | After 2 [match] |
| Switch.cs:169:17:169:51 | ...; | Switch.cs:169:17:169:51 | ...; |
-| Switch.cs:171:13:171:19 | After case ...: [match] | Switch.cs:171:13:171:19 | After case ...: [match] |
-| Switch.cs:171:13:171:19 | After case ...: [no-match] | Switch.cs:171:13:171:19 | After case ...: [no-match] |
+| Switch.cs:171:18:171:18 | After 3 [match] | Switch.cs:171:18:171:18 | After 3 [match] |
+| Switch.cs:171:18:171:18 | After 3 [no-match] | Switch.cs:171:18:171:18 | After 3 [no-match] |
| TypeAccesses.cs:1:7:1:18 | Entry | TypeAccesses.cs:1:7:1:18 | Entry |
| TypeAccesses.cs:3:10:3:10 | Entry | TypeAccesses.cs:3:10:3:10 | Entry |
| TypeAccesses.cs:7:9:7:25 | After if (...) ... | TypeAccesses.cs:3:10:3:10 | Entry |
@@ -23090,47 +23290,49 @@ postBlockDominance
| cflow.cs:37:17:37:22 | Exit | cflow.cs:37:17:37:22 | Exit |
| cflow.cs:39:9:50:9 | After switch (...) {...} | cflow.cs:37:17:37:22 | Entry |
| cflow.cs:39:9:50:9 | After switch (...) {...} | cflow.cs:39:9:50:9 | After switch (...) {...} |
-| cflow.cs:39:9:50:9 | After switch (...) {...} | cflow.cs:41:13:41:19 | After case ...: [no-match] |
-| cflow.cs:39:9:50:9 | After switch (...) {...} | cflow.cs:44:13:44:19 | After case ...: [no-match] |
-| cflow.cs:39:9:50:9 | After switch (...) {...} | cflow.cs:47:13:47:19 | After case ...: [match] |
-| cflow.cs:39:9:50:9 | After switch (...) {...} | cflow.cs:47:13:47:19 | After case ...: [no-match] |
+| cflow.cs:39:9:50:9 | After switch (...) {...} | cflow.cs:41:18:41:18 | After 1 [no-match] |
+| cflow.cs:39:9:50:9 | After switch (...) {...} | cflow.cs:44:18:44:18 | After 2 [no-match] |
+| cflow.cs:39:9:50:9 | After switch (...) {...} | cflow.cs:47:18:47:18 | After 3 [match] |
+| cflow.cs:39:9:50:9 | After switch (...) {...} | cflow.cs:47:18:47:18 | After 3 [no-match] |
| cflow.cs:41:13:41:19 | After case ...: [match] | cflow.cs:41:13:41:19 | After case ...: [match] |
-| cflow.cs:41:13:41:19 | After case ...: [no-match] | cflow.cs:37:17:37:22 | Entry |
-| cflow.cs:41:13:41:19 | After case ...: [no-match] | cflow.cs:41:13:41:19 | After case ...: [no-match] |
+| cflow.cs:41:18:41:18 | After 1 [match] | cflow.cs:41:18:41:18 | After 1 [match] |
+| cflow.cs:41:18:41:18 | After 1 [no-match] | cflow.cs:37:17:37:22 | Entry |
+| cflow.cs:41:18:41:18 | After 1 [no-match] | cflow.cs:41:18:41:18 | After 1 [no-match] |
| cflow.cs:44:13:44:19 | After case ...: [match] | cflow.cs:44:13:44:19 | After case ...: [match] |
-| cflow.cs:44:13:44:19 | After case ...: [no-match] | cflow.cs:37:17:37:22 | Entry |
-| cflow.cs:44:13:44:19 | After case ...: [no-match] | cflow.cs:41:13:41:19 | After case ...: [no-match] |
-| cflow.cs:44:13:44:19 | After case ...: [no-match] | cflow.cs:44:13:44:19 | After case ...: [no-match] |
-| cflow.cs:47:13:47:19 | After case ...: [match] | cflow.cs:47:13:47:19 | After case ...: [match] |
-| cflow.cs:47:13:47:19 | After case ...: [no-match] | cflow.cs:47:13:47:19 | After case ...: [no-match] |
+| cflow.cs:44:18:44:18 | After 2 [match] | cflow.cs:44:18:44:18 | After 2 [match] |
+| cflow.cs:44:18:44:18 | After 2 [no-match] | cflow.cs:37:17:37:22 | Entry |
+| cflow.cs:44:18:44:18 | After 2 [no-match] | cflow.cs:41:18:41:18 | After 1 [no-match] |
+| cflow.cs:44:18:44:18 | After 2 [no-match] | cflow.cs:44:18:44:18 | After 2 [no-match] |
+| cflow.cs:47:18:47:18 | After 3 [match] | cflow.cs:47:18:47:18 | After 3 [match] |
+| cflow.cs:47:18:47:18 | After 3 [no-match] | cflow.cs:47:18:47:18 | After 3 [no-match] |
| cflow.cs:51:9:59:9 | After switch (...) {...} | cflow.cs:37:17:37:22 | Entry |
| cflow.cs:51:9:59:9 | After switch (...) {...} | cflow.cs:39:9:50:9 | After switch (...) {...} |
-| cflow.cs:51:9:59:9 | After switch (...) {...} | cflow.cs:41:13:41:19 | After case ...: [no-match] |
-| cflow.cs:51:9:59:9 | After switch (...) {...} | cflow.cs:44:13:44:19 | After case ...: [no-match] |
-| cflow.cs:51:9:59:9 | After switch (...) {...} | cflow.cs:47:13:47:19 | After case ...: [match] |
-| cflow.cs:51:9:59:9 | After switch (...) {...} | cflow.cs:47:13:47:19 | After case ...: [no-match] |
+| cflow.cs:51:9:59:9 | After switch (...) {...} | cflow.cs:41:18:41:18 | After 1 [no-match] |
+| cflow.cs:51:9:59:9 | After switch (...) {...} | cflow.cs:44:18:44:18 | After 2 [no-match] |
+| cflow.cs:51:9:59:9 | After switch (...) {...} | cflow.cs:47:18:47:18 | After 3 [match] |
+| cflow.cs:51:9:59:9 | After switch (...) {...} | cflow.cs:47:18:47:18 | After 3 [no-match] |
| cflow.cs:51:9:59:9 | After switch (...) {...} | cflow.cs:51:9:59:9 | After switch (...) {...} |
-| cflow.cs:51:9:59:9 | After switch (...) {...} | cflow.cs:53:13:53:20 | After case ...: [match] |
-| cflow.cs:51:9:59:9 | After switch (...) {...} | cflow.cs:53:13:53:20 | After case ...: [no-match] |
-| cflow.cs:53:13:53:20 | After case ...: [match] | cflow.cs:53:13:53:20 | After case ...: [match] |
-| cflow.cs:53:13:53:20 | After case ...: [no-match] | cflow.cs:53:13:53:20 | After case ...: [no-match] |
+| cflow.cs:51:9:59:9 | After switch (...) {...} | cflow.cs:53:18:53:19 | After 42 [match] |
+| cflow.cs:51:9:59:9 | After switch (...) {...} | cflow.cs:53:18:53:19 | After 42 [no-match] |
+| cflow.cs:53:18:53:19 | After 42 [match] | cflow.cs:53:18:53:19 | After 42 [match] |
+| cflow.cs:53:18:53:19 | After 42 [no-match] | cflow.cs:53:18:53:19 | After 42 [no-match] |
| cflow.cs:60:9:66:9 | After switch (...) {...} | cflow.cs:37:17:37:22 | Entry |
| cflow.cs:60:9:66:9 | After switch (...) {...} | cflow.cs:39:9:50:9 | After switch (...) {...} |
-| cflow.cs:60:9:66:9 | After switch (...) {...} | cflow.cs:41:13:41:19 | After case ...: [no-match] |
-| cflow.cs:60:9:66:9 | After switch (...) {...} | cflow.cs:44:13:44:19 | After case ...: [no-match] |
-| cflow.cs:60:9:66:9 | After switch (...) {...} | cflow.cs:47:13:47:19 | After case ...: [match] |
-| cflow.cs:60:9:66:9 | After switch (...) {...} | cflow.cs:47:13:47:19 | After case ...: [no-match] |
+| cflow.cs:60:9:66:9 | After switch (...) {...} | cflow.cs:41:18:41:18 | After 1 [no-match] |
+| cflow.cs:60:9:66:9 | After switch (...) {...} | cflow.cs:44:18:44:18 | After 2 [no-match] |
+| cflow.cs:60:9:66:9 | After switch (...) {...} | cflow.cs:47:18:47:18 | After 3 [match] |
+| cflow.cs:60:9:66:9 | After switch (...) {...} | cflow.cs:47:18:47:18 | After 3 [no-match] |
| cflow.cs:60:9:66:9 | After switch (...) {...} | cflow.cs:51:9:59:9 | After switch (...) {...} |
-| cflow.cs:60:9:66:9 | After switch (...) {...} | cflow.cs:53:13:53:20 | After case ...: [match] |
-| cflow.cs:60:9:66:9 | After switch (...) {...} | cflow.cs:53:13:53:20 | After case ...: [no-match] |
+| cflow.cs:60:9:66:9 | After switch (...) {...} | cflow.cs:53:18:53:19 | After 42 [match] |
+| cflow.cs:60:9:66:9 | After switch (...) {...} | cflow.cs:53:18:53:19 | After 42 [no-match] |
| cflow.cs:60:9:66:9 | After switch (...) {...} | cflow.cs:60:9:66:9 | After switch (...) {...} |
-| cflow.cs:60:9:66:9 | After switch (...) {...} | cflow.cs:62:13:62:19 | After case ...: [match] |
-| cflow.cs:60:9:66:9 | After switch (...) {...} | cflow.cs:62:13:62:19 | After case ...: [no-match] |
+| cflow.cs:60:9:66:9 | After switch (...) {...} | cflow.cs:62:18:62:18 | After 0 [match] |
+| cflow.cs:60:9:66:9 | After switch (...) {...} | cflow.cs:62:18:62:18 | After 0 [no-match] |
| cflow.cs:60:9:66:9 | After switch (...) {...} | cflow.cs:63:23:63:33 | After ... == ... [true] |
-| cflow.cs:62:13:62:19 | After case ...: [match] | cflow.cs:62:13:62:19 | After case ...: [match] |
-| cflow.cs:62:13:62:19 | After case ...: [no-match] | cflow.cs:62:13:62:19 | After case ...: [no-match] |
+| cflow.cs:62:18:62:18 | After 0 [match] | cflow.cs:62:18:62:18 | After 0 [match] |
+| cflow.cs:62:18:62:18 | After 0 [no-match] | cflow.cs:62:18:62:18 | After 0 [no-match] |
| cflow.cs:63:23:63:33 | After ... == ... [false] | cflow.cs:63:23:63:33 | After ... == ... [false] |
-| cflow.cs:63:23:63:33 | After ... == ... [true] | cflow.cs:62:13:62:19 | After case ...: [match] |
+| cflow.cs:63:23:63:33 | After ... == ... [true] | cflow.cs:62:18:62:18 | After 0 [match] |
| cflow.cs:63:23:63:33 | After ... == ... [true] | cflow.cs:63:23:63:33 | After ... == ... [true] |
| cflow.cs:70:18:70:18 | Entry | cflow.cs:70:18:70:18 | Entry |
| cflow.cs:70:18:70:18 | Normal Exit | cflow.cs:70:18:70:18 | Entry |
@@ -23463,14 +23665,14 @@ postBlockDominance
| cflow.cs:242:5:242:9 | Label: | cflow.cs:240:10:240:13 | Entry |
| cflow.cs:242:5:242:9 | Label: | cflow.cs:242:5:242:9 | Label: |
| cflow.cs:242:5:242:9 | Label: | cflow.cs:244:13:244:28 | After ... > ... [true] |
-| cflow.cs:242:5:242:9 | Label: | cflow.cs:253:13:253:19 | After case ...: [match] |
+| cflow.cs:242:5:242:9 | Label: | cflow.cs:253:18:253:18 | After 2 [match] |
| cflow.cs:242:12:242:41 | After if (...) ... | cflow.cs:240:10:240:13 | Entry |
| cflow.cs:242:12:242:41 | After if (...) ... | cflow.cs:242:5:242:9 | Label: |
| cflow.cs:242:12:242:41 | After if (...) ... | cflow.cs:242:12:242:41 | After if (...) ... |
| cflow.cs:242:12:242:41 | After if (...) ... | cflow.cs:242:19:242:35 | After ... == ... [false] |
| cflow.cs:242:12:242:41 | After if (...) ... | cflow.cs:242:19:242:35 | After ... == ... [true] |
| cflow.cs:242:12:242:41 | After if (...) ... | cflow.cs:244:13:244:28 | After ... > ... [true] |
-| cflow.cs:242:12:242:41 | After if (...) ... | cflow.cs:253:13:253:19 | After case ...: [match] |
+| cflow.cs:242:12:242:41 | After if (...) ... | cflow.cs:253:18:253:18 | After 2 [match] |
| cflow.cs:242:19:242:35 | After ... == ... [false] | cflow.cs:242:19:242:35 | After ... == ... [false] |
| cflow.cs:242:19:242:35 | After ... == ... [true] | cflow.cs:242:19:242:35 | After ... == ... [true] |
| cflow.cs:244:13:244:28 | After ... > ... [false] | cflow.cs:240:10:240:13 | Entry |
@@ -23480,7 +23682,7 @@ postBlockDominance
| cflow.cs:244:13:244:28 | After ... > ... [false] | cflow.cs:242:19:242:35 | After ... == ... [true] |
| cflow.cs:244:13:244:28 | After ... > ... [false] | cflow.cs:244:13:244:28 | After ... > ... [false] |
| cflow.cs:244:13:244:28 | After ... > ... [false] | cflow.cs:244:13:244:28 | After ... > ... [true] |
-| cflow.cs:244:13:244:28 | After ... > ... [false] | cflow.cs:253:13:253:19 | After case ...: [match] |
+| cflow.cs:244:13:244:28 | After ... > ... [false] | cflow.cs:253:18:253:18 | After 2 [match] |
| cflow.cs:244:13:244:28 | After ... > ... [true] | cflow.cs:244:13:244:28 | After ... > ... [true] |
| cflow.cs:246:9:258:9 | After switch (...) {...} | cflow.cs:240:10:240:13 | Entry |
| cflow.cs:246:9:258:9 | After switch (...) {...} | cflow.cs:242:5:242:9 | Label: |
@@ -23490,21 +23692,21 @@ postBlockDominance
| cflow.cs:246:9:258:9 | After switch (...) {...} | cflow.cs:244:13:244:28 | After ... > ... [false] |
| cflow.cs:246:9:258:9 | After switch (...) {...} | cflow.cs:244:13:244:28 | After ... > ... [true] |
| cflow.cs:246:9:258:9 | After switch (...) {...} | cflow.cs:246:9:258:9 | After switch (...) {...} |
-| cflow.cs:246:9:258:9 | After switch (...) {...} | cflow.cs:248:13:248:19 | After case ...: [match] |
-| cflow.cs:246:9:258:9 | After switch (...) {...} | cflow.cs:248:13:248:19 | After case ...: [no-match] |
-| cflow.cs:246:9:258:9 | After switch (...) {...} | cflow.cs:250:13:250:19 | After case ...: [match] |
-| cflow.cs:246:9:258:9 | After switch (...) {...} | cflow.cs:250:13:250:19 | After case ...: [no-match] |
-| cflow.cs:246:9:258:9 | After switch (...) {...} | cflow.cs:253:13:253:19 | After case ...: [match] |
-| cflow.cs:246:9:258:9 | After switch (...) {...} | cflow.cs:253:13:253:19 | After case ...: [no-match] |
+| cflow.cs:246:9:258:9 | After switch (...) {...} | cflow.cs:248:18:248:18 | After 0 [match] |
+| cflow.cs:246:9:258:9 | After switch (...) {...} | cflow.cs:248:18:248:18 | After 0 [no-match] |
+| cflow.cs:246:9:258:9 | After switch (...) {...} | cflow.cs:250:18:250:18 | After 1 [match] |
+| cflow.cs:246:9:258:9 | After switch (...) {...} | cflow.cs:250:18:250:18 | After 1 [no-match] |
+| cflow.cs:246:9:258:9 | After switch (...) {...} | cflow.cs:253:18:253:18 | After 2 [match] |
+| cflow.cs:246:9:258:9 | After switch (...) {...} | cflow.cs:253:18:253:18 | After 2 [no-match] |
| cflow.cs:246:9:258:9 | After switch (...) {...} | cflow.cs:255:13:255:20 | After default: [match] |
-| cflow.cs:248:13:248:19 | After case ...: [match] | cflow.cs:248:13:248:19 | After case ...: [match] |
-| cflow.cs:248:13:248:19 | After case ...: [no-match] | cflow.cs:248:13:248:19 | After case ...: [no-match] |
-| cflow.cs:250:13:250:19 | After case ...: [match] | cflow.cs:250:13:250:19 | After case ...: [match] |
-| cflow.cs:250:13:250:19 | After case ...: [no-match] | cflow.cs:250:13:250:19 | After case ...: [no-match] |
-| cflow.cs:253:13:253:19 | After case ...: [match] | cflow.cs:253:13:253:19 | After case ...: [match] |
-| cflow.cs:253:13:253:19 | After case ...: [no-match] | cflow.cs:253:13:253:19 | After case ...: [no-match] |
-| cflow.cs:255:13:255:20 | After default: [match] | cflow.cs:248:13:248:19 | After case ...: [match] |
-| cflow.cs:255:13:255:20 | After default: [match] | cflow.cs:253:13:253:19 | After case ...: [no-match] |
+| cflow.cs:248:18:248:18 | After 0 [match] | cflow.cs:248:18:248:18 | After 0 [match] |
+| cflow.cs:248:18:248:18 | After 0 [no-match] | cflow.cs:248:18:248:18 | After 0 [no-match] |
+| cflow.cs:250:18:250:18 | After 1 [match] | cflow.cs:250:18:250:18 | After 1 [match] |
+| cflow.cs:250:18:250:18 | After 1 [no-match] | cflow.cs:250:18:250:18 | After 1 [no-match] |
+| cflow.cs:253:18:253:18 | After 2 [match] | cflow.cs:253:18:253:18 | After 2 [match] |
+| cflow.cs:253:18:253:18 | After 2 [no-match] | cflow.cs:253:18:253:18 | After 2 [no-match] |
+| cflow.cs:255:13:255:20 | After default: [match] | cflow.cs:248:18:248:18 | After 0 [match] |
+| cflow.cs:255:13:255:20 | After default: [match] | cflow.cs:253:18:253:18 | After 2 [no-match] |
| cflow.cs:255:13:255:20 | After default: [match] | cflow.cs:255:13:255:20 | After default: [match] |
| cflow.cs:261:49:261:53 | Entry | cflow.cs:261:49:261:53 | Entry |
| cflow.cs:261:49:261:53 | Exceptional Exit | cflow.cs:261:49:261:53 | Exceptional Exit |
diff --git a/csharp/ql/test/library-tests/controlflow/graph/EnclosingCallable.expected b/csharp/ql/test/library-tests/controlflow/graph/EnclosingCallable.expected
index b0824d758a0..2a3a0a7020f 100644
--- a/csharp/ql/test/library-tests/controlflow/graph/EnclosingCallable.expected
+++ b/csharp/ql/test/library-tests/controlflow/graph/EnclosingCallable.expected
@@ -5616,11 +5616,15 @@ nodeEnclosing
| Patterns.cs:22:13:22:23 | After case ...: [no-match] | Patterns.cs:5:10:5:11 | M1 |
| Patterns.cs:22:13:22:23 | case ...: | Patterns.cs:5:10:5:11 | M1 |
| Patterns.cs:22:18:22:22 | "xyz" | Patterns.cs:5:10:5:11 | M1 |
+| Patterns.cs:22:18:22:22 | After "xyz" [match] | Patterns.cs:5:10:5:11 | M1 |
+| Patterns.cs:22:18:22:22 | After "xyz" [no-match] | Patterns.cs:5:10:5:11 | M1 |
| Patterns.cs:23:17:23:22 | Before break; | Patterns.cs:5:10:5:11 | M1 |
| Patterns.cs:23:17:23:22 | break; | Patterns.cs:5:10:5:11 | M1 |
| Patterns.cs:24:13:24:36 | After case ...: [match] | Patterns.cs:5:10:5:11 | M1 |
| Patterns.cs:24:13:24:36 | After case ...: [no-match] | Patterns.cs:5:10:5:11 | M1 |
| Patterns.cs:24:13:24:36 | case ...: | Patterns.cs:5:10:5:11 | M1 |
+| Patterns.cs:24:18:24:23 | After Int32 i2 [match] | Patterns.cs:5:10:5:11 | M1 |
+| Patterns.cs:24:18:24:23 | After Int32 i2 [no-match] | Patterns.cs:5:10:5:11 | M1 |
| Patterns.cs:24:18:24:23 | Int32 i2 | Patterns.cs:5:10:5:11 | M1 |
| Patterns.cs:24:30:24:31 | access to local variable i2 | Patterns.cs:5:10:5:11 | M1 |
| Patterns.cs:24:30:24:35 | ... > ... | Patterns.cs:5:10:5:11 | M1 |
@@ -5646,6 +5650,8 @@ nodeEnclosing
| Patterns.cs:27:13:27:24 | After case ...: [match] | Patterns.cs:5:10:5:11 | M1 |
| Patterns.cs:27:13:27:24 | After case ...: [no-match] | Patterns.cs:5:10:5:11 | M1 |
| Patterns.cs:27:13:27:24 | case ...: | Patterns.cs:5:10:5:11 | M1 |
+| Patterns.cs:27:18:27:23 | After Int32 i3 [match] | Patterns.cs:5:10:5:11 | M1 |
+| Patterns.cs:27:18:27:23 | After Int32 i3 [no-match] | Patterns.cs:5:10:5:11 | M1 |
| Patterns.cs:27:18:27:23 | Int32 i3 | Patterns.cs:5:10:5:11 | M1 |
| Patterns.cs:28:17:28:46 | After call to method WriteLine | Patterns.cs:5:10:5:11 | M1 |
| Patterns.cs:28:17:28:46 | Before call to method WriteLine | Patterns.cs:5:10:5:11 | M1 |
@@ -5665,6 +5671,8 @@ nodeEnclosing
| Patterns.cs:30:13:30:27 | After case ...: [match] | Patterns.cs:5:10:5:11 | M1 |
| Patterns.cs:30:13:30:27 | After case ...: [no-match] | Patterns.cs:5:10:5:11 | M1 |
| Patterns.cs:30:13:30:27 | case ...: | Patterns.cs:5:10:5:11 | M1 |
+| Patterns.cs:30:18:30:26 | After String s2 [match] | Patterns.cs:5:10:5:11 | M1 |
+| Patterns.cs:30:18:30:26 | After String s2 [no-match] | Patterns.cs:5:10:5:11 | M1 |
| Patterns.cs:30:18:30:26 | String s2 | Patterns.cs:5:10:5:11 | M1 |
| Patterns.cs:31:17:31:49 | After call to method WriteLine | Patterns.cs:5:10:5:11 | M1 |
| Patterns.cs:31:17:31:49 | Before call to method WriteLine | Patterns.cs:5:10:5:11 | M1 |
@@ -5684,6 +5692,8 @@ nodeEnclosing
| Patterns.cs:33:13:33:24 | After case ...: [match] | Patterns.cs:5:10:5:11 | M1 |
| Patterns.cs:33:13:33:24 | After case ...: [no-match] | Patterns.cs:5:10:5:11 | M1 |
| Patterns.cs:33:13:33:24 | case ...: | Patterns.cs:5:10:5:11 | M1 |
+| Patterns.cs:33:18:33:23 | After Object v2 [match] | Patterns.cs:5:10:5:11 | M1 |
+| Patterns.cs:33:18:33:23 | After Object v2 [no-match] | Patterns.cs:5:10:5:11 | M1 |
| Patterns.cs:33:18:33:23 | Object v2 | Patterns.cs:5:10:5:11 | M1 |
| Patterns.cs:34:17:34:22 | Before break; | Patterns.cs:5:10:5:11 | M1 |
| Patterns.cs:34:17:34:22 | break; | Patterns.cs:5:10:5:11 | M1 |
@@ -5772,7 +5782,8 @@ nodeEnclosing
| Patterns.cs:58:16:58:16 | access to parameter i | Patterns.cs:56:26:56:27 | M5 |
| Patterns.cs:58:16:62:9 | ... switch { ... } | Patterns.cs:56:26:56:27 | M5 |
| Patterns.cs:58:16:62:9 | After ... switch { ... } | Patterns.cs:56:26:56:27 | M5 |
-| Patterns.cs:60:13:60:17 | After not ... | Patterns.cs:56:26:56:27 | M5 |
+| Patterns.cs:60:13:60:17 | After not ... [match] | Patterns.cs:56:26:56:27 | M5 |
+| Patterns.cs:60:13:60:17 | After not ... [no-match] | Patterns.cs:56:26:56:27 | M5 |
| Patterns.cs:60:13:60:17 | Before not ... | Patterns.cs:56:26:56:27 | M5 |
| Patterns.cs:60:13:60:17 | not ... | Patterns.cs:56:26:56:27 | M5 |
| Patterns.cs:60:13:60:28 | ... => ... | Patterns.cs:56:26:56:27 | M5 |
@@ -5780,6 +5791,7 @@ nodeEnclosing
| Patterns.cs:60:13:60:28 | After ... => ... [no-match] | Patterns.cs:56:26:56:27 | M5 |
| Patterns.cs:60:17:60:17 | 1 | Patterns.cs:56:26:56:27 | M5 |
| Patterns.cs:60:22:60:28 | "not 1" | Patterns.cs:56:26:56:27 | M5 |
+| Patterns.cs:61:13:61:13 | After _ [match] | Patterns.cs:56:26:56:27 | M5 |
| Patterns.cs:61:13:61:13 | _ | Patterns.cs:56:26:56:27 | M5 |
| Patterns.cs:61:13:61:24 | ... => ... | Patterns.cs:56:26:56:27 | M5 |
| Patterns.cs:61:13:61:24 | After ... => ... [match] | Patterns.cs:56:26:56:27 | M5 |
@@ -5793,7 +5805,8 @@ nodeEnclosing
| Patterns.cs:67:16:67:16 | 2 | Patterns.cs:65:26:65:27 | M6 |
| Patterns.cs:67:16:71:9 | ... switch { ... } | Patterns.cs:65:26:65:27 | M6 |
| Patterns.cs:67:16:71:9 | After ... switch { ... } | Patterns.cs:65:26:65:27 | M6 |
-| Patterns.cs:69:13:69:17 | After not ... | Patterns.cs:65:26:65:27 | M6 |
+| Patterns.cs:69:13:69:17 | After not ... [match] | Patterns.cs:65:26:65:27 | M6 |
+| Patterns.cs:69:13:69:17 | After not ... [no-match] | Patterns.cs:65:26:65:27 | M6 |
| Patterns.cs:69:13:69:17 | Before not ... | Patterns.cs:65:26:65:27 | M6 |
| Patterns.cs:69:13:69:17 | not ... | Patterns.cs:65:26:65:27 | M6 |
| Patterns.cs:69:13:69:33 | ... => ... | Patterns.cs:65:26:65:27 | M6 |
@@ -5802,6 +5815,8 @@ nodeEnclosing
| Patterns.cs:69:17:69:17 | 2 | Patterns.cs:65:26:65:27 | M6 |
| Patterns.cs:69:22:69:33 | "impossible" | Patterns.cs:65:26:65:27 | M6 |
| Patterns.cs:70:13:70:13 | 2 | Patterns.cs:65:26:65:27 | M6 |
+| Patterns.cs:70:13:70:13 | After 2 [match] | Patterns.cs:65:26:65:27 | M6 |
+| Patterns.cs:70:13:70:13 | After 2 [no-match] | Patterns.cs:65:26:65:27 | M6 |
| Patterns.cs:70:13:70:27 | ... => ... | Patterns.cs:65:26:65:27 | M6 |
| Patterns.cs:70:13:70:27 | After ... => ... [match] | Patterns.cs:65:26:65:27 | M6 |
| Patterns.cs:70:13:70:27 | After ... => ... [no-match] | Patterns.cs:65:26:65:27 | M6 |
@@ -5817,7 +5832,8 @@ nodeEnclosing
| Patterns.cs:76:16:82:9 | ... switch { ... } | Patterns.cs:74:26:74:27 | M7 |
| Patterns.cs:76:16:82:9 | After ... switch { ... } | Patterns.cs:74:26:74:27 | M7 |
| Patterns.cs:78:13:78:15 | > ... | Patterns.cs:74:26:74:27 | M7 |
-| Patterns.cs:78:13:78:15 | After > ... | Patterns.cs:74:26:74:27 | M7 |
+| Patterns.cs:78:13:78:15 | After > ... [match] | Patterns.cs:74:26:74:27 | M7 |
+| Patterns.cs:78:13:78:15 | After > ... [no-match] | Patterns.cs:74:26:74:27 | M7 |
| Patterns.cs:78:13:78:15 | Before > ... | Patterns.cs:74:26:74:27 | M7 |
| Patterns.cs:78:13:78:24 | ... => ... | Patterns.cs:74:26:74:27 | M7 |
| Patterns.cs:78:13:78:24 | After ... => ... [match] | Patterns.cs:74:26:74:27 | M7 |
@@ -5825,7 +5841,8 @@ nodeEnclosing
| Patterns.cs:78:15:78:15 | 1 | Patterns.cs:74:26:74:27 | M7 |
| Patterns.cs:78:20:78:24 | "> 1" | Patterns.cs:74:26:74:27 | M7 |
| Patterns.cs:79:13:79:15 | < ... | Patterns.cs:74:26:74:27 | M7 |
-| Patterns.cs:79:13:79:15 | After < ... | Patterns.cs:74:26:74:27 | M7 |
+| Patterns.cs:79:13:79:15 | After < ... [match] | Patterns.cs:74:26:74:27 | M7 |
+| Patterns.cs:79:13:79:15 | After < ... [no-match] | Patterns.cs:74:26:74:27 | M7 |
| Patterns.cs:79:13:79:15 | Before < ... | Patterns.cs:74:26:74:27 | M7 |
| Patterns.cs:79:13:79:24 | ... => ... | Patterns.cs:74:26:74:27 | M7 |
| Patterns.cs:79:13:79:24 | After ... => ... [match] | Patterns.cs:74:26:74:27 | M7 |
@@ -5833,10 +5850,13 @@ nodeEnclosing
| Patterns.cs:79:15:79:15 | 0 | Patterns.cs:74:26:74:27 | M7 |
| Patterns.cs:79:20:79:24 | "< 0" | Patterns.cs:74:26:74:27 | M7 |
| Patterns.cs:80:13:80:13 | 1 | Patterns.cs:74:26:74:27 | M7 |
+| Patterns.cs:80:13:80:13 | After 1 [match] | Patterns.cs:74:26:74:27 | M7 |
+| Patterns.cs:80:13:80:13 | After 1 [no-match] | Patterns.cs:74:26:74:27 | M7 |
| Patterns.cs:80:13:80:20 | ... => ... | Patterns.cs:74:26:74:27 | M7 |
| Patterns.cs:80:13:80:20 | After ... => ... [match] | Patterns.cs:74:26:74:27 | M7 |
| Patterns.cs:80:13:80:20 | After ... => ... [no-match] | Patterns.cs:74:26:74:27 | M7 |
| Patterns.cs:80:18:80:20 | "1" | Patterns.cs:74:26:74:27 | M7 |
+| Patterns.cs:81:13:81:13 | After _ [match] | Patterns.cs:74:26:74:27 | M7 |
| Patterns.cs:81:13:81:13 | _ | Patterns.cs:74:26:74:27 | M7 |
| Patterns.cs:81:13:81:20 | ... => ... | Patterns.cs:74:26:74:27 | M7 |
| Patterns.cs:81:13:81:20 | After ... => ... [match] | Patterns.cs:74:26:74:27 | M7 |
@@ -6191,12 +6211,16 @@ nodeEnclosing
| Switch.cs:14:13:14:21 | After case ...: [no-match] | Switch.cs:10:10:10:11 | M2 |
| Switch.cs:14:13:14:21 | case ...: | Switch.cs:10:10:10:11 | M2 |
| Switch.cs:14:18:14:20 | "a" | Switch.cs:10:10:10:11 | M2 |
+| Switch.cs:14:18:14:20 | After "a" [match] | Switch.cs:10:10:10:11 | M2 |
+| Switch.cs:14:18:14:20 | After "a" [no-match] | Switch.cs:10:10:10:11 | M2 |
| Switch.cs:15:17:15:23 | Before return ...; | Switch.cs:10:10:10:11 | M2 |
| Switch.cs:15:17:15:23 | return ...; | Switch.cs:10:10:10:11 | M2 |
| Switch.cs:16:13:16:19 | After case ...: [match] | Switch.cs:10:10:10:11 | M2 |
| Switch.cs:16:13:16:19 | After case ...: [no-match] | Switch.cs:10:10:10:11 | M2 |
| Switch.cs:16:13:16:19 | case ...: | Switch.cs:10:10:10:11 | M2 |
| Switch.cs:16:18:16:18 | 0 | Switch.cs:10:10:10:11 | M2 |
+| Switch.cs:16:18:16:18 | After 0 [match] | Switch.cs:10:10:10:11 | M2 |
+| Switch.cs:16:18:16:18 | After 0 [no-match] | Switch.cs:10:10:10:11 | M2 |
| Switch.cs:17:17:17:38 | Before throw ...; | Switch.cs:10:10:10:11 | M2 |
| Switch.cs:17:17:17:38 | throw ...; | Switch.cs:10:10:10:11 | M2 |
| Switch.cs:17:23:17:37 | After object creation of type Exception | Switch.cs:10:10:10:11 | M2 |
@@ -6205,12 +6229,16 @@ nodeEnclosing
| Switch.cs:18:13:18:22 | After case ...: [match] | Switch.cs:10:10:10:11 | M2 |
| Switch.cs:18:13:18:22 | After case ...: [no-match] | Switch.cs:10:10:10:11 | M2 |
| Switch.cs:18:13:18:22 | case ...: | Switch.cs:10:10:10:11 | M2 |
+| Switch.cs:18:18:18:21 | After null [match] | Switch.cs:10:10:10:11 | M2 |
+| Switch.cs:18:18:18:21 | After null [no-match] | Switch.cs:10:10:10:11 | M2 |
| Switch.cs:18:18:18:21 | null | Switch.cs:10:10:10:11 | M2 |
| Switch.cs:19:17:19:29 | Before goto default; | Switch.cs:10:10:10:11 | M2 |
| Switch.cs:19:17:19:29 | goto default; | Switch.cs:10:10:10:11 | M2 |
| Switch.cs:20:13:20:23 | After case ...: [match] | Switch.cs:10:10:10:11 | M2 |
| Switch.cs:20:13:20:23 | After case ...: [no-match] | Switch.cs:10:10:10:11 | M2 |
| Switch.cs:20:13:20:23 | case ...: | Switch.cs:10:10:10:11 | M2 |
+| Switch.cs:20:18:20:22 | After Int32 i [match] | Switch.cs:10:10:10:11 | M2 |
+| Switch.cs:20:18:20:22 | After Int32 i [no-match] | Switch.cs:10:10:10:11 | M2 |
| Switch.cs:20:18:20:22 | Int32 i | Switch.cs:10:10:10:11 | M2 |
| Switch.cs:21:17:22:27 | After if (...) ... | Switch.cs:10:10:10:11 | M2 |
| Switch.cs:21:17:22:27 | if (...) ... | Switch.cs:10:10:10:11 | M2 |
@@ -6228,6 +6256,8 @@ nodeEnclosing
| Switch.cs:24:13:24:56 | After case ...: [match] | Switch.cs:10:10:10:11 | M2 |
| Switch.cs:24:13:24:56 | After case ...: [no-match] | Switch.cs:10:10:10:11 | M2 |
| Switch.cs:24:13:24:56 | case ...: | Switch.cs:10:10:10:11 | M2 |
+| Switch.cs:24:18:24:25 | After String s [match] | Switch.cs:10:10:10:11 | M2 |
+| Switch.cs:24:18:24:25 | After String s [no-match] | Switch.cs:10:10:10:11 | M2 |
| Switch.cs:24:18:24:25 | String s | Switch.cs:10:10:10:11 | M2 |
| Switch.cs:24:32:24:32 | access to local variable s | Switch.cs:10:10:10:11 | M2 |
| Switch.cs:24:32:24:39 | After access to property Length | Switch.cs:10:10:10:11 | M2 |
@@ -6258,6 +6288,8 @@ nodeEnclosing
| Switch.cs:27:13:27:39 | After case ...: [match] | Switch.cs:10:10:10:11 | M2 |
| Switch.cs:27:13:27:39 | After case ...: [no-match] | Switch.cs:10:10:10:11 | M2 |
| Switch.cs:27:13:27:39 | case ...: | Switch.cs:10:10:10:11 | M2 |
+| Switch.cs:27:18:27:25 | After Double d [match] | Switch.cs:10:10:10:11 | M2 |
+| Switch.cs:27:18:27:25 | After Double d [no-match] | Switch.cs:10:10:10:11 | M2 |
| Switch.cs:27:18:27:25 | Double d | Switch.cs:10:10:10:11 | M2 |
| Switch.cs:27:32:27:38 | Before call to method Throw | Switch.cs:10:10:10:11 | M2 |
| Switch.cs:27:32:27:38 | call to method Throw | Switch.cs:10:10:10:11 | M2 |
@@ -6287,12 +6319,16 @@ nodeEnclosing
| Switch.cs:48:13:48:23 | After case ...: [match] | Switch.cs:44:10:44:11 | M4 |
| Switch.cs:48:13:48:23 | After case ...: [no-match] | Switch.cs:44:10:44:11 | M4 |
| Switch.cs:48:13:48:23 | case ...: | Switch.cs:44:10:44:11 | M4 |
+| Switch.cs:48:18:48:20 | After access to type Int32 [match] | Switch.cs:44:10:44:11 | M4 |
+| Switch.cs:48:18:48:20 | After access to type Int32 [no-match] | Switch.cs:44:10:44:11 | M4 |
| Switch.cs:48:18:48:20 | access to type Int32 | Switch.cs:44:10:44:11 | M4 |
| Switch.cs:49:17:49:22 | Before break; | Switch.cs:44:10:44:11 | M4 |
| Switch.cs:49:17:49:22 | break; | Switch.cs:44:10:44:11 | M4 |
| Switch.cs:50:13:50:39 | After case ...: [match] | Switch.cs:44:10:44:11 | M4 |
| Switch.cs:50:13:50:39 | After case ...: [no-match] | Switch.cs:44:10:44:11 | M4 |
| Switch.cs:50:13:50:39 | case ...: | Switch.cs:44:10:44:11 | M4 |
+| Switch.cs:50:18:50:21 | After access to type Boolean [match] | Switch.cs:44:10:44:11 | M4 |
+| Switch.cs:50:18:50:21 | After access to type Boolean [no-match] | Switch.cs:44:10:44:11 | M4 |
| Switch.cs:50:18:50:21 | access to type Boolean | Switch.cs:44:10:44:11 | M4 |
| Switch.cs:50:30:50:30 | access to parameter o | Switch.cs:44:10:44:11 | M4 |
| Switch.cs:50:30:50:38 | ... != ... | Switch.cs:44:10:44:11 | M4 |
@@ -6318,12 +6354,16 @@ nodeEnclosing
| Switch.cs:59:13:59:19 | After case ...: [no-match] | Switch.cs:55:10:55:11 | M5 |
| Switch.cs:59:13:59:19 | case ...: | Switch.cs:55:10:55:11 | M5 |
| Switch.cs:59:18:59:18 | 2 | Switch.cs:55:10:55:11 | M5 |
+| Switch.cs:59:18:59:18 | After 2 [match] | Switch.cs:55:10:55:11 | M5 |
+| Switch.cs:59:18:59:18 | After 2 [no-match] | Switch.cs:55:10:55:11 | M5 |
| Switch.cs:60:17:60:22 | Before break; | Switch.cs:55:10:55:11 | M5 |
| Switch.cs:60:17:60:22 | break; | Switch.cs:55:10:55:11 | M5 |
| Switch.cs:61:13:61:19 | After case ...: [match] | Switch.cs:55:10:55:11 | M5 |
| Switch.cs:61:13:61:19 | After case ...: [no-match] | Switch.cs:55:10:55:11 | M5 |
| Switch.cs:61:13:61:19 | case ...: | Switch.cs:55:10:55:11 | M5 |
| Switch.cs:61:18:61:18 | 3 | Switch.cs:55:10:55:11 | M5 |
+| Switch.cs:61:18:61:18 | After 3 [match] | Switch.cs:55:10:55:11 | M5 |
+| Switch.cs:61:18:61:18 | After 3 [no-match] | Switch.cs:55:10:55:11 | M5 |
| Switch.cs:62:17:62:22 | Before break; | Switch.cs:55:10:55:11 | M5 |
| Switch.cs:62:17:62:22 | break; | Switch.cs:55:10:55:11 | M5 |
| Switch.cs:66:10:66:11 | Entry | Switch.cs:66:10:66:11 | M6 |
@@ -6341,6 +6381,8 @@ nodeEnclosing
| Switch.cs:70:13:70:23 | After case ...: [match] | Switch.cs:66:10:66:11 | M6 |
| Switch.cs:70:13:70:23 | After case ...: [no-match] | Switch.cs:66:10:66:11 | M6 |
| Switch.cs:70:13:70:23 | case ...: | Switch.cs:66:10:66:11 | M6 |
+| Switch.cs:70:18:70:20 | After access to type Int32 [match] | Switch.cs:66:10:66:11 | M6 |
+| Switch.cs:70:18:70:20 | After access to type Int32 [no-match] | Switch.cs:66:10:66:11 | M6 |
| Switch.cs:70:18:70:20 | access to type Int32 | Switch.cs:66:10:66:11 | M6 |
| Switch.cs:71:17:71:22 | Before break; | Switch.cs:66:10:66:11 | M6 |
| Switch.cs:71:17:71:22 | break; | Switch.cs:66:10:66:11 | M6 |
@@ -6348,6 +6390,8 @@ nodeEnclosing
| Switch.cs:72:13:72:20 | After case ...: [no-match] | Switch.cs:66:10:66:11 | M6 |
| Switch.cs:72:13:72:20 | case ...: | Switch.cs:66:10:66:11 | M6 |
| Switch.cs:72:18:72:19 | "" | Switch.cs:66:10:66:11 | M6 |
+| Switch.cs:72:18:72:19 | After "" [match] | Switch.cs:66:10:66:11 | M6 |
+| Switch.cs:72:18:72:19 | After "" [no-match] | Switch.cs:66:10:66:11 | M6 |
| Switch.cs:73:17:73:22 | Before break; | Switch.cs:66:10:66:11 | M6 |
| Switch.cs:73:17:73:22 | break; | Switch.cs:66:10:66:11 | M6 |
| Switch.cs:77:10:77:11 | Entry | Switch.cs:77:10:77:11 | M7 |
@@ -6363,6 +6407,8 @@ nodeEnclosing
| Switch.cs:81:13:81:19 | After case ...: [no-match] | Switch.cs:77:10:77:11 | M7 |
| Switch.cs:81:13:81:19 | case ...: | Switch.cs:77:10:77:11 | M7 |
| Switch.cs:81:18:81:18 | 1 | Switch.cs:77:10:77:11 | M7 |
+| Switch.cs:81:18:81:18 | After 1 [match] | Switch.cs:77:10:77:11 | M7 |
+| Switch.cs:81:18:81:18 | After 1 [no-match] | Switch.cs:77:10:77:11 | M7 |
| Switch.cs:82:17:82:28 | Before return ...; | Switch.cs:77:10:77:11 | M7 |
| Switch.cs:82:17:82:28 | return ...; | Switch.cs:77:10:77:11 | M7 |
| Switch.cs:82:24:82:27 | true | Switch.cs:77:10:77:11 | M7 |
@@ -6370,6 +6416,8 @@ nodeEnclosing
| Switch.cs:83:13:83:19 | After case ...: [no-match] | Switch.cs:77:10:77:11 | M7 |
| Switch.cs:83:13:83:19 | case ...: | Switch.cs:77:10:77:11 | M7 |
| Switch.cs:83:18:83:18 | 2 | Switch.cs:77:10:77:11 | M7 |
+| Switch.cs:83:18:83:18 | After 2 [match] | Switch.cs:77:10:77:11 | M7 |
+| Switch.cs:83:18:83:18 | After 2 [no-match] | Switch.cs:77:10:77:11 | M7 |
| Switch.cs:84:17:85:26 | After if (...) ... | Switch.cs:77:10:77:11 | M7 |
| Switch.cs:84:17:85:26 | if (...) ... | Switch.cs:77:10:77:11 | M7 |
| Switch.cs:84:21:84:21 | access to parameter j | Switch.cs:77:10:77:11 | M7 |
@@ -6397,6 +6445,8 @@ nodeEnclosing
| Switch.cs:95:13:95:23 | After case ...: [match] | Switch.cs:91:10:91:11 | M8 |
| Switch.cs:95:13:95:23 | After case ...: [no-match] | Switch.cs:91:10:91:11 | M8 |
| Switch.cs:95:13:95:23 | case ...: | Switch.cs:91:10:91:11 | M8 |
+| Switch.cs:95:18:95:20 | After access to type Int32 [match] | Switch.cs:91:10:91:11 | M8 |
+| Switch.cs:95:18:95:20 | After access to type Int32 [no-match] | Switch.cs:91:10:91:11 | M8 |
| Switch.cs:95:18:95:20 | access to type Int32 | Switch.cs:91:10:91:11 | M8 |
| Switch.cs:96:17:96:28 | Before return ...; | Switch.cs:91:10:91:11 | M8 |
| Switch.cs:96:17:96:28 | return ...; | Switch.cs:91:10:91:11 | M8 |
@@ -6421,6 +6471,8 @@ nodeEnclosing
| Switch.cs:105:13:105:19 | After case ...: [no-match] | Switch.cs:101:9:101:10 | M9 |
| Switch.cs:105:13:105:19 | case ...: | Switch.cs:101:9:101:10 | M9 |
| Switch.cs:105:18:105:18 | 0 | Switch.cs:101:9:101:10 | M9 |
+| Switch.cs:105:18:105:18 | After 0 [match] | Switch.cs:101:9:101:10 | M9 |
+| Switch.cs:105:18:105:18 | After 0 [no-match] | Switch.cs:101:9:101:10 | M9 |
| Switch.cs:105:21:105:29 | Before return ...; | Switch.cs:101:9:101:10 | M9 |
| Switch.cs:105:21:105:29 | return ...; | Switch.cs:101:9:101:10 | M9 |
| Switch.cs:105:28:105:28 | 0 | Switch.cs:101:9:101:10 | M9 |
@@ -6428,6 +6480,8 @@ nodeEnclosing
| Switch.cs:106:13:106:19 | After case ...: [no-match] | Switch.cs:101:9:101:10 | M9 |
| Switch.cs:106:13:106:19 | case ...: | Switch.cs:101:9:101:10 | M9 |
| Switch.cs:106:18:106:18 | 1 | Switch.cs:101:9:101:10 | M9 |
+| Switch.cs:106:18:106:18 | After 1 [match] | Switch.cs:101:9:101:10 | M9 |
+| Switch.cs:106:18:106:18 | After 1 [no-match] | Switch.cs:101:9:101:10 | M9 |
| Switch.cs:106:21:106:29 | Before return ...; | Switch.cs:101:9:101:10 | M9 |
| Switch.cs:106:21:106:29 | return ...; | Switch.cs:101:9:101:10 | M9 |
| Switch.cs:106:28:106:28 | 1 | Switch.cs:101:9:101:10 | M9 |
@@ -6460,6 +6514,8 @@ nodeEnclosing
| Switch.cs:117:13:117:35 | After case ...: [no-match] | Switch.cs:113:9:113:11 | M10 |
| Switch.cs:117:13:117:35 | case ...: | Switch.cs:113:9:113:11 | M10 |
| Switch.cs:117:18:117:18 | 3 | Switch.cs:113:9:113:11 | M10 |
+| Switch.cs:117:18:117:18 | After 3 [match] | Switch.cs:113:9:113:11 | M10 |
+| Switch.cs:117:18:117:18 | After 3 [no-match] | Switch.cs:113:9:113:11 | M10 |
| Switch.cs:117:25:117:25 | access to parameter s | Switch.cs:113:9:113:11 | M10 |
| Switch.cs:117:25:117:34 | ... == ... | Switch.cs:113:9:113:11 | M10 |
| Switch.cs:117:25:117:34 | After ... == ... [false] | Switch.cs:113:9:113:11 | M10 |
@@ -6473,6 +6529,8 @@ nodeEnclosing
| Switch.cs:118:13:118:34 | After case ...: [no-match] | Switch.cs:113:9:113:11 | M10 |
| Switch.cs:118:13:118:34 | case ...: | Switch.cs:113:9:113:11 | M10 |
| Switch.cs:118:18:118:18 | 2 | Switch.cs:113:9:113:11 | M10 |
+| Switch.cs:118:18:118:18 | After 2 [match] | Switch.cs:113:9:113:11 | M10 |
+| Switch.cs:118:18:118:18 | After 2 [no-match] | Switch.cs:113:9:113:11 | M10 |
| Switch.cs:118:25:118:25 | access to parameter s | Switch.cs:113:9:113:11 | M10 |
| Switch.cs:118:25:118:33 | ... == ... | Switch.cs:113:9:113:11 | M10 |
| Switch.cs:118:25:118:33 | After ... == ... [false] | Switch.cs:113:9:113:11 | M10 |
@@ -6500,11 +6558,14 @@ nodeEnclosing
| Switch.cs:125:13:125:48 | ... switch { ... } | Switch.cs:123:10:123:12 | M11 |
| Switch.cs:125:13:125:48 | After ... switch { ... } [false] | Switch.cs:123:10:123:12 | M11 |
| Switch.cs:125:13:125:48 | After ... switch { ... } [true] | Switch.cs:123:10:123:12 | M11 |
+| Switch.cs:125:24:125:29 | After Boolean b [match] | Switch.cs:123:10:123:12 | M11 |
+| Switch.cs:125:24:125:29 | After Boolean b [no-match] | Switch.cs:123:10:123:12 | M11 |
| Switch.cs:125:24:125:29 | Boolean b | Switch.cs:123:10:123:12 | M11 |
| Switch.cs:125:24:125:34 | ... => ... | Switch.cs:123:10:123:12 | M11 |
| Switch.cs:125:24:125:34 | After ... => ... [match] | Switch.cs:123:10:123:12 | M11 |
| Switch.cs:125:24:125:34 | After ... => ... [no-match] | Switch.cs:123:10:123:12 | M11 |
| Switch.cs:125:34:125:34 | access to local variable b | Switch.cs:123:10:123:12 | M11 |
+| Switch.cs:125:37:125:37 | After _ [match] | Switch.cs:123:10:123:12 | M11 |
| Switch.cs:125:37:125:37 | _ | Switch.cs:123:10:123:12 | M11 |
| Switch.cs:125:37:125:46 | ... => ... | Switch.cs:123:10:123:12 | M11 |
| Switch.cs:125:37:125:46 | After ... => ... [match] | Switch.cs:123:10:123:12 | M11 |
@@ -6525,11 +6586,14 @@ nodeEnclosing
| Switch.cs:131:17:131:53 | ... switch { ... } | Switch.cs:129:12:129:14 | M12 |
| Switch.cs:131:17:131:53 | After ... switch { ... } [non-null] | Switch.cs:129:12:129:14 | M12 |
| Switch.cs:131:17:131:53 | After ... switch { ... } [null] | Switch.cs:129:12:129:14 | M12 |
+| Switch.cs:131:28:131:35 | After String s [match] | Switch.cs:129:12:129:14 | M12 |
+| Switch.cs:131:28:131:35 | After String s [no-match] | Switch.cs:129:12:129:14 | M12 |
| Switch.cs:131:28:131:35 | String s | Switch.cs:129:12:129:14 | M12 |
| Switch.cs:131:28:131:40 | ... => ... | Switch.cs:129:12:129:14 | M12 |
| Switch.cs:131:28:131:40 | After ... => ... [match] | Switch.cs:129:12:129:14 | M12 |
| Switch.cs:131:28:131:40 | After ... => ... [no-match] | Switch.cs:129:12:129:14 | M12 |
| Switch.cs:131:40:131:40 | access to local variable s | Switch.cs:129:12:129:14 | M12 |
+| Switch.cs:131:43:131:43 | After _ [match] | Switch.cs:129:12:129:14 | M12 |
| Switch.cs:131:43:131:43 | _ | Switch.cs:129:12:129:14 | M12 |
| Switch.cs:131:43:131:51 | ... => ... | Switch.cs:129:12:129:14 | M12 |
| Switch.cs:131:43:131:51 | After ... => ... [match] | Switch.cs:129:12:129:14 | M12 |
@@ -6553,6 +6617,8 @@ nodeEnclosing
| Switch.cs:139:13:139:19 | After case ...: [no-match] | Switch.cs:134:9:134:11 | M13 |
| Switch.cs:139:13:139:19 | case ...: | Switch.cs:134:9:134:11 | M13 |
| Switch.cs:139:18:139:18 | 1 | Switch.cs:134:9:134:11 | M13 |
+| Switch.cs:139:18:139:18 | After 1 [match] | Switch.cs:134:9:134:11 | M13 |
+| Switch.cs:139:18:139:18 | After 1 [no-match] | Switch.cs:134:9:134:11 | M13 |
| Switch.cs:139:21:139:29 | Before return ...; | Switch.cs:134:9:134:11 | M13 |
| Switch.cs:139:21:139:29 | return ...; | Switch.cs:134:9:134:11 | M13 |
| Switch.cs:139:28:139:28 | 1 | Switch.cs:134:9:134:11 | M13 |
@@ -6560,6 +6626,8 @@ nodeEnclosing
| Switch.cs:140:13:140:19 | After case ...: [no-match] | Switch.cs:134:9:134:11 | M13 |
| Switch.cs:140:13:140:19 | case ...: | Switch.cs:134:9:134:11 | M13 |
| Switch.cs:140:18:140:18 | 2 | Switch.cs:134:9:134:11 | M13 |
+| Switch.cs:140:18:140:18 | After 2 [match] | Switch.cs:134:9:134:11 | M13 |
+| Switch.cs:140:18:140:18 | After 2 [no-match] | Switch.cs:134:9:134:11 | M13 |
| Switch.cs:140:21:140:29 | Before return ...; | Switch.cs:134:9:134:11 | M13 |
| Switch.cs:140:21:140:29 | return ...; | Switch.cs:134:9:134:11 | M13 |
| Switch.cs:140:28:140:28 | 2 | Switch.cs:134:9:134:11 | M13 |
@@ -6574,6 +6642,8 @@ nodeEnclosing
| Switch.cs:148:13:148:19 | After case ...: [no-match] | Switch.cs:144:9:144:11 | M14 |
| Switch.cs:148:13:148:19 | case ...: | Switch.cs:144:9:144:11 | M14 |
| Switch.cs:148:18:148:18 | 1 | Switch.cs:144:9:144:11 | M14 |
+| Switch.cs:148:18:148:18 | After 1 [match] | Switch.cs:144:9:144:11 | M14 |
+| Switch.cs:148:18:148:18 | After 1 [no-match] | Switch.cs:144:9:144:11 | M14 |
| Switch.cs:148:21:148:29 | Before return ...; | Switch.cs:144:9:144:11 | M14 |
| Switch.cs:148:21:148:29 | return ...; | Switch.cs:144:9:144:11 | M14 |
| Switch.cs:148:28:148:28 | 1 | Switch.cs:144:9:144:11 | M14 |
@@ -6589,6 +6659,8 @@ nodeEnclosing
| Switch.cs:150:13:150:19 | After case ...: [no-match] | Switch.cs:144:9:144:11 | M14 |
| Switch.cs:150:13:150:19 | case ...: | Switch.cs:144:9:144:11 | M14 |
| Switch.cs:150:18:150:18 | 2 | Switch.cs:144:9:144:11 | M14 |
+| Switch.cs:150:18:150:18 | After 2 [match] | Switch.cs:144:9:144:11 | M14 |
+| Switch.cs:150:18:150:18 | After 2 [no-match] | Switch.cs:144:9:144:11 | M14 |
| Switch.cs:150:21:150:29 | Before return ...; | Switch.cs:144:9:144:11 | M14 |
| Switch.cs:150:21:150:29 | return ...; | Switch.cs:144:9:144:11 | M14 |
| Switch.cs:150:28:150:28 | 2 | Switch.cs:144:9:144:11 | M14 |
@@ -6607,11 +6679,15 @@ nodeEnclosing
| Switch.cs:156:17:156:17 | access to parameter b | Switch.cs:154:10:154:12 | M15 |
| Switch.cs:156:17:156:54 | ... switch { ... } | Switch.cs:154:10:154:12 | M15 |
| Switch.cs:156:17:156:54 | After ... switch { ... } | Switch.cs:154:10:154:12 | M15 |
+| Switch.cs:156:28:156:31 | After true [match] | Switch.cs:154:10:154:12 | M15 |
+| Switch.cs:156:28:156:31 | After true [no-match] | Switch.cs:154:10:154:12 | M15 |
| Switch.cs:156:28:156:31 | true | Switch.cs:154:10:154:12 | M15 |
| Switch.cs:156:28:156:38 | ... => ... | Switch.cs:154:10:154:12 | M15 |
| Switch.cs:156:28:156:38 | After ... => ... [match] | Switch.cs:154:10:154:12 | M15 |
| Switch.cs:156:28:156:38 | After ... => ... [no-match] | Switch.cs:154:10:154:12 | M15 |
| Switch.cs:156:36:156:38 | "a" | Switch.cs:154:10:154:12 | M15 |
+| Switch.cs:156:41:156:45 | After false [match] | Switch.cs:154:10:154:12 | M15 |
+| Switch.cs:156:41:156:45 | After false [no-match] | Switch.cs:154:10:154:12 | M15 |
| Switch.cs:156:41:156:45 | false | Switch.cs:154:10:154:12 | M15 |
| Switch.cs:156:41:156:52 | ... => ... | Switch.cs:154:10:154:12 | M15 |
| Switch.cs:156:41:156:52 | After ... => ... [match] | Switch.cs:154:10:154:12 | M15 |
@@ -6661,10 +6737,14 @@ nodeEnclosing
| Switch.cs:167:13:167:19 | After case ...: [no-match] | Switch.cs:163:10:163:12 | M16 |
| Switch.cs:167:13:167:19 | case ...: | Switch.cs:163:10:163:12 | M16 |
| Switch.cs:167:18:167:18 | 1 | Switch.cs:163:10:163:12 | M16 |
+| Switch.cs:167:18:167:18 | After 1 [match] | Switch.cs:163:10:163:12 | M16 |
+| Switch.cs:167:18:167:18 | After 1 [no-match] | Switch.cs:163:10:163:12 | M16 |
| Switch.cs:168:13:168:19 | After case ...: [match] | Switch.cs:163:10:163:12 | M16 |
| Switch.cs:168:13:168:19 | After case ...: [no-match] | Switch.cs:163:10:163:12 | M16 |
| Switch.cs:168:13:168:19 | case ...: | Switch.cs:163:10:163:12 | M16 |
| Switch.cs:168:18:168:18 | 2 | Switch.cs:163:10:163:12 | M16 |
+| Switch.cs:168:18:168:18 | After 2 [match] | Switch.cs:163:10:163:12 | M16 |
+| Switch.cs:168:18:168:18 | After 2 [no-match] | Switch.cs:163:10:163:12 | M16 |
| Switch.cs:169:17:169:50 | After call to method WriteLine | Switch.cs:163:10:163:12 | M16 |
| Switch.cs:169:17:169:50 | Before call to method WriteLine | Switch.cs:163:10:163:12 | M16 |
| Switch.cs:169:17:169:50 | call to method WriteLine | Switch.cs:163:10:163:12 | M16 |
@@ -6677,6 +6757,8 @@ nodeEnclosing
| Switch.cs:171:13:171:19 | After case ...: [no-match] | Switch.cs:163:10:163:12 | M16 |
| Switch.cs:171:13:171:19 | case ...: | Switch.cs:163:10:163:12 | M16 |
| Switch.cs:171:18:171:18 | 3 | Switch.cs:163:10:163:12 | M16 |
+| Switch.cs:171:18:171:18 | After 3 [match] | Switch.cs:163:10:163:12 | M16 |
+| Switch.cs:171:18:171:18 | After 3 [no-match] | Switch.cs:163:10:163:12 | M16 |
| Switch.cs:172:17:172:45 | After call to method WriteLine | Switch.cs:163:10:163:12 | M16 |
| Switch.cs:172:17:172:45 | Before call to method WriteLine | Switch.cs:163:10:163:12 | M16 |
| Switch.cs:172:17:172:45 | call to method WriteLine | Switch.cs:163:10:163:12 | M16 |
@@ -7067,6 +7149,8 @@ nodeEnclosing
| cflow.cs:41:13:41:19 | After case ...: [no-match] | cflow.cs:37:17:37:22 | Switch |
| cflow.cs:41:13:41:19 | case ...: | cflow.cs:37:17:37:22 | Switch |
| cflow.cs:41:18:41:18 | 1 | cflow.cs:37:17:37:22 | Switch |
+| cflow.cs:41:18:41:18 | After 1 [match] | cflow.cs:37:17:37:22 | Switch |
+| cflow.cs:41:18:41:18 | After 1 [no-match] | cflow.cs:37:17:37:22 | Switch |
| cflow.cs:42:17:42:38 | After call to method WriteLine | cflow.cs:37:17:37:22 | Switch |
| cflow.cs:42:17:42:38 | Before call to method WriteLine | cflow.cs:37:17:37:22 | Switch |
| cflow.cs:42:17:42:38 | call to method WriteLine | cflow.cs:37:17:37:22 | Switch |
@@ -7080,6 +7164,8 @@ nodeEnclosing
| cflow.cs:44:13:44:19 | After case ...: [no-match] | cflow.cs:37:17:37:22 | Switch |
| cflow.cs:44:13:44:19 | case ...: | cflow.cs:37:17:37:22 | Switch |
| cflow.cs:44:18:44:18 | 2 | cflow.cs:37:17:37:22 | Switch |
+| cflow.cs:44:18:44:18 | After 2 [match] | cflow.cs:37:17:37:22 | Switch |
+| cflow.cs:44:18:44:18 | After 2 [no-match] | cflow.cs:37:17:37:22 | Switch |
| cflow.cs:45:17:45:38 | After call to method WriteLine | cflow.cs:37:17:37:22 | Switch |
| cflow.cs:45:17:45:38 | Before call to method WriteLine | cflow.cs:37:17:37:22 | Switch |
| cflow.cs:45:17:45:38 | call to method WriteLine | cflow.cs:37:17:37:22 | Switch |
@@ -7093,6 +7179,8 @@ nodeEnclosing
| cflow.cs:47:13:47:19 | After case ...: [no-match] | cflow.cs:37:17:37:22 | Switch |
| cflow.cs:47:13:47:19 | case ...: | cflow.cs:37:17:37:22 | Switch |
| cflow.cs:47:18:47:18 | 3 | cflow.cs:37:17:37:22 | Switch |
+| cflow.cs:47:18:47:18 | After 3 [match] | cflow.cs:37:17:37:22 | Switch |
+| cflow.cs:47:18:47:18 | After 3 [no-match] | cflow.cs:37:17:37:22 | Switch |
| cflow.cs:48:17:48:38 | After call to method WriteLine | cflow.cs:37:17:37:22 | Switch |
| cflow.cs:48:17:48:38 | Before call to method WriteLine | cflow.cs:37:17:37:22 | Switch |
| cflow.cs:48:17:48:38 | call to method WriteLine | cflow.cs:37:17:37:22 | Switch |
@@ -7108,6 +7196,8 @@ nodeEnclosing
| cflow.cs:53:13:53:20 | After case ...: [no-match] | cflow.cs:37:17:37:22 | Switch |
| cflow.cs:53:13:53:20 | case ...: | cflow.cs:37:17:37:22 | Switch |
| cflow.cs:53:18:53:19 | 42 | cflow.cs:37:17:37:22 | Switch |
+| cflow.cs:53:18:53:19 | After 42 [match] | cflow.cs:37:17:37:22 | Switch |
+| cflow.cs:53:18:53:19 | After 42 [no-match] | cflow.cs:37:17:37:22 | Switch |
| cflow.cs:54:17:54:47 | After call to method WriteLine | cflow.cs:37:17:37:22 | Switch |
| cflow.cs:54:17:54:47 | Before call to method WriteLine | cflow.cs:37:17:37:22 | Switch |
| cflow.cs:54:17:54:47 | call to method WriteLine | cflow.cs:37:17:37:22 | Switch |
@@ -7139,6 +7229,8 @@ nodeEnclosing
| cflow.cs:62:13:62:19 | After case ...: [no-match] | cflow.cs:37:17:37:22 | Switch |
| cflow.cs:62:13:62:19 | case ...: | cflow.cs:37:17:37:22 | Switch |
| cflow.cs:62:18:62:18 | 0 | cflow.cs:37:17:37:22 | Switch |
+| cflow.cs:62:18:62:18 | After 0 [match] | cflow.cs:37:17:37:22 | Switch |
+| cflow.cs:62:18:62:18 | After 0 [no-match] | cflow.cs:37:17:37:22 | Switch |
| cflow.cs:63:17:64:55 | After if (...) ... | cflow.cs:37:17:37:22 | Switch |
| cflow.cs:63:17:64:55 | if (...) ... | cflow.cs:37:17:37:22 | Switch |
| cflow.cs:63:21:63:34 | !... | cflow.cs:37:17:37:22 | Switch |
@@ -8075,12 +8167,16 @@ nodeEnclosing
| cflow.cs:248:13:248:19 | After case ...: [no-match] | cflow.cs:240:10:240:13 | Goto |
| cflow.cs:248:13:248:19 | case ...: | cflow.cs:240:10:240:13 | Goto |
| cflow.cs:248:18:248:18 | 0 | cflow.cs:240:10:240:13 | Goto |
+| cflow.cs:248:18:248:18 | After 0 [match] | cflow.cs:240:10:240:13 | Goto |
+| cflow.cs:248:18:248:18 | After 0 [no-match] | cflow.cs:240:10:240:13 | Goto |
| cflow.cs:249:17:249:29 | Before goto default; | cflow.cs:240:10:240:13 | Goto |
| cflow.cs:249:17:249:29 | goto default; | cflow.cs:240:10:240:13 | Goto |
| cflow.cs:250:13:250:19 | After case ...: [match] | cflow.cs:240:10:240:13 | Goto |
| cflow.cs:250:13:250:19 | After case ...: [no-match] | cflow.cs:240:10:240:13 | Goto |
| cflow.cs:250:13:250:19 | case ...: | cflow.cs:240:10:240:13 | Goto |
| cflow.cs:250:18:250:18 | 1 | cflow.cs:240:10:240:13 | Goto |
+| cflow.cs:250:18:250:18 | After 1 [match] | cflow.cs:240:10:240:13 | Goto |
+| cflow.cs:250:18:250:18 | After 1 [no-match] | cflow.cs:240:10:240:13 | Goto |
| cflow.cs:251:17:251:36 | After call to method WriteLine | cflow.cs:240:10:240:13 | Goto |
| cflow.cs:251:17:251:36 | Before call to method WriteLine | cflow.cs:240:10:240:13 | Goto |
| cflow.cs:251:17:251:36 | call to method WriteLine | cflow.cs:240:10:240:13 | Goto |
@@ -8093,6 +8189,8 @@ nodeEnclosing
| cflow.cs:253:13:253:19 | After case ...: [no-match] | cflow.cs:240:10:240:13 | Goto |
| cflow.cs:253:13:253:19 | case ...: | cflow.cs:240:10:240:13 | Goto |
| cflow.cs:253:18:253:18 | 2 | cflow.cs:240:10:240:13 | Goto |
+| cflow.cs:253:18:253:18 | After 2 [match] | cflow.cs:240:10:240:13 | Goto |
+| cflow.cs:253:18:253:18 | After 2 [no-match] | cflow.cs:240:10:240:13 | Goto |
| cflow.cs:254:17:254:27 | Before goto ...; | cflow.cs:240:10:240:13 | Goto |
| cflow.cs:254:17:254:27 | goto ...; | cflow.cs:240:10:240:13 | Goto |
| cflow.cs:255:13:255:20 | After default: [match] | cflow.cs:240:10:240:13 | Goto |
@@ -9204,19 +9302,19 @@ blockEnclosing
| Patterns.cs:16:18:16:28 | After ... is ... [false] | Patterns.cs:5:10:5:11 | M1 |
| Patterns.cs:16:18:16:28 | [MatchTrue] ... is ... | Patterns.cs:5:10:5:11 | M1 |
| Patterns.cs:20:9:38:9 | After switch (...) {...} | Patterns.cs:5:10:5:11 | M1 |
-| Patterns.cs:22:13:22:23 | After case ...: [match] | Patterns.cs:5:10:5:11 | M1 |
-| Patterns.cs:22:13:22:23 | After case ...: [no-match] | Patterns.cs:5:10:5:11 | M1 |
-| Patterns.cs:24:13:24:36 | After case ...: [match] | Patterns.cs:5:10:5:11 | M1 |
-| Patterns.cs:24:13:24:36 | After case ...: [no-match] | Patterns.cs:5:10:5:11 | M1 |
+| Patterns.cs:22:18:22:22 | After "xyz" [match] | Patterns.cs:5:10:5:11 | M1 |
+| Patterns.cs:22:18:22:22 | After "xyz" [no-match] | Patterns.cs:5:10:5:11 | M1 |
+| Patterns.cs:24:18:24:23 | After Int32 i2 [match] | Patterns.cs:5:10:5:11 | M1 |
+| Patterns.cs:24:18:24:23 | After Int32 i2 [no-match] | Patterns.cs:5:10:5:11 | M1 |
| Patterns.cs:24:30:24:35 | After ... > ... [false] | Patterns.cs:5:10:5:11 | M1 |
| Patterns.cs:24:30:24:35 | After ... > ... [true] | Patterns.cs:5:10:5:11 | M1 |
-| Patterns.cs:27:13:27:24 | After case ...: [match] | Patterns.cs:5:10:5:11 | M1 |
-| Patterns.cs:27:13:27:24 | After case ...: [no-match] | Patterns.cs:5:10:5:11 | M1 |
| Patterns.cs:27:13:27:24 | case ...: | Patterns.cs:5:10:5:11 | M1 |
-| Patterns.cs:30:13:30:27 | After case ...: [match] | Patterns.cs:5:10:5:11 | M1 |
-| Patterns.cs:30:13:30:27 | After case ...: [no-match] | Patterns.cs:5:10:5:11 | M1 |
-| Patterns.cs:33:13:33:24 | After case ...: [match] | Patterns.cs:5:10:5:11 | M1 |
-| Patterns.cs:33:13:33:24 | After case ...: [no-match] | Patterns.cs:5:10:5:11 | M1 |
+| Patterns.cs:27:18:27:23 | After Int32 i3 [match] | Patterns.cs:5:10:5:11 | M1 |
+| Patterns.cs:27:18:27:23 | After Int32 i3 [no-match] | Patterns.cs:5:10:5:11 | M1 |
+| Patterns.cs:30:18:30:26 | After String s2 [match] | Patterns.cs:5:10:5:11 | M1 |
+| Patterns.cs:30:18:30:26 | After String s2 [no-match] | Patterns.cs:5:10:5:11 | M1 |
+| Patterns.cs:33:18:33:23 | After Object v2 [match] | Patterns.cs:5:10:5:11 | M1 |
+| Patterns.cs:33:18:33:23 | After Object v2 [no-match] | Patterns.cs:5:10:5:11 | M1 |
| Patterns.cs:47:24:47:25 | Entry | Patterns.cs:47:24:47:25 | M2 |
| Patterns.cs:48:9:48:20 | After ... is ... | Patterns.cs:47:24:47:25 | M2 |
| Patterns.cs:48:9:48:20 | [MatchTrue] ... is ... | Patterns.cs:47:24:47:25 | M2 |
@@ -9233,22 +9331,22 @@ blockEnclosing
| Patterns.cs:54:9:54:37 | [MatchTrue] ... is ... | Patterns.cs:53:24:53:25 | M4 |
| Patterns.cs:56:26:56:27 | Entry | Patterns.cs:56:26:56:27 | M5 |
| Patterns.cs:58:16:62:9 | After ... switch { ... } | Patterns.cs:56:26:56:27 | M5 |
-| Patterns.cs:60:13:60:28 | After ... => ... [match] | Patterns.cs:56:26:56:27 | M5 |
-| Patterns.cs:60:13:60:28 | After ... => ... [no-match] | Patterns.cs:56:26:56:27 | M5 |
+| Patterns.cs:60:13:60:17 | After not ... [match] | Patterns.cs:56:26:56:27 | M5 |
+| Patterns.cs:60:13:60:17 | After not ... [no-match] | Patterns.cs:56:26:56:27 | M5 |
| Patterns.cs:65:26:65:27 | Entry | Patterns.cs:65:26:65:27 | M6 |
| Patterns.cs:67:16:71:9 | After ... switch { ... } | Patterns.cs:65:26:65:27 | M6 |
-| Patterns.cs:69:13:69:33 | After ... => ... [match] | Patterns.cs:65:26:65:27 | M6 |
-| Patterns.cs:69:13:69:33 | After ... => ... [no-match] | Patterns.cs:65:26:65:27 | M6 |
-| Patterns.cs:70:13:70:27 | After ... => ... [match] | Patterns.cs:65:26:65:27 | M6 |
-| Patterns.cs:70:13:70:27 | After ... => ... [no-match] | Patterns.cs:65:26:65:27 | M6 |
+| Patterns.cs:69:13:69:17 | After not ... [match] | Patterns.cs:65:26:65:27 | M6 |
+| Patterns.cs:69:13:69:17 | After not ... [no-match] | Patterns.cs:65:26:65:27 | M6 |
+| Patterns.cs:70:13:70:13 | After 2 [match] | Patterns.cs:65:26:65:27 | M6 |
+| Patterns.cs:70:13:70:13 | After 2 [no-match] | Patterns.cs:65:26:65:27 | M6 |
| Patterns.cs:74:26:74:27 | Entry | Patterns.cs:74:26:74:27 | M7 |
| Patterns.cs:76:16:82:9 | After ... switch { ... } | Patterns.cs:74:26:74:27 | M7 |
-| Patterns.cs:78:13:78:24 | After ... => ... [match] | Patterns.cs:74:26:74:27 | M7 |
-| Patterns.cs:78:13:78:24 | After ... => ... [no-match] | Patterns.cs:74:26:74:27 | M7 |
-| Patterns.cs:79:13:79:24 | After ... => ... [match] | Patterns.cs:74:26:74:27 | M7 |
-| Patterns.cs:79:13:79:24 | After ... => ... [no-match] | Patterns.cs:74:26:74:27 | M7 |
-| Patterns.cs:80:13:80:20 | After ... => ... [match] | Patterns.cs:74:26:74:27 | M7 |
-| Patterns.cs:80:13:80:20 | After ... => ... [no-match] | Patterns.cs:74:26:74:27 | M7 |
+| Patterns.cs:78:13:78:15 | After > ... [match] | Patterns.cs:74:26:74:27 | M7 |
+| Patterns.cs:78:13:78:15 | After > ... [no-match] | Patterns.cs:74:26:74:27 | M7 |
+| Patterns.cs:79:13:79:15 | After < ... [match] | Patterns.cs:74:26:74:27 | M7 |
+| Patterns.cs:79:13:79:15 | After < ... [no-match] | Patterns.cs:74:26:74:27 | M7 |
+| Patterns.cs:80:13:80:13 | After 1 [match] | Patterns.cs:74:26:74:27 | M7 |
+| Patterns.cs:80:13:80:13 | After 1 [no-match] | Patterns.cs:74:26:74:27 | M7 |
| Patterns.cs:85:26:85:27 | Entry | Patterns.cs:85:26:85:27 | M8 |
| Patterns.cs:85:39:85:53 | After ... is ... [false] | Patterns.cs:85:26:85:27 | M8 |
| Patterns.cs:85:39:85:53 | [MatchTrue] ... is ... | Patterns.cs:85:26:85:27 | M8 |
@@ -9281,125 +9379,126 @@ blockEnclosing
| Switch.cs:10:10:10:11 | Exceptional Exit | Switch.cs:10:10:10:11 | M2 |
| Switch.cs:10:10:10:11 | Exit | Switch.cs:10:10:10:11 | M2 |
| Switch.cs:10:10:10:11 | Normal Exit | Switch.cs:10:10:10:11 | M2 |
-| Switch.cs:14:13:14:21 | After case ...: [match] | Switch.cs:10:10:10:11 | M2 |
-| Switch.cs:14:13:14:21 | After case ...: [no-match] | Switch.cs:10:10:10:11 | M2 |
+| Switch.cs:14:18:14:20 | After "a" [match] | Switch.cs:10:10:10:11 | M2 |
+| Switch.cs:14:18:14:20 | After "a" [no-match] | Switch.cs:10:10:10:11 | M2 |
| Switch.cs:16:13:16:19 | After case ...: [match] | Switch.cs:10:10:10:11 | M2 |
-| Switch.cs:16:13:16:19 | After case ...: [no-match] | Switch.cs:10:10:10:11 | M2 |
-| Switch.cs:18:13:18:22 | After case ...: [match] | Switch.cs:10:10:10:11 | M2 |
-| Switch.cs:18:13:18:22 | After case ...: [no-match] | Switch.cs:10:10:10:11 | M2 |
-| Switch.cs:20:13:20:23 | After case ...: [match] | Switch.cs:10:10:10:11 | M2 |
-| Switch.cs:20:13:20:23 | After case ...: [no-match] | Switch.cs:10:10:10:11 | M2 |
+| Switch.cs:16:18:16:18 | After 0 [match] | Switch.cs:10:10:10:11 | M2 |
+| Switch.cs:16:18:16:18 | After 0 [no-match] | Switch.cs:10:10:10:11 | M2 |
+| Switch.cs:18:18:18:21 | After null [match] | Switch.cs:10:10:10:11 | M2 |
+| Switch.cs:18:18:18:21 | After null [no-match] | Switch.cs:10:10:10:11 | M2 |
+| Switch.cs:20:18:20:22 | After Int32 i [match] | Switch.cs:10:10:10:11 | M2 |
+| Switch.cs:20:18:20:22 | After Int32 i [no-match] | Switch.cs:10:10:10:11 | M2 |
| Switch.cs:21:21:21:29 | After ... == ... [false] | Switch.cs:10:10:10:11 | M2 |
| Switch.cs:21:21:21:29 | After ... == ... [true] | Switch.cs:10:10:10:11 | M2 |
-| Switch.cs:24:13:24:56 | After case ...: [match] | Switch.cs:10:10:10:11 | M2 |
-| Switch.cs:24:13:24:56 | After case ...: [no-match] | Switch.cs:10:10:10:11 | M2 |
+| Switch.cs:24:18:24:25 | After String s [match] | Switch.cs:10:10:10:11 | M2 |
+| Switch.cs:24:18:24:25 | After String s [no-match] | Switch.cs:10:10:10:11 | M2 |
| Switch.cs:24:32:24:43 | After ... > ... [false] | Switch.cs:10:10:10:11 | M2 |
| Switch.cs:24:32:24:43 | After ... > ... [true] | Switch.cs:10:10:10:11 | M2 |
| Switch.cs:24:32:24:55 | After ... && ... [false] | Switch.cs:10:10:10:11 | M2 |
| Switch.cs:24:48:24:55 | After ... != ... [false] | Switch.cs:10:10:10:11 | M2 |
| Switch.cs:24:48:24:55 | After ... != ... [true] | Switch.cs:10:10:10:11 | M2 |
-| Switch.cs:27:13:27:39 | After case ...: [match] | Switch.cs:10:10:10:11 | M2 |
-| Switch.cs:27:13:27:39 | After case ...: [no-match] | Switch.cs:10:10:10:11 | M2 |
| Switch.cs:27:13:27:39 | case ...: | Switch.cs:10:10:10:11 | M2 |
+| Switch.cs:27:18:27:25 | After Double d [match] | Switch.cs:10:10:10:11 | M2 |
+| Switch.cs:27:18:27:25 | After Double d [no-match] | Switch.cs:10:10:10:11 | M2 |
| Switch.cs:30:13:30:20 | After default: [match] | Switch.cs:10:10:10:11 | M2 |
| Switch.cs:35:10:35:11 | Entry | Switch.cs:35:10:35:11 | M3 |
| Switch.cs:44:10:44:11 | Entry | Switch.cs:44:10:44:11 | M4 |
| Switch.cs:46:9:52:9 | After switch (...) {...} | Switch.cs:44:10:44:11 | M4 |
-| Switch.cs:48:13:48:23 | After case ...: [match] | Switch.cs:44:10:44:11 | M4 |
-| Switch.cs:48:13:48:23 | After case ...: [no-match] | Switch.cs:44:10:44:11 | M4 |
-| Switch.cs:50:13:50:39 | After case ...: [match] | Switch.cs:44:10:44:11 | M4 |
-| Switch.cs:50:13:50:39 | After case ...: [no-match] | Switch.cs:44:10:44:11 | M4 |
+| Switch.cs:48:18:48:20 | After access to type Int32 [match] | Switch.cs:44:10:44:11 | M4 |
+| Switch.cs:48:18:48:20 | After access to type Int32 [no-match] | Switch.cs:44:10:44:11 | M4 |
+| Switch.cs:50:18:50:21 | After access to type Boolean [match] | Switch.cs:44:10:44:11 | M4 |
+| Switch.cs:50:18:50:21 | After access to type Boolean [no-match] | Switch.cs:44:10:44:11 | M4 |
| Switch.cs:50:30:50:38 | After ... != ... [false] | Switch.cs:44:10:44:11 | M4 |
| Switch.cs:50:30:50:38 | After ... != ... [true] | Switch.cs:44:10:44:11 | M4 |
| Switch.cs:55:10:55:11 | Entry | Switch.cs:55:10:55:11 | M5 |
| Switch.cs:57:9:63:9 | After switch (...) {...} | Switch.cs:55:10:55:11 | M5 |
-| Switch.cs:59:13:59:19 | After case ...: [match] | Switch.cs:55:10:55:11 | M5 |
-| Switch.cs:59:13:59:19 | After case ...: [no-match] | Switch.cs:55:10:55:11 | M5 |
-| Switch.cs:61:13:61:19 | After case ...: [match] | Switch.cs:55:10:55:11 | M5 |
-| Switch.cs:61:13:61:19 | After case ...: [no-match] | Switch.cs:55:10:55:11 | M5 |
+| Switch.cs:59:18:59:18 | After 2 [match] | Switch.cs:55:10:55:11 | M5 |
+| Switch.cs:59:18:59:18 | After 2 [no-match] | Switch.cs:55:10:55:11 | M5 |
+| Switch.cs:61:18:61:18 | After 3 [match] | Switch.cs:55:10:55:11 | M5 |
+| Switch.cs:61:18:61:18 | After 3 [no-match] | Switch.cs:55:10:55:11 | M5 |
| Switch.cs:66:10:66:11 | Entry | Switch.cs:66:10:66:11 | M6 |
| Switch.cs:68:9:74:9 | After switch (...) {...} | Switch.cs:66:10:66:11 | M6 |
-| Switch.cs:70:13:70:23 | After case ...: [match] | Switch.cs:66:10:66:11 | M6 |
-| Switch.cs:70:13:70:23 | After case ...: [no-match] | Switch.cs:66:10:66:11 | M6 |
-| Switch.cs:72:13:72:20 | After case ...: [match] | Switch.cs:66:10:66:11 | M6 |
-| Switch.cs:72:13:72:20 | After case ...: [no-match] | Switch.cs:66:10:66:11 | M6 |
+| Switch.cs:70:18:70:20 | After access to type Int32 [match] | Switch.cs:66:10:66:11 | M6 |
+| Switch.cs:70:18:70:20 | After access to type Int32 [no-match] | Switch.cs:66:10:66:11 | M6 |
+| Switch.cs:72:18:72:19 | After "" [match] | Switch.cs:66:10:66:11 | M6 |
+| Switch.cs:72:18:72:19 | After "" [no-match] | Switch.cs:66:10:66:11 | M6 |
| Switch.cs:77:10:77:11 | Entry | Switch.cs:77:10:77:11 | M7 |
| Switch.cs:77:10:77:11 | Normal Exit | Switch.cs:77:10:77:11 | M7 |
| Switch.cs:79:9:87:9 | After switch (...) {...} | Switch.cs:77:10:77:11 | M7 |
-| Switch.cs:81:13:81:19 | After case ...: [match] | Switch.cs:77:10:77:11 | M7 |
-| Switch.cs:81:13:81:19 | After case ...: [no-match] | Switch.cs:77:10:77:11 | M7 |
-| Switch.cs:83:13:83:19 | After case ...: [match] | Switch.cs:77:10:77:11 | M7 |
-| Switch.cs:83:13:83:19 | After case ...: [no-match] | Switch.cs:77:10:77:11 | M7 |
+| Switch.cs:81:18:81:18 | After 1 [match] | Switch.cs:77:10:77:11 | M7 |
+| Switch.cs:81:18:81:18 | After 1 [no-match] | Switch.cs:77:10:77:11 | M7 |
+| Switch.cs:83:18:83:18 | After 2 [match] | Switch.cs:77:10:77:11 | M7 |
+| Switch.cs:83:18:83:18 | After 2 [no-match] | Switch.cs:77:10:77:11 | M7 |
| Switch.cs:84:21:84:25 | After ... > ... [false] | Switch.cs:77:10:77:11 | M7 |
| Switch.cs:84:21:84:25 | After ... > ... [true] | Switch.cs:77:10:77:11 | M7 |
| Switch.cs:91:10:91:11 | Entry | Switch.cs:91:10:91:11 | M8 |
| Switch.cs:91:10:91:11 | Normal Exit | Switch.cs:91:10:91:11 | M8 |
-| Switch.cs:95:13:95:23 | After case ...: [match] | Switch.cs:91:10:91:11 | M8 |
-| Switch.cs:95:13:95:23 | After case ...: [no-match] | Switch.cs:91:10:91:11 | M8 |
+| Switch.cs:95:18:95:20 | After access to type Int32 [match] | Switch.cs:91:10:91:11 | M8 |
+| Switch.cs:95:18:95:20 | After access to type Int32 [no-match] | Switch.cs:91:10:91:11 | M8 |
| Switch.cs:101:9:101:10 | Entry | Switch.cs:101:9:101:10 | M9 |
| Switch.cs:101:9:101:10 | Normal Exit | Switch.cs:101:9:101:10 | M9 |
| Switch.cs:103:17:103:17 | After access to parameter s [non-null] | Switch.cs:101:9:101:10 | M9 |
| Switch.cs:103:17:103:17 | After access to parameter s [null] | Switch.cs:101:9:101:10 | M9 |
| Switch.cs:103:17:103:25 | After access to property Length | Switch.cs:101:9:101:10 | M9 |
-| Switch.cs:105:13:105:19 | After case ...: [match] | Switch.cs:101:9:101:10 | M9 |
-| Switch.cs:105:13:105:19 | After case ...: [no-match] | Switch.cs:101:9:101:10 | M9 |
-| Switch.cs:106:13:106:19 | After case ...: [match] | Switch.cs:101:9:101:10 | M9 |
-| Switch.cs:106:13:106:19 | After case ...: [no-match] | Switch.cs:101:9:101:10 | M9 |
+| Switch.cs:105:18:105:18 | After 0 [match] | Switch.cs:101:9:101:10 | M9 |
+| Switch.cs:105:18:105:18 | After 0 [no-match] | Switch.cs:101:9:101:10 | M9 |
+| Switch.cs:106:18:106:18 | After 1 [match] | Switch.cs:101:9:101:10 | M9 |
+| Switch.cs:106:18:106:18 | After 1 [no-match] | Switch.cs:101:9:101:10 | M9 |
| Switch.cs:111:17:111:21 | Entry | Switch.cs:111:17:111:21 | Throw |
| Switch.cs:113:9:113:11 | Entry | Switch.cs:113:9:113:11 | M10 |
| Switch.cs:113:9:113:11 | Normal Exit | Switch.cs:113:9:113:11 | M10 |
| Switch.cs:115:9:119:9 | After switch (...) {...} | Switch.cs:113:9:113:11 | M10 |
-| Switch.cs:117:13:117:35 | After case ...: [match] | Switch.cs:113:9:113:11 | M10 |
-| Switch.cs:117:13:117:35 | After case ...: [no-match] | Switch.cs:113:9:113:11 | M10 |
+| Switch.cs:117:18:117:18 | After 3 [match] | Switch.cs:113:9:113:11 | M10 |
+| Switch.cs:117:18:117:18 | After 3 [no-match] | Switch.cs:113:9:113:11 | M10 |
| Switch.cs:117:25:117:34 | After ... == ... [false] | Switch.cs:113:9:113:11 | M10 |
| Switch.cs:117:25:117:34 | After ... == ... [true] | Switch.cs:113:9:113:11 | M10 |
-| Switch.cs:118:13:118:34 | After case ...: [match] | Switch.cs:113:9:113:11 | M10 |
-| Switch.cs:118:13:118:34 | After case ...: [no-match] | Switch.cs:113:9:113:11 | M10 |
| Switch.cs:118:13:118:34 | case ...: | Switch.cs:113:9:113:11 | M10 |
+| Switch.cs:118:18:118:18 | After 2 [match] | Switch.cs:113:9:113:11 | M10 |
+| Switch.cs:118:18:118:18 | After 2 [no-match] | Switch.cs:113:9:113:11 | M10 |
| Switch.cs:118:25:118:33 | After ... == ... [false] | Switch.cs:113:9:113:11 | M10 |
| Switch.cs:118:25:118:33 | After ... == ... [true] | Switch.cs:113:9:113:11 | M10 |
| Switch.cs:123:10:123:12 | Entry | Switch.cs:123:10:123:12 | M11 |
| Switch.cs:123:10:123:12 | Normal Exit | Switch.cs:123:10:123:12 | M11 |
| Switch.cs:125:13:125:48 | After ... switch { ... } [false] | Switch.cs:123:10:123:12 | M11 |
| Switch.cs:125:13:125:48 | After ... switch { ... } [true] | Switch.cs:123:10:123:12 | M11 |
-| Switch.cs:125:24:125:34 | After ... => ... [match] | Switch.cs:123:10:123:12 | M11 |
-| Switch.cs:125:24:125:34 | After ... => ... [no-match] | Switch.cs:123:10:123:12 | M11 |
+| Switch.cs:125:24:125:29 | After Boolean b [match] | Switch.cs:123:10:123:12 | M11 |
+| Switch.cs:125:24:125:29 | After Boolean b [no-match] | Switch.cs:123:10:123:12 | M11 |
| Switch.cs:129:12:129:14 | Entry | Switch.cs:129:12:129:14 | M12 |
| Switch.cs:131:16:131:66 | After call to method ToString | Switch.cs:129:12:129:14 | M12 |
| Switch.cs:131:17:131:53 | After ... switch { ... } [non-null] | Switch.cs:129:12:129:14 | M12 |
| Switch.cs:131:17:131:53 | After ... switch { ... } [null] | Switch.cs:129:12:129:14 | M12 |
-| Switch.cs:131:28:131:40 | After ... => ... [match] | Switch.cs:129:12:129:14 | M12 |
-| Switch.cs:131:28:131:40 | After ... => ... [no-match] | Switch.cs:129:12:129:14 | M12 |
+| Switch.cs:131:28:131:35 | After String s [match] | Switch.cs:129:12:129:14 | M12 |
+| Switch.cs:131:28:131:35 | After String s [no-match] | Switch.cs:129:12:129:14 | M12 |
| Switch.cs:134:9:134:11 | Entry | Switch.cs:134:9:134:11 | M13 |
| Switch.cs:134:9:134:11 | Normal Exit | Switch.cs:134:9:134:11 | M13 |
-| Switch.cs:139:13:139:19 | After case ...: [match] | Switch.cs:134:9:134:11 | M13 |
-| Switch.cs:139:13:139:19 | After case ...: [no-match] | Switch.cs:134:9:134:11 | M13 |
-| Switch.cs:140:13:140:19 | After case ...: [match] | Switch.cs:134:9:134:11 | M13 |
-| Switch.cs:140:13:140:19 | After case ...: [no-match] | Switch.cs:134:9:134:11 | M13 |
+| Switch.cs:139:18:139:18 | After 1 [match] | Switch.cs:134:9:134:11 | M13 |
+| Switch.cs:139:18:139:18 | After 1 [no-match] | Switch.cs:134:9:134:11 | M13 |
+| Switch.cs:140:18:140:18 | After 2 [match] | Switch.cs:134:9:134:11 | M13 |
+| Switch.cs:140:18:140:18 | After 2 [no-match] | Switch.cs:134:9:134:11 | M13 |
| Switch.cs:144:9:144:11 | Entry | Switch.cs:144:9:144:11 | M14 |
| Switch.cs:144:9:144:11 | Normal Exit | Switch.cs:144:9:144:11 | M14 |
-| Switch.cs:148:13:148:19 | After case ...: [match] | Switch.cs:144:9:144:11 | M14 |
-| Switch.cs:148:13:148:19 | After case ...: [no-match] | Switch.cs:144:9:144:11 | M14 |
-| Switch.cs:150:13:150:19 | After case ...: [match] | Switch.cs:144:9:144:11 | M14 |
-| Switch.cs:150:13:150:19 | After case ...: [no-match] | Switch.cs:144:9:144:11 | M14 |
+| Switch.cs:148:18:148:18 | After 1 [match] | Switch.cs:144:9:144:11 | M14 |
+| Switch.cs:148:18:148:18 | After 1 [no-match] | Switch.cs:144:9:144:11 | M14 |
+| Switch.cs:150:18:150:18 | After 2 [match] | Switch.cs:144:9:144:11 | M14 |
+| Switch.cs:150:18:150:18 | After 2 [no-match] | Switch.cs:144:9:144:11 | M14 |
| Switch.cs:154:10:154:12 | Entry | Switch.cs:154:10:154:12 | M15 |
| Switch.cs:156:17:156:54 | After ... switch { ... } | Switch.cs:154:10:154:12 | M15 |
-| Switch.cs:156:28:156:38 | After ... => ... [match] | Switch.cs:154:10:154:12 | M15 |
-| Switch.cs:156:28:156:38 | After ... => ... [no-match] | Switch.cs:154:10:154:12 | M15 |
-| Switch.cs:156:41:156:52 | After ... => ... [match] | Switch.cs:154:10:154:12 | M15 |
-| Switch.cs:156:41:156:52 | After ... => ... [no-match] | Switch.cs:154:10:154:12 | M15 |
+| Switch.cs:156:28:156:31 | After true [match] | Switch.cs:154:10:154:12 | M15 |
+| Switch.cs:156:28:156:31 | After true [no-match] | Switch.cs:154:10:154:12 | M15 |
+| Switch.cs:156:41:156:45 | After false [match] | Switch.cs:154:10:154:12 | M15 |
+| Switch.cs:156:41:156:45 | After false [no-match] | Switch.cs:154:10:154:12 | M15 |
| Switch.cs:157:9:160:49 | After if (...) ... | Switch.cs:154:10:154:12 | M15 |
| Switch.cs:157:13:157:13 | After access to parameter b [false] | Switch.cs:154:10:154:12 | M15 |
| Switch.cs:157:13:157:13 | After access to parameter b [true] | Switch.cs:154:10:154:12 | M15 |
| Switch.cs:163:10:163:12 | Entry | Switch.cs:163:10:163:12 | M16 |
| Switch.cs:165:9:177:9 | After switch (...) {...} | Switch.cs:163:10:163:12 | M16 |
-| Switch.cs:167:13:167:19 | After case ...: [match] | Switch.cs:163:10:163:12 | M16 |
-| Switch.cs:167:13:167:19 | After case ...: [no-match] | Switch.cs:163:10:163:12 | M16 |
-| Switch.cs:168:13:168:19 | After case ...: [match] | Switch.cs:163:10:163:12 | M16 |
-| Switch.cs:168:13:168:19 | After case ...: [no-match] | Switch.cs:163:10:163:12 | M16 |
+| Switch.cs:167:18:167:18 | After 1 [match] | Switch.cs:163:10:163:12 | M16 |
+| Switch.cs:167:18:167:18 | After 1 [no-match] | Switch.cs:163:10:163:12 | M16 |
+| Switch.cs:168:18:168:18 | After 2 [match] | Switch.cs:163:10:163:12 | M16 |
+| Switch.cs:168:18:168:18 | After 2 [no-match] | Switch.cs:163:10:163:12 | M16 |
| Switch.cs:169:17:169:51 | ...; | Switch.cs:163:10:163:12 | M16 |
-| Switch.cs:171:13:171:19 | After case ...: [match] | Switch.cs:163:10:163:12 | M16 |
-| Switch.cs:171:13:171:19 | After case ...: [no-match] | Switch.cs:163:10:163:12 | M16 |
+| Switch.cs:171:18:171:18 | After 3 [match] | Switch.cs:163:10:163:12 | M16 |
+| Switch.cs:171:18:171:18 | After 3 [no-match] | Switch.cs:163:10:163:12 | M16 |
| TypeAccesses.cs:1:7:1:18 | Entry | TypeAccesses.cs:1:7:1:18 | TypeAccesses |
| TypeAccesses.cs:3:10:3:10 | Entry | TypeAccesses.cs:3:10:3:10 | M |
| TypeAccesses.cs:7:9:7:25 | After if (...) ... | TypeAccesses.cs:3:10:3:10 | M |
@@ -9443,17 +9542,19 @@ blockEnclosing
| cflow.cs:37:17:37:22 | Exit | cflow.cs:37:17:37:22 | Switch |
| cflow.cs:39:9:50:9 | After switch (...) {...} | cflow.cs:37:17:37:22 | Switch |
| cflow.cs:41:13:41:19 | After case ...: [match] | cflow.cs:37:17:37:22 | Switch |
-| cflow.cs:41:13:41:19 | After case ...: [no-match] | cflow.cs:37:17:37:22 | Switch |
+| cflow.cs:41:18:41:18 | After 1 [match] | cflow.cs:37:17:37:22 | Switch |
+| cflow.cs:41:18:41:18 | After 1 [no-match] | cflow.cs:37:17:37:22 | Switch |
| cflow.cs:44:13:44:19 | After case ...: [match] | cflow.cs:37:17:37:22 | Switch |
-| cflow.cs:44:13:44:19 | After case ...: [no-match] | cflow.cs:37:17:37:22 | Switch |
-| cflow.cs:47:13:47:19 | After case ...: [match] | cflow.cs:37:17:37:22 | Switch |
-| cflow.cs:47:13:47:19 | After case ...: [no-match] | cflow.cs:37:17:37:22 | Switch |
+| cflow.cs:44:18:44:18 | After 2 [match] | cflow.cs:37:17:37:22 | Switch |
+| cflow.cs:44:18:44:18 | After 2 [no-match] | cflow.cs:37:17:37:22 | Switch |
+| cflow.cs:47:18:47:18 | After 3 [match] | cflow.cs:37:17:37:22 | Switch |
+| cflow.cs:47:18:47:18 | After 3 [no-match] | cflow.cs:37:17:37:22 | Switch |
| cflow.cs:51:9:59:9 | After switch (...) {...} | cflow.cs:37:17:37:22 | Switch |
-| cflow.cs:53:13:53:20 | After case ...: [match] | cflow.cs:37:17:37:22 | Switch |
-| cflow.cs:53:13:53:20 | After case ...: [no-match] | cflow.cs:37:17:37:22 | Switch |
+| cflow.cs:53:18:53:19 | After 42 [match] | cflow.cs:37:17:37:22 | Switch |
+| cflow.cs:53:18:53:19 | After 42 [no-match] | cflow.cs:37:17:37:22 | Switch |
| cflow.cs:60:9:66:9 | After switch (...) {...} | cflow.cs:37:17:37:22 | Switch |
-| cflow.cs:62:13:62:19 | After case ...: [match] | cflow.cs:37:17:37:22 | Switch |
-| cflow.cs:62:13:62:19 | After case ...: [no-match] | cflow.cs:37:17:37:22 | Switch |
+| cflow.cs:62:18:62:18 | After 0 [match] | cflow.cs:37:17:37:22 | Switch |
+| cflow.cs:62:18:62:18 | After 0 [no-match] | cflow.cs:37:17:37:22 | Switch |
| cflow.cs:63:23:63:33 | After ... == ... [false] | cflow.cs:37:17:37:22 | Switch |
| cflow.cs:63:23:63:33 | After ... == ... [true] | cflow.cs:37:17:37:22 | Switch |
| cflow.cs:70:18:70:18 | Entry | cflow.cs:70:18:70:18 | M |
@@ -9578,12 +9679,12 @@ blockEnclosing
| cflow.cs:244:13:244:28 | After ... > ... [false] | cflow.cs:240:10:240:13 | Goto |
| cflow.cs:244:13:244:28 | After ... > ... [true] | cflow.cs:240:10:240:13 | Goto |
| cflow.cs:246:9:258:9 | After switch (...) {...} | cflow.cs:240:10:240:13 | Goto |
-| cflow.cs:248:13:248:19 | After case ...: [match] | cflow.cs:240:10:240:13 | Goto |
-| cflow.cs:248:13:248:19 | After case ...: [no-match] | cflow.cs:240:10:240:13 | Goto |
-| cflow.cs:250:13:250:19 | After case ...: [match] | cflow.cs:240:10:240:13 | Goto |
-| cflow.cs:250:13:250:19 | After case ...: [no-match] | cflow.cs:240:10:240:13 | Goto |
-| cflow.cs:253:13:253:19 | After case ...: [match] | cflow.cs:240:10:240:13 | Goto |
-| cflow.cs:253:13:253:19 | After case ...: [no-match] | cflow.cs:240:10:240:13 | Goto |
+| cflow.cs:248:18:248:18 | After 0 [match] | cflow.cs:240:10:240:13 | Goto |
+| cflow.cs:248:18:248:18 | After 0 [no-match] | cflow.cs:240:10:240:13 | Goto |
+| cflow.cs:250:18:250:18 | After 1 [match] | cflow.cs:240:10:240:13 | Goto |
+| cflow.cs:250:18:250:18 | After 1 [no-match] | cflow.cs:240:10:240:13 | Goto |
+| cflow.cs:253:18:253:18 | After 2 [match] | cflow.cs:240:10:240:13 | Goto |
+| cflow.cs:253:18:253:18 | After 2 [no-match] | cflow.cs:240:10:240:13 | Goto |
| cflow.cs:255:13:255:20 | After default: [match] | cflow.cs:240:10:240:13 | Goto |
| cflow.cs:261:49:261:53 | Entry | cflow.cs:261:49:261:53 | Yield |
| cflow.cs:261:49:261:53 | Exceptional Exit | cflow.cs:261:49:261:53 | Yield |
diff --git a/csharp/ql/test/library-tests/controlflow/graph/NodeGraph.expected b/csharp/ql/test/library-tests/controlflow/graph/NodeGraph.expected
index f9619e825cc..da56986ea09 100644
--- a/csharp/ql/test/library-tests/controlflow/graph/NodeGraph.expected
+++ b/csharp/ql/test/library-tests/controlflow/graph/NodeGraph.expected
@@ -5714,18 +5714,22 @@
| Patterns.cs:20:9:38:9 | After switch (...) {...} | Patterns.cs:40:9:42:9 | switch (...) {...} | |
| Patterns.cs:20:9:38:9 | switch (...) {...} | Patterns.cs:20:17:20:17 | access to local variable o | |
| Patterns.cs:20:17:20:17 | access to local variable o | Patterns.cs:22:13:22:23 | case ...: | |
-| Patterns.cs:22:13:22:23 | After case ...: [match] | Patterns.cs:22:18:22:22 | "xyz" | |
+| Patterns.cs:22:13:22:23 | After case ...: [match] | Patterns.cs:23:17:23:22 | Before break; | |
| Patterns.cs:22:13:22:23 | After case ...: [no-match] | Patterns.cs:24:13:24:36 | case ...: | |
-| Patterns.cs:22:13:22:23 | case ...: | Patterns.cs:22:13:22:23 | After case ...: [match] | match |
-| Patterns.cs:22:13:22:23 | case ...: | Patterns.cs:22:13:22:23 | After case ...: [no-match] | no-match |
-| Patterns.cs:22:18:22:22 | "xyz" | Patterns.cs:23:17:23:22 | Before break; | |
+| Patterns.cs:22:13:22:23 | case ...: | Patterns.cs:22:18:22:22 | "xyz" | |
+| Patterns.cs:22:18:22:22 | "xyz" | Patterns.cs:22:18:22:22 | After "xyz" [match] | match |
+| Patterns.cs:22:18:22:22 | "xyz" | Patterns.cs:22:18:22:22 | After "xyz" [no-match] | no-match |
+| Patterns.cs:22:18:22:22 | After "xyz" [match] | Patterns.cs:22:13:22:23 | After case ...: [match] | match |
+| Patterns.cs:22:18:22:22 | After "xyz" [no-match] | Patterns.cs:22:13:22:23 | After case ...: [no-match] | no-match |
| Patterns.cs:23:17:23:22 | Before break; | Patterns.cs:23:17:23:22 | break; | |
| Patterns.cs:23:17:23:22 | break; | Patterns.cs:20:9:38:9 | After switch (...) {...} | break |
-| Patterns.cs:24:13:24:36 | After case ...: [match] | Patterns.cs:24:18:24:23 | Int32 i2 | |
+| Patterns.cs:24:13:24:36 | After case ...: [match] | Patterns.cs:24:30:24:35 | Before ... > ... | |
| Patterns.cs:24:13:24:36 | After case ...: [no-match] | Patterns.cs:27:13:27:24 | case ...: | |
-| Patterns.cs:24:13:24:36 | case ...: | Patterns.cs:24:13:24:36 | After case ...: [match] | match |
-| Patterns.cs:24:13:24:36 | case ...: | Patterns.cs:24:13:24:36 | After case ...: [no-match] | no-match |
-| Patterns.cs:24:18:24:23 | Int32 i2 | Patterns.cs:24:30:24:35 | Before ... > ... | |
+| Patterns.cs:24:13:24:36 | case ...: | Patterns.cs:24:18:24:23 | Int32 i2 | |
+| Patterns.cs:24:18:24:23 | After Int32 i2 [match] | Patterns.cs:24:13:24:36 | After case ...: [match] | match |
+| Patterns.cs:24:18:24:23 | After Int32 i2 [no-match] | Patterns.cs:24:13:24:36 | After case ...: [no-match] | no-match |
+| Patterns.cs:24:18:24:23 | Int32 i2 | Patterns.cs:24:18:24:23 | After Int32 i2 [match] | match |
+| Patterns.cs:24:18:24:23 | Int32 i2 | Patterns.cs:24:18:24:23 | After Int32 i2 [no-match] | no-match |
| Patterns.cs:24:30:24:31 | access to local variable i2 | Patterns.cs:24:35:24:35 | 0 | |
| Patterns.cs:24:30:24:35 | ... > ... | Patterns.cs:24:30:24:35 | After ... > ... [false] | false |
| Patterns.cs:24:30:24:35 | ... > ... | Patterns.cs:24:30:24:35 | After ... > ... [true] | true |
@@ -5748,11 +5752,13 @@
| Patterns.cs:25:47:25:48 | access to local variable i2 | Patterns.cs:25:46:25:49 | {...} | |
| Patterns.cs:26:17:26:22 | Before break; | Patterns.cs:26:17:26:22 | break; | |
| Patterns.cs:26:17:26:22 | break; | Patterns.cs:20:9:38:9 | After switch (...) {...} | break |
-| Patterns.cs:27:13:27:24 | After case ...: [match] | Patterns.cs:27:18:27:23 | Int32 i3 | |
+| Patterns.cs:27:13:27:24 | After case ...: [match] | Patterns.cs:28:17:28:47 | ...; | |
| Patterns.cs:27:13:27:24 | After case ...: [no-match] | Patterns.cs:30:13:30:27 | case ...: | |
-| Patterns.cs:27:13:27:24 | case ...: | Patterns.cs:27:13:27:24 | After case ...: [match] | match |
-| Patterns.cs:27:13:27:24 | case ...: | Patterns.cs:27:13:27:24 | After case ...: [no-match] | no-match |
-| Patterns.cs:27:18:27:23 | Int32 i3 | Patterns.cs:28:17:28:47 | ...; | |
+| Patterns.cs:27:13:27:24 | case ...: | Patterns.cs:27:18:27:23 | Int32 i3 | |
+| Patterns.cs:27:18:27:23 | After Int32 i3 [match] | Patterns.cs:27:13:27:24 | After case ...: [match] | match |
+| Patterns.cs:27:18:27:23 | After Int32 i3 [no-match] | Patterns.cs:27:13:27:24 | After case ...: [no-match] | no-match |
+| Patterns.cs:27:18:27:23 | Int32 i3 | Patterns.cs:27:18:27:23 | After Int32 i3 [match] | match |
+| Patterns.cs:27:18:27:23 | Int32 i3 | Patterns.cs:27:18:27:23 | After Int32 i3 [no-match] | no-match |
| Patterns.cs:28:17:28:46 | After call to method WriteLine | Patterns.cs:28:17:28:47 | After ...; | |
| Patterns.cs:28:17:28:46 | Before call to method WriteLine | Patterns.cs:28:35:28:45 | Before $"..." | |
| Patterns.cs:28:17:28:46 | call to method WriteLine | Patterns.cs:28:17:28:46 | After call to method WriteLine | |
@@ -5768,11 +5774,13 @@
| Patterns.cs:28:42:28:43 | access to local variable i3 | Patterns.cs:28:41:28:44 | {...} | |
| Patterns.cs:29:17:29:22 | Before break; | Patterns.cs:29:17:29:22 | break; | |
| Patterns.cs:29:17:29:22 | break; | Patterns.cs:20:9:38:9 | After switch (...) {...} | break |
-| Patterns.cs:30:13:30:27 | After case ...: [match] | Patterns.cs:30:18:30:26 | String s2 | |
+| Patterns.cs:30:13:30:27 | After case ...: [match] | Patterns.cs:31:17:31:50 | ...; | |
| Patterns.cs:30:13:30:27 | After case ...: [no-match] | Patterns.cs:33:13:33:24 | case ...: | |
-| Patterns.cs:30:13:30:27 | case ...: | Patterns.cs:30:13:30:27 | After case ...: [match] | match |
-| Patterns.cs:30:13:30:27 | case ...: | Patterns.cs:30:13:30:27 | After case ...: [no-match] | no-match |
-| Patterns.cs:30:18:30:26 | String s2 | Patterns.cs:31:17:31:50 | ...; | |
+| Patterns.cs:30:13:30:27 | case ...: | Patterns.cs:30:18:30:26 | String s2 | |
+| Patterns.cs:30:18:30:26 | After String s2 [match] | Patterns.cs:30:13:30:27 | After case ...: [match] | match |
+| Patterns.cs:30:18:30:26 | After String s2 [no-match] | Patterns.cs:30:13:30:27 | After case ...: [no-match] | no-match |
+| Patterns.cs:30:18:30:26 | String s2 | Patterns.cs:30:18:30:26 | After String s2 [match] | match |
+| Patterns.cs:30:18:30:26 | String s2 | Patterns.cs:30:18:30:26 | After String s2 [no-match] | no-match |
| Patterns.cs:31:17:31:49 | After call to method WriteLine | Patterns.cs:31:17:31:50 | After ...; | |
| Patterns.cs:31:17:31:49 | Before call to method WriteLine | Patterns.cs:31:35:31:48 | Before $"..." | |
| Patterns.cs:31:17:31:49 | call to method WriteLine | Patterns.cs:31:17:31:49 | After call to method WriteLine | |
@@ -5788,11 +5796,13 @@
| Patterns.cs:31:45:31:46 | access to local variable s2 | Patterns.cs:31:44:31:47 | {...} | |
| Patterns.cs:32:17:32:22 | Before break; | Patterns.cs:32:17:32:22 | break; | |
| Patterns.cs:32:17:32:22 | break; | Patterns.cs:20:9:38:9 | After switch (...) {...} | break |
-| Patterns.cs:33:13:33:24 | After case ...: [match] | Patterns.cs:33:18:33:23 | Object v2 | |
+| Patterns.cs:33:13:33:24 | After case ...: [match] | Patterns.cs:34:17:34:22 | Before break; | |
| Patterns.cs:33:13:33:24 | After case ...: [no-match] | Patterns.cs:35:13:35:20 | default: | |
-| Patterns.cs:33:13:33:24 | case ...: | Patterns.cs:33:13:33:24 | After case ...: [match] | match |
-| Patterns.cs:33:13:33:24 | case ...: | Patterns.cs:33:13:33:24 | After case ...: [no-match] | no-match |
-| Patterns.cs:33:18:33:23 | Object v2 | Patterns.cs:34:17:34:22 | Before break; | |
+| Patterns.cs:33:13:33:24 | case ...: | Patterns.cs:33:18:33:23 | Object v2 | |
+| Patterns.cs:33:18:33:23 | After Object v2 [match] | Patterns.cs:33:13:33:24 | After case ...: [match] | match |
+| Patterns.cs:33:18:33:23 | After Object v2 [no-match] | Patterns.cs:33:13:33:24 | After case ...: [no-match] | no-match |
+| Patterns.cs:33:18:33:23 | Object v2 | Patterns.cs:33:18:33:23 | After Object v2 [match] | match |
+| Patterns.cs:33:18:33:23 | Object v2 | Patterns.cs:33:18:33:23 | After Object v2 [no-match] | no-match |
| Patterns.cs:34:17:34:22 | Before break; | Patterns.cs:34:17:34:22 | break; | |
| Patterns.cs:34:17:34:22 | break; | Patterns.cs:20:9:38:9 | After switch (...) {...} | break |
| Patterns.cs:35:13:35:20 | After default: [match] | Patterns.cs:36:17:36:52 | ...; | |
@@ -5881,18 +5891,20 @@
| Patterns.cs:58:16:58:16 | access to parameter i | Patterns.cs:60:13:60:28 | ... => ... | |
| Patterns.cs:58:16:62:9 | ... switch { ... } | Patterns.cs:58:16:58:16 | access to parameter i | |
| Patterns.cs:58:16:62:9 | After ... switch { ... } | Patterns.cs:58:9:62:10 | return ...; | |
-| Patterns.cs:60:13:60:17 | After not ... | Patterns.cs:60:22:60:28 | "not 1" | |
+| Patterns.cs:60:13:60:17 | After not ... [match] | Patterns.cs:60:13:60:28 | After ... => ... [match] | match |
+| Patterns.cs:60:13:60:17 | After not ... [no-match] | Patterns.cs:60:13:60:28 | After ... => ... [no-match] | no-match |
| Patterns.cs:60:13:60:17 | Before not ... | Patterns.cs:60:17:60:17 | 1 | |
-| Patterns.cs:60:13:60:17 | not ... | Patterns.cs:60:13:60:17 | After not ... | |
-| Patterns.cs:60:13:60:28 | ... => ... | Patterns.cs:60:13:60:28 | After ... => ... [match] | match |
-| Patterns.cs:60:13:60:28 | ... => ... | Patterns.cs:60:13:60:28 | After ... => ... [no-match] | no-match |
-| Patterns.cs:60:13:60:28 | After ... => ... [match] | Patterns.cs:60:13:60:17 | Before not ... | |
+| Patterns.cs:60:13:60:17 | not ... | Patterns.cs:60:13:60:17 | After not ... [match] | match |
+| Patterns.cs:60:13:60:17 | not ... | Patterns.cs:60:13:60:17 | After not ... [no-match] | no-match |
+| Patterns.cs:60:13:60:28 | ... => ... | Patterns.cs:60:13:60:17 | Before not ... | |
+| Patterns.cs:60:13:60:28 | After ... => ... [match] | Patterns.cs:60:22:60:28 | "not 1" | |
| Patterns.cs:60:13:60:28 | After ... => ... [no-match] | Patterns.cs:61:13:61:24 | ... => ... | |
| Patterns.cs:60:17:60:17 | 1 | Patterns.cs:60:13:60:17 | not ... | |
| Patterns.cs:60:22:60:28 | "not 1" | Patterns.cs:58:16:62:9 | After ... switch { ... } | |
-| Patterns.cs:61:13:61:13 | _ | Patterns.cs:61:18:61:24 | "other" | |
-| Patterns.cs:61:13:61:24 | ... => ... | Patterns.cs:61:13:61:24 | After ... => ... [match] | match |
-| Patterns.cs:61:13:61:24 | After ... => ... [match] | Patterns.cs:61:13:61:13 | _ | |
+| Patterns.cs:61:13:61:13 | After _ [match] | Patterns.cs:61:13:61:24 | After ... => ... [match] | match |
+| Patterns.cs:61:13:61:13 | _ | Patterns.cs:61:13:61:13 | After _ [match] | match |
+| Patterns.cs:61:13:61:24 | ... => ... | Patterns.cs:61:13:61:13 | _ | |
+| Patterns.cs:61:13:61:24 | After ... => ... [match] | Patterns.cs:61:18:61:24 | "other" | |
| Patterns.cs:61:18:61:24 | "other" | Patterns.cs:58:16:62:9 | After ... switch { ... } | |
| Patterns.cs:65:26:65:27 | Entry | Patterns.cs:66:5:72:5 | {...} | |
| Patterns.cs:65:26:65:27 | Normal Exit | Patterns.cs:65:26:65:27 | Exit | |
@@ -5902,19 +5914,22 @@
| Patterns.cs:67:16:67:16 | 2 | Patterns.cs:69:13:69:33 | ... => ... | |
| Patterns.cs:67:16:71:9 | ... switch { ... } | Patterns.cs:67:16:67:16 | 2 | |
| Patterns.cs:67:16:71:9 | After ... switch { ... } | Patterns.cs:67:9:71:10 | return ...; | |
-| Patterns.cs:69:13:69:17 | After not ... | Patterns.cs:69:22:69:33 | "impossible" | |
+| Patterns.cs:69:13:69:17 | After not ... [match] | Patterns.cs:69:13:69:33 | After ... => ... [match] | match |
+| Patterns.cs:69:13:69:17 | After not ... [no-match] | Patterns.cs:69:13:69:33 | After ... => ... [no-match] | no-match |
| Patterns.cs:69:13:69:17 | Before not ... | Patterns.cs:69:17:69:17 | 2 | |
-| Patterns.cs:69:13:69:17 | not ... | Patterns.cs:69:13:69:17 | After not ... | |
-| Patterns.cs:69:13:69:33 | ... => ... | Patterns.cs:69:13:69:33 | After ... => ... [match] | match |
-| Patterns.cs:69:13:69:33 | ... => ... | Patterns.cs:69:13:69:33 | After ... => ... [no-match] | no-match |
-| Patterns.cs:69:13:69:33 | After ... => ... [match] | Patterns.cs:69:13:69:17 | Before not ... | |
+| Patterns.cs:69:13:69:17 | not ... | Patterns.cs:69:13:69:17 | After not ... [match] | match |
+| Patterns.cs:69:13:69:17 | not ... | Patterns.cs:69:13:69:17 | After not ... [no-match] | no-match |
+| Patterns.cs:69:13:69:33 | ... => ... | Patterns.cs:69:13:69:17 | Before not ... | |
+| Patterns.cs:69:13:69:33 | After ... => ... [match] | Patterns.cs:69:22:69:33 | "impossible" | |
| Patterns.cs:69:13:69:33 | After ... => ... [no-match] | Patterns.cs:70:13:70:27 | ... => ... | |
| Patterns.cs:69:17:69:17 | 2 | Patterns.cs:69:13:69:17 | not ... | |
| Patterns.cs:69:22:69:33 | "impossible" | Patterns.cs:67:16:71:9 | After ... switch { ... } | |
-| Patterns.cs:70:13:70:13 | 2 | Patterns.cs:70:18:70:27 | "possible" | |
-| Patterns.cs:70:13:70:27 | ... => ... | Patterns.cs:70:13:70:27 | After ... => ... [match] | match |
-| Patterns.cs:70:13:70:27 | ... => ... | Patterns.cs:70:13:70:27 | After ... => ... [no-match] | no-match |
-| Patterns.cs:70:13:70:27 | After ... => ... [match] | Patterns.cs:70:13:70:13 | 2 | |
+| Patterns.cs:70:13:70:13 | 2 | Patterns.cs:70:13:70:13 | After 2 [match] | match |
+| Patterns.cs:70:13:70:13 | 2 | Patterns.cs:70:13:70:13 | After 2 [no-match] | no-match |
+| Patterns.cs:70:13:70:13 | After 2 [match] | Patterns.cs:70:13:70:27 | After ... => ... [match] | match |
+| Patterns.cs:70:13:70:13 | After 2 [no-match] | Patterns.cs:70:13:70:27 | After ... => ... [no-match] | no-match |
+| Patterns.cs:70:13:70:27 | ... => ... | Patterns.cs:70:13:70:13 | 2 | |
+| Patterns.cs:70:13:70:27 | After ... => ... [match] | Patterns.cs:70:18:70:27 | "possible" | |
| Patterns.cs:70:13:70:27 | After ... => ... [no-match] | Patterns.cs:67:16:71:9 | After ... switch { ... } | |
| Patterns.cs:70:18:70:27 | "possible" | Patterns.cs:67:16:71:9 | After ... switch { ... } | |
| Patterns.cs:74:26:74:27 | Entry | Patterns.cs:74:33:74:33 | i | |
@@ -5926,33 +5941,38 @@
| Patterns.cs:76:16:76:16 | access to parameter i | Patterns.cs:78:13:78:24 | ... => ... | |
| Patterns.cs:76:16:82:9 | ... switch { ... } | Patterns.cs:76:16:76:16 | access to parameter i | |
| Patterns.cs:76:16:82:9 | After ... switch { ... } | Patterns.cs:76:9:82:10 | return ...; | |
-| Patterns.cs:78:13:78:15 | > ... | Patterns.cs:78:13:78:15 | After > ... | |
-| Patterns.cs:78:13:78:15 | After > ... | Patterns.cs:78:20:78:24 | "> 1" | |
+| Patterns.cs:78:13:78:15 | > ... | Patterns.cs:78:13:78:15 | After > ... [match] | match |
+| Patterns.cs:78:13:78:15 | > ... | Patterns.cs:78:13:78:15 | After > ... [no-match] | no-match |
+| Patterns.cs:78:13:78:15 | After > ... [match] | Patterns.cs:78:13:78:24 | After ... => ... [match] | match |
+| Patterns.cs:78:13:78:15 | After > ... [no-match] | Patterns.cs:78:13:78:24 | After ... => ... [no-match] | no-match |
| Patterns.cs:78:13:78:15 | Before > ... | Patterns.cs:78:15:78:15 | 1 | |
-| Patterns.cs:78:13:78:24 | ... => ... | Patterns.cs:78:13:78:24 | After ... => ... [match] | match |
-| Patterns.cs:78:13:78:24 | ... => ... | Patterns.cs:78:13:78:24 | After ... => ... [no-match] | no-match |
-| Patterns.cs:78:13:78:24 | After ... => ... [match] | Patterns.cs:78:13:78:15 | Before > ... | |
+| Patterns.cs:78:13:78:24 | ... => ... | Patterns.cs:78:13:78:15 | Before > ... | |
+| Patterns.cs:78:13:78:24 | After ... => ... [match] | Patterns.cs:78:20:78:24 | "> 1" | |
| Patterns.cs:78:13:78:24 | After ... => ... [no-match] | Patterns.cs:79:13:79:24 | ... => ... | |
| Patterns.cs:78:15:78:15 | 1 | Patterns.cs:78:13:78:15 | > ... | |
| Patterns.cs:78:20:78:24 | "> 1" | Patterns.cs:76:16:82:9 | After ... switch { ... } | |
-| Patterns.cs:79:13:79:15 | < ... | Patterns.cs:79:13:79:15 | After < ... | |
-| Patterns.cs:79:13:79:15 | After < ... | Patterns.cs:79:20:79:24 | "< 0" | |
+| Patterns.cs:79:13:79:15 | < ... | Patterns.cs:79:13:79:15 | After < ... [match] | match |
+| Patterns.cs:79:13:79:15 | < ... | Patterns.cs:79:13:79:15 | After < ... [no-match] | no-match |
+| Patterns.cs:79:13:79:15 | After < ... [match] | Patterns.cs:79:13:79:24 | After ... => ... [match] | match |
+| Patterns.cs:79:13:79:15 | After < ... [no-match] | Patterns.cs:79:13:79:24 | After ... => ... [no-match] | no-match |
| Patterns.cs:79:13:79:15 | Before < ... | Patterns.cs:79:15:79:15 | 0 | |
-| Patterns.cs:79:13:79:24 | ... => ... | Patterns.cs:79:13:79:24 | After ... => ... [match] | match |
-| Patterns.cs:79:13:79:24 | ... => ... | Patterns.cs:79:13:79:24 | After ... => ... [no-match] | no-match |
-| Patterns.cs:79:13:79:24 | After ... => ... [match] | Patterns.cs:79:13:79:15 | Before < ... | |
+| Patterns.cs:79:13:79:24 | ... => ... | Patterns.cs:79:13:79:15 | Before < ... | |
+| Patterns.cs:79:13:79:24 | After ... => ... [match] | Patterns.cs:79:20:79:24 | "< 0" | |
| Patterns.cs:79:13:79:24 | After ... => ... [no-match] | Patterns.cs:80:13:80:20 | ... => ... | |
| Patterns.cs:79:15:79:15 | 0 | Patterns.cs:79:13:79:15 | < ... | |
| Patterns.cs:79:20:79:24 | "< 0" | Patterns.cs:76:16:82:9 | After ... switch { ... } | |
-| Patterns.cs:80:13:80:13 | 1 | Patterns.cs:80:18:80:20 | "1" | |
-| Patterns.cs:80:13:80:20 | ... => ... | Patterns.cs:80:13:80:20 | After ... => ... [match] | match |
-| Patterns.cs:80:13:80:20 | ... => ... | Patterns.cs:80:13:80:20 | After ... => ... [no-match] | no-match |
-| Patterns.cs:80:13:80:20 | After ... => ... [match] | Patterns.cs:80:13:80:13 | 1 | |
+| Patterns.cs:80:13:80:13 | 1 | Patterns.cs:80:13:80:13 | After 1 [match] | match |
+| Patterns.cs:80:13:80:13 | 1 | Patterns.cs:80:13:80:13 | After 1 [no-match] | no-match |
+| Patterns.cs:80:13:80:13 | After 1 [match] | Patterns.cs:80:13:80:20 | After ... => ... [match] | match |
+| Patterns.cs:80:13:80:13 | After 1 [no-match] | Patterns.cs:80:13:80:20 | After ... => ... [no-match] | no-match |
+| Patterns.cs:80:13:80:20 | ... => ... | Patterns.cs:80:13:80:13 | 1 | |
+| Patterns.cs:80:13:80:20 | After ... => ... [match] | Patterns.cs:80:18:80:20 | "1" | |
| Patterns.cs:80:13:80:20 | After ... => ... [no-match] | Patterns.cs:81:13:81:20 | ... => ... | |
| Patterns.cs:80:18:80:20 | "1" | Patterns.cs:76:16:82:9 | After ... switch { ... } | |
-| Patterns.cs:81:13:81:13 | _ | Patterns.cs:81:18:81:20 | "0" | |
-| Patterns.cs:81:13:81:20 | ... => ... | Patterns.cs:81:13:81:20 | After ... => ... [match] | match |
-| Patterns.cs:81:13:81:20 | After ... => ... [match] | Patterns.cs:81:13:81:13 | _ | |
+| Patterns.cs:81:13:81:13 | After _ [match] | Patterns.cs:81:13:81:20 | After ... => ... [match] | match |
+| Patterns.cs:81:13:81:13 | _ | Patterns.cs:81:13:81:13 | After _ [match] | match |
+| Patterns.cs:81:13:81:20 | ... => ... | Patterns.cs:81:13:81:13 | _ | |
+| Patterns.cs:81:13:81:20 | After ... => ... [match] | Patterns.cs:81:18:81:20 | "0" | |
| Patterns.cs:81:18:81:20 | "0" | Patterns.cs:76:16:82:9 | After ... switch { ... } | |
| Patterns.cs:85:26:85:27 | Entry | Patterns.cs:85:33:85:33 | i | |
| Patterns.cs:85:26:85:27 | Normal Exit | Patterns.cs:85:26:85:27 | Exit | |
@@ -6291,35 +6311,43 @@
| Switch.cs:11:5:33:5 | {...} | Switch.cs:12:9:32:9 | switch (...) {...} | |
| Switch.cs:12:9:32:9 | switch (...) {...} | Switch.cs:12:17:12:17 | access to parameter o | |
| Switch.cs:12:17:12:17 | access to parameter o | Switch.cs:14:13:14:21 | case ...: | |
-| Switch.cs:14:13:14:21 | After case ...: [match] | Switch.cs:14:18:14:20 | "a" | |
+| Switch.cs:14:13:14:21 | After case ...: [match] | Switch.cs:15:17:15:23 | Before return ...; | |
| Switch.cs:14:13:14:21 | After case ...: [no-match] | Switch.cs:16:13:16:19 | case ...: | |
-| Switch.cs:14:13:14:21 | case ...: | Switch.cs:14:13:14:21 | After case ...: [match] | match |
-| Switch.cs:14:13:14:21 | case ...: | Switch.cs:14:13:14:21 | After case ...: [no-match] | no-match |
-| Switch.cs:14:18:14:20 | "a" | Switch.cs:15:17:15:23 | Before return ...; | |
+| Switch.cs:14:13:14:21 | case ...: | Switch.cs:14:18:14:20 | "a" | |
+| Switch.cs:14:18:14:20 | "a" | Switch.cs:14:18:14:20 | After "a" [match] | match |
+| Switch.cs:14:18:14:20 | "a" | Switch.cs:14:18:14:20 | After "a" [no-match] | no-match |
+| Switch.cs:14:18:14:20 | After "a" [match] | Switch.cs:14:13:14:21 | After case ...: [match] | match |
+| Switch.cs:14:18:14:20 | After "a" [no-match] | Switch.cs:14:13:14:21 | After case ...: [no-match] | no-match |
| Switch.cs:15:17:15:23 | Before return ...; | Switch.cs:15:17:15:23 | return ...; | |
| Switch.cs:15:17:15:23 | return ...; | Switch.cs:10:10:10:11 | Normal Exit | return |
-| Switch.cs:16:13:16:19 | After case ...: [match] | Switch.cs:16:18:16:18 | 0 | |
+| Switch.cs:16:13:16:19 | After case ...: [match] | Switch.cs:17:17:17:38 | Before throw ...; | |
| Switch.cs:16:13:16:19 | After case ...: [no-match] | Switch.cs:18:13:18:22 | case ...: | |
-| Switch.cs:16:13:16:19 | case ...: | Switch.cs:16:13:16:19 | After case ...: [match] | match |
-| Switch.cs:16:13:16:19 | case ...: | Switch.cs:16:13:16:19 | After case ...: [no-match] | no-match |
-| Switch.cs:16:18:16:18 | 0 | Switch.cs:17:17:17:38 | Before throw ...; | |
+| Switch.cs:16:13:16:19 | case ...: | Switch.cs:16:18:16:18 | 0 | |
+| Switch.cs:16:18:16:18 | 0 | Switch.cs:16:18:16:18 | After 0 [match] | match |
+| Switch.cs:16:18:16:18 | 0 | Switch.cs:16:18:16:18 | After 0 [no-match] | no-match |
+| Switch.cs:16:18:16:18 | After 0 [match] | Switch.cs:16:13:16:19 | After case ...: [match] | match |
+| Switch.cs:16:18:16:18 | After 0 [no-match] | Switch.cs:16:13:16:19 | After case ...: [no-match] | no-match |
| Switch.cs:17:17:17:38 | Before throw ...; | Switch.cs:17:23:17:37 | Before object creation of type Exception | |
| Switch.cs:17:17:17:38 | throw ...; | Switch.cs:10:10:10:11 | Exceptional Exit | exception |
| Switch.cs:17:23:17:37 | After object creation of type Exception | Switch.cs:17:17:17:38 | throw ...; | |
| Switch.cs:17:23:17:37 | Before object creation of type Exception | Switch.cs:17:23:17:37 | object creation of type Exception | |
| Switch.cs:17:23:17:37 | object creation of type Exception | Switch.cs:17:23:17:37 | After object creation of type Exception | |
-| Switch.cs:18:13:18:22 | After case ...: [match] | Switch.cs:18:18:18:21 | null | |
+| Switch.cs:18:13:18:22 | After case ...: [match] | Switch.cs:19:17:19:29 | Before goto default; | |
| Switch.cs:18:13:18:22 | After case ...: [no-match] | Switch.cs:20:13:20:23 | case ...: | |
-| Switch.cs:18:13:18:22 | case ...: | Switch.cs:18:13:18:22 | After case ...: [match] | match |
-| Switch.cs:18:13:18:22 | case ...: | Switch.cs:18:13:18:22 | After case ...: [no-match] | no-match |
-| Switch.cs:18:18:18:21 | null | Switch.cs:19:17:19:29 | Before goto default; | |
+| Switch.cs:18:13:18:22 | case ...: | Switch.cs:18:18:18:21 | null | |
+| Switch.cs:18:18:18:21 | After null [match] | Switch.cs:18:13:18:22 | After case ...: [match] | match |
+| Switch.cs:18:18:18:21 | After null [no-match] | Switch.cs:18:13:18:22 | After case ...: [no-match] | no-match |
+| Switch.cs:18:18:18:21 | null | Switch.cs:18:18:18:21 | After null [match] | match |
+| Switch.cs:18:18:18:21 | null | Switch.cs:18:18:18:21 | After null [no-match] | no-match |
| Switch.cs:19:17:19:29 | Before goto default; | Switch.cs:19:17:19:29 | goto default; | |
| Switch.cs:19:17:19:29 | goto default; | Switch.cs:30:13:30:20 | After default: [match] | goto |
-| Switch.cs:20:13:20:23 | After case ...: [match] | Switch.cs:20:18:20:22 | Int32 i | |
+| Switch.cs:20:13:20:23 | After case ...: [match] | Switch.cs:21:17:22:27 | if (...) ... | |
| Switch.cs:20:13:20:23 | After case ...: [no-match] | Switch.cs:24:13:24:56 | case ...: | |
-| Switch.cs:20:13:20:23 | case ...: | Switch.cs:20:13:20:23 | After case ...: [match] | match |
-| Switch.cs:20:13:20:23 | case ...: | Switch.cs:20:13:20:23 | After case ...: [no-match] | no-match |
-| Switch.cs:20:18:20:22 | Int32 i | Switch.cs:21:17:22:27 | if (...) ... | |
+| Switch.cs:20:13:20:23 | case ...: | Switch.cs:20:18:20:22 | Int32 i | |
+| Switch.cs:20:18:20:22 | After Int32 i [match] | Switch.cs:20:13:20:23 | After case ...: [match] | match |
+| Switch.cs:20:18:20:22 | After Int32 i [no-match] | Switch.cs:20:13:20:23 | After case ...: [no-match] | no-match |
+| Switch.cs:20:18:20:22 | Int32 i | Switch.cs:20:18:20:22 | After Int32 i [match] | match |
+| Switch.cs:20:18:20:22 | Int32 i | Switch.cs:20:18:20:22 | After Int32 i [no-match] | no-match |
| Switch.cs:21:17:22:27 | After if (...) ... | Switch.cs:23:17:23:28 | Before goto case ...; | |
| Switch.cs:21:17:22:27 | if (...) ... | Switch.cs:21:21:21:29 | Before ... == ... | |
| Switch.cs:21:21:21:21 | access to parameter o | Switch.cs:21:26:21:29 | null | |
@@ -6334,11 +6362,13 @@
| Switch.cs:23:17:23:28 | Before goto case ...; | Switch.cs:23:27:23:27 | 0 | |
| Switch.cs:23:17:23:28 | goto case ...; | Switch.cs:16:13:16:19 | After case ...: [match] | goto |
| Switch.cs:23:27:23:27 | 0 | Switch.cs:23:17:23:28 | goto case ...; | |
-| Switch.cs:24:13:24:56 | After case ...: [match] | Switch.cs:24:18:24:25 | String s | |
+| Switch.cs:24:13:24:56 | After case ...: [match] | Switch.cs:24:32:24:55 | ... && ... | |
| Switch.cs:24:13:24:56 | After case ...: [no-match] | Switch.cs:27:13:27:39 | case ...: | |
-| Switch.cs:24:13:24:56 | case ...: | Switch.cs:24:13:24:56 | After case ...: [match] | match |
-| Switch.cs:24:13:24:56 | case ...: | Switch.cs:24:13:24:56 | After case ...: [no-match] | no-match |
-| Switch.cs:24:18:24:25 | String s | Switch.cs:24:32:24:55 | ... && ... | |
+| Switch.cs:24:13:24:56 | case ...: | Switch.cs:24:18:24:25 | String s | |
+| Switch.cs:24:18:24:25 | After String s [match] | Switch.cs:24:13:24:56 | After case ...: [match] | match |
+| Switch.cs:24:18:24:25 | After String s [no-match] | Switch.cs:24:13:24:56 | After case ...: [no-match] | no-match |
+| Switch.cs:24:18:24:25 | String s | Switch.cs:24:18:24:25 | After String s [match] | match |
+| Switch.cs:24:18:24:25 | String s | Switch.cs:24:18:24:25 | After String s [no-match] | no-match |
| Switch.cs:24:32:24:32 | access to local variable s | Switch.cs:24:32:24:39 | access to property Length | |
| Switch.cs:24:32:24:39 | After access to property Length | Switch.cs:24:43:24:43 | 0 | |
| Switch.cs:24:32:24:39 | Before access to property Length | Switch.cs:24:32:24:32 | access to local variable s | |
@@ -6367,11 +6397,13 @@
| Switch.cs:25:35:25:35 | access to local variable s | Switch.cs:25:17:25:36 | call to method WriteLine | |
| Switch.cs:26:17:26:23 | Before return ...; | Switch.cs:26:17:26:23 | return ...; | |
| Switch.cs:26:17:26:23 | return ...; | Switch.cs:10:10:10:11 | Normal Exit | return |
-| Switch.cs:27:13:27:39 | After case ...: [match] | Switch.cs:27:18:27:25 | Double d | |
+| Switch.cs:27:13:27:39 | After case ...: [match] | Switch.cs:27:32:27:38 | Before call to method Throw | |
| Switch.cs:27:13:27:39 | After case ...: [no-match] | Switch.cs:30:13:30:20 | default: | |
-| Switch.cs:27:13:27:39 | case ...: | Switch.cs:27:13:27:39 | After case ...: [match] | match |
-| Switch.cs:27:13:27:39 | case ...: | Switch.cs:27:13:27:39 | After case ...: [no-match] | no-match |
-| Switch.cs:27:18:27:25 | Double d | Switch.cs:27:32:27:38 | Before call to method Throw | |
+| Switch.cs:27:13:27:39 | case ...: | Switch.cs:27:18:27:25 | Double d | |
+| Switch.cs:27:18:27:25 | After Double d [match] | Switch.cs:27:13:27:39 | After case ...: [match] | match |
+| Switch.cs:27:18:27:25 | After Double d [no-match] | Switch.cs:27:13:27:39 | After case ...: [no-match] | no-match |
+| Switch.cs:27:18:27:25 | Double d | Switch.cs:27:18:27:25 | After Double d [match] | match |
+| Switch.cs:27:18:27:25 | Double d | Switch.cs:27:18:27:25 | After Double d [no-match] | no-match |
| Switch.cs:27:32:27:38 | Before call to method Throw | Switch.cs:27:32:27:38 | call to method Throw | |
| Switch.cs:27:32:27:38 | call to method Throw | Switch.cs:10:10:10:11 | Exceptional Exit | exception |
| Switch.cs:28:13:28:17 | Label: | Switch.cs:29:17:29:23 | Before return ...; | |
@@ -6395,18 +6427,22 @@
| Switch.cs:46:9:52:9 | After switch (...) {...} | Switch.cs:45:5:53:5 | After {...} | |
| Switch.cs:46:9:52:9 | switch (...) {...} | Switch.cs:46:17:46:17 | access to parameter o | |
| Switch.cs:46:17:46:17 | access to parameter o | Switch.cs:48:13:48:23 | case ...: | |
-| Switch.cs:48:13:48:23 | After case ...: [match] | Switch.cs:48:18:48:20 | access to type Int32 | |
+| Switch.cs:48:13:48:23 | After case ...: [match] | Switch.cs:49:17:49:22 | Before break; | |
| Switch.cs:48:13:48:23 | After case ...: [no-match] | Switch.cs:50:13:50:39 | case ...: | |
-| Switch.cs:48:13:48:23 | case ...: | Switch.cs:48:13:48:23 | After case ...: [match] | match |
-| Switch.cs:48:13:48:23 | case ...: | Switch.cs:48:13:48:23 | After case ...: [no-match] | no-match |
-| Switch.cs:48:18:48:20 | access to type Int32 | Switch.cs:49:17:49:22 | Before break; | |
+| Switch.cs:48:13:48:23 | case ...: | Switch.cs:48:18:48:20 | access to type Int32 | |
+| Switch.cs:48:18:48:20 | After access to type Int32 [match] | Switch.cs:48:13:48:23 | After case ...: [match] | match |
+| Switch.cs:48:18:48:20 | After access to type Int32 [no-match] | Switch.cs:48:13:48:23 | After case ...: [no-match] | no-match |
+| Switch.cs:48:18:48:20 | access to type Int32 | Switch.cs:48:18:48:20 | After access to type Int32 [match] | match |
+| Switch.cs:48:18:48:20 | access to type Int32 | Switch.cs:48:18:48:20 | After access to type Int32 [no-match] | no-match |
| Switch.cs:49:17:49:22 | Before break; | Switch.cs:49:17:49:22 | break; | |
| Switch.cs:49:17:49:22 | break; | Switch.cs:46:9:52:9 | After switch (...) {...} | break |
-| Switch.cs:50:13:50:39 | After case ...: [match] | Switch.cs:50:18:50:21 | access to type Boolean | |
+| Switch.cs:50:13:50:39 | After case ...: [match] | Switch.cs:50:30:50:38 | Before ... != ... | |
| Switch.cs:50:13:50:39 | After case ...: [no-match] | Switch.cs:46:9:52:9 | After switch (...) {...} | |
-| Switch.cs:50:13:50:39 | case ...: | Switch.cs:50:13:50:39 | After case ...: [match] | match |
-| Switch.cs:50:13:50:39 | case ...: | Switch.cs:50:13:50:39 | After case ...: [no-match] | no-match |
-| Switch.cs:50:18:50:21 | access to type Boolean | Switch.cs:50:30:50:38 | Before ... != ... | |
+| Switch.cs:50:13:50:39 | case ...: | Switch.cs:50:18:50:21 | access to type Boolean | |
+| Switch.cs:50:18:50:21 | After access to type Boolean [match] | Switch.cs:50:13:50:39 | After case ...: [match] | match |
+| Switch.cs:50:18:50:21 | After access to type Boolean [no-match] | Switch.cs:50:13:50:39 | After case ...: [no-match] | no-match |
+| Switch.cs:50:18:50:21 | access to type Boolean | Switch.cs:50:18:50:21 | After access to type Boolean [match] | match |
+| Switch.cs:50:18:50:21 | access to type Boolean | Switch.cs:50:18:50:21 | After access to type Boolean [no-match] | no-match |
| Switch.cs:50:30:50:30 | access to parameter o | Switch.cs:50:35:50:38 | null | |
| Switch.cs:50:30:50:38 | ... != ... | Switch.cs:50:30:50:38 | After ... != ... [false] | false |
| Switch.cs:50:30:50:38 | ... != ... | Switch.cs:50:30:50:38 | After ... != ... [true] | true |
@@ -6427,18 +6463,22 @@
| Switch.cs:57:17:57:21 | After ... + ... | Switch.cs:59:13:59:19 | case ...: | |
| Switch.cs:57:17:57:21 | Before ... + ... | Switch.cs:57:17:57:17 | 1 | |
| Switch.cs:57:21:57:21 | 2 | Switch.cs:57:17:57:21 | ... + ... | |
-| Switch.cs:59:13:59:19 | After case ...: [match] | Switch.cs:59:18:59:18 | 2 | |
+| Switch.cs:59:13:59:19 | After case ...: [match] | Switch.cs:60:17:60:22 | Before break; | |
| Switch.cs:59:13:59:19 | After case ...: [no-match] | Switch.cs:61:13:61:19 | case ...: | |
-| Switch.cs:59:13:59:19 | case ...: | Switch.cs:59:13:59:19 | After case ...: [match] | match |
-| Switch.cs:59:13:59:19 | case ...: | Switch.cs:59:13:59:19 | After case ...: [no-match] | no-match |
-| Switch.cs:59:18:59:18 | 2 | Switch.cs:60:17:60:22 | Before break; | |
+| Switch.cs:59:13:59:19 | case ...: | Switch.cs:59:18:59:18 | 2 | |
+| Switch.cs:59:18:59:18 | 2 | Switch.cs:59:18:59:18 | After 2 [match] | match |
+| Switch.cs:59:18:59:18 | 2 | Switch.cs:59:18:59:18 | After 2 [no-match] | no-match |
+| Switch.cs:59:18:59:18 | After 2 [match] | Switch.cs:59:13:59:19 | After case ...: [match] | match |
+| Switch.cs:59:18:59:18 | After 2 [no-match] | Switch.cs:59:13:59:19 | After case ...: [no-match] | no-match |
| Switch.cs:60:17:60:22 | Before break; | Switch.cs:60:17:60:22 | break; | |
| Switch.cs:60:17:60:22 | break; | Switch.cs:57:9:63:9 | After switch (...) {...} | break |
-| Switch.cs:61:13:61:19 | After case ...: [match] | Switch.cs:61:18:61:18 | 3 | |
+| Switch.cs:61:13:61:19 | After case ...: [match] | Switch.cs:62:17:62:22 | Before break; | |
| Switch.cs:61:13:61:19 | After case ...: [no-match] | Switch.cs:57:9:63:9 | After switch (...) {...} | |
-| Switch.cs:61:13:61:19 | case ...: | Switch.cs:61:13:61:19 | After case ...: [match] | match |
-| Switch.cs:61:13:61:19 | case ...: | Switch.cs:61:13:61:19 | After case ...: [no-match] | no-match |
-| Switch.cs:61:18:61:18 | 3 | Switch.cs:62:17:62:22 | Before break; | |
+| Switch.cs:61:13:61:19 | case ...: | Switch.cs:61:18:61:18 | 3 | |
+| Switch.cs:61:18:61:18 | 3 | Switch.cs:61:18:61:18 | After 3 [match] | match |
+| Switch.cs:61:18:61:18 | 3 | Switch.cs:61:18:61:18 | After 3 [no-match] | no-match |
+| Switch.cs:61:18:61:18 | After 3 [match] | Switch.cs:61:13:61:19 | After case ...: [match] | match |
+| Switch.cs:61:18:61:18 | After 3 [no-match] | Switch.cs:61:13:61:19 | After case ...: [no-match] | no-match |
| Switch.cs:62:17:62:22 | Before break; | Switch.cs:62:17:62:22 | break; | |
| Switch.cs:62:17:62:22 | break; | Switch.cs:57:9:63:9 | After switch (...) {...} | break |
| Switch.cs:66:10:66:11 | Entry | Switch.cs:66:20:66:20 | s | |
@@ -6452,18 +6492,22 @@
| Switch.cs:68:17:68:25 | After (...) ... | Switch.cs:70:13:70:23 | case ...: | |
| Switch.cs:68:17:68:25 | Before (...) ... | Switch.cs:68:25:68:25 | access to parameter s | |
| Switch.cs:68:25:68:25 | access to parameter s | Switch.cs:68:17:68:25 | (...) ... | |
-| Switch.cs:70:13:70:23 | After case ...: [match] | Switch.cs:70:18:70:20 | access to type Int32 | |
+| Switch.cs:70:13:70:23 | After case ...: [match] | Switch.cs:71:17:71:22 | Before break; | |
| Switch.cs:70:13:70:23 | After case ...: [no-match] | Switch.cs:72:13:72:20 | case ...: | |
-| Switch.cs:70:13:70:23 | case ...: | Switch.cs:70:13:70:23 | After case ...: [match] | match |
-| Switch.cs:70:13:70:23 | case ...: | Switch.cs:70:13:70:23 | After case ...: [no-match] | no-match |
-| Switch.cs:70:18:70:20 | access to type Int32 | Switch.cs:71:17:71:22 | Before break; | |
+| Switch.cs:70:13:70:23 | case ...: | Switch.cs:70:18:70:20 | access to type Int32 | |
+| Switch.cs:70:18:70:20 | After access to type Int32 [match] | Switch.cs:70:13:70:23 | After case ...: [match] | match |
+| Switch.cs:70:18:70:20 | After access to type Int32 [no-match] | Switch.cs:70:13:70:23 | After case ...: [no-match] | no-match |
+| Switch.cs:70:18:70:20 | access to type Int32 | Switch.cs:70:18:70:20 | After access to type Int32 [match] | match |
+| Switch.cs:70:18:70:20 | access to type Int32 | Switch.cs:70:18:70:20 | After access to type Int32 [no-match] | no-match |
| Switch.cs:71:17:71:22 | Before break; | Switch.cs:71:17:71:22 | break; | |
| Switch.cs:71:17:71:22 | break; | Switch.cs:68:9:74:9 | After switch (...) {...} | break |
-| Switch.cs:72:13:72:20 | After case ...: [match] | Switch.cs:72:18:72:19 | "" | |
+| Switch.cs:72:13:72:20 | After case ...: [match] | Switch.cs:73:17:73:22 | Before break; | |
| Switch.cs:72:13:72:20 | After case ...: [no-match] | Switch.cs:68:9:74:9 | After switch (...) {...} | |
-| Switch.cs:72:13:72:20 | case ...: | Switch.cs:72:13:72:20 | After case ...: [match] | match |
-| Switch.cs:72:13:72:20 | case ...: | Switch.cs:72:13:72:20 | After case ...: [no-match] | no-match |
-| Switch.cs:72:18:72:19 | "" | Switch.cs:73:17:73:22 | Before break; | |
+| Switch.cs:72:13:72:20 | case ...: | Switch.cs:72:18:72:19 | "" | |
+| Switch.cs:72:18:72:19 | "" | Switch.cs:72:18:72:19 | After "" [match] | match |
+| Switch.cs:72:18:72:19 | "" | Switch.cs:72:18:72:19 | After "" [no-match] | no-match |
+| Switch.cs:72:18:72:19 | After "" [match] | Switch.cs:72:13:72:20 | After case ...: [match] | match |
+| Switch.cs:72:18:72:19 | After "" [no-match] | Switch.cs:72:13:72:20 | After case ...: [no-match] | no-match |
| Switch.cs:73:17:73:22 | Before break; | Switch.cs:73:17:73:22 | break; | |
| Switch.cs:73:17:73:22 | break; | Switch.cs:68:9:74:9 | After switch (...) {...} | break |
| Switch.cs:77:10:77:11 | Entry | Switch.cs:77:17:77:17 | i | |
@@ -6474,19 +6518,23 @@
| Switch.cs:79:9:87:9 | After switch (...) {...} | Switch.cs:88:9:88:21 | Before return ...; | |
| Switch.cs:79:9:87:9 | switch (...) {...} | Switch.cs:79:17:79:17 | access to parameter i | |
| Switch.cs:79:17:79:17 | access to parameter i | Switch.cs:81:13:81:19 | case ...: | |
-| Switch.cs:81:13:81:19 | After case ...: [match] | Switch.cs:81:18:81:18 | 1 | |
+| Switch.cs:81:13:81:19 | After case ...: [match] | Switch.cs:82:17:82:28 | Before return ...; | |
| Switch.cs:81:13:81:19 | After case ...: [no-match] | Switch.cs:83:13:83:19 | case ...: | |
-| Switch.cs:81:13:81:19 | case ...: | Switch.cs:81:13:81:19 | After case ...: [match] | match |
-| Switch.cs:81:13:81:19 | case ...: | Switch.cs:81:13:81:19 | After case ...: [no-match] | no-match |
-| Switch.cs:81:18:81:18 | 1 | Switch.cs:82:17:82:28 | Before return ...; | |
+| Switch.cs:81:13:81:19 | case ...: | Switch.cs:81:18:81:18 | 1 | |
+| Switch.cs:81:18:81:18 | 1 | Switch.cs:81:18:81:18 | After 1 [match] | match |
+| Switch.cs:81:18:81:18 | 1 | Switch.cs:81:18:81:18 | After 1 [no-match] | no-match |
+| Switch.cs:81:18:81:18 | After 1 [match] | Switch.cs:81:13:81:19 | After case ...: [match] | match |
+| Switch.cs:81:18:81:18 | After 1 [no-match] | Switch.cs:81:13:81:19 | After case ...: [no-match] | no-match |
| Switch.cs:82:17:82:28 | Before return ...; | Switch.cs:82:24:82:27 | true | |
| Switch.cs:82:17:82:28 | return ...; | Switch.cs:77:10:77:11 | Normal Exit | return |
| Switch.cs:82:24:82:27 | true | Switch.cs:82:17:82:28 | return ...; | |
-| Switch.cs:83:13:83:19 | After case ...: [match] | Switch.cs:83:18:83:18 | 2 | |
+| Switch.cs:83:13:83:19 | After case ...: [match] | Switch.cs:84:17:85:26 | if (...) ... | |
| Switch.cs:83:13:83:19 | After case ...: [no-match] | Switch.cs:79:9:87:9 | After switch (...) {...} | |
-| Switch.cs:83:13:83:19 | case ...: | Switch.cs:83:13:83:19 | After case ...: [match] | match |
-| Switch.cs:83:13:83:19 | case ...: | Switch.cs:83:13:83:19 | After case ...: [no-match] | no-match |
-| Switch.cs:83:18:83:18 | 2 | Switch.cs:84:17:85:26 | if (...) ... | |
+| Switch.cs:83:13:83:19 | case ...: | Switch.cs:83:18:83:18 | 2 | |
+| Switch.cs:83:18:83:18 | 2 | Switch.cs:83:18:83:18 | After 2 [match] | match |
+| Switch.cs:83:18:83:18 | 2 | Switch.cs:83:18:83:18 | After 2 [no-match] | no-match |
+| Switch.cs:83:18:83:18 | After 2 [match] | Switch.cs:83:13:83:19 | After case ...: [match] | match |
+| Switch.cs:83:18:83:18 | After 2 [no-match] | Switch.cs:83:13:83:19 | After case ...: [no-match] | no-match |
| Switch.cs:84:17:85:26 | After if (...) ... | Switch.cs:86:17:86:28 | Before return ...; | |
| Switch.cs:84:17:85:26 | if (...) ... | Switch.cs:84:21:84:25 | Before ... > ... | |
| Switch.cs:84:21:84:21 | access to parameter j | Switch.cs:84:25:84:25 | 2 | |
@@ -6511,11 +6559,13 @@
| Switch.cs:93:9:97:9 | After switch (...) {...} | Switch.cs:98:9:98:21 | Before return ...; | |
| Switch.cs:93:9:97:9 | switch (...) {...} | Switch.cs:93:17:93:17 | access to parameter o | |
| Switch.cs:93:17:93:17 | access to parameter o | Switch.cs:95:13:95:23 | case ...: | |
-| Switch.cs:95:13:95:23 | After case ...: [match] | Switch.cs:95:18:95:20 | access to type Int32 | |
+| Switch.cs:95:13:95:23 | After case ...: [match] | Switch.cs:96:17:96:28 | Before return ...; | |
| Switch.cs:95:13:95:23 | After case ...: [no-match] | Switch.cs:93:9:97:9 | After switch (...) {...} | |
-| Switch.cs:95:13:95:23 | case ...: | Switch.cs:95:13:95:23 | After case ...: [match] | match |
-| Switch.cs:95:13:95:23 | case ...: | Switch.cs:95:13:95:23 | After case ...: [no-match] | no-match |
-| Switch.cs:95:18:95:20 | access to type Int32 | Switch.cs:96:17:96:28 | Before return ...; | |
+| Switch.cs:95:13:95:23 | case ...: | Switch.cs:95:18:95:20 | access to type Int32 | |
+| Switch.cs:95:18:95:20 | After access to type Int32 [match] | Switch.cs:95:13:95:23 | After case ...: [match] | match |
+| Switch.cs:95:18:95:20 | After access to type Int32 [no-match] | Switch.cs:95:13:95:23 | After case ...: [no-match] | no-match |
+| Switch.cs:95:18:95:20 | access to type Int32 | Switch.cs:95:18:95:20 | After access to type Int32 [match] | match |
+| Switch.cs:95:18:95:20 | access to type Int32 | Switch.cs:95:18:95:20 | After access to type Int32 [no-match] | no-match |
| Switch.cs:96:17:96:28 | Before return ...; | Switch.cs:96:24:96:27 | true | |
| Switch.cs:96:17:96:28 | return ...; | Switch.cs:91:10:91:11 | Normal Exit | return |
| Switch.cs:96:24:96:27 | true | Switch.cs:96:17:96:28 | return ...; | |
@@ -6535,19 +6585,23 @@
| Switch.cs:103:17:103:25 | After access to property Length | Switch.cs:105:13:105:19 | case ...: | |
| Switch.cs:103:17:103:25 | Before access to property Length | Switch.cs:103:17:103:17 | access to parameter s | |
| Switch.cs:103:17:103:25 | access to property Length | Switch.cs:103:17:103:25 | After access to property Length | |
-| Switch.cs:105:13:105:19 | After case ...: [match] | Switch.cs:105:18:105:18 | 0 | |
+| Switch.cs:105:13:105:19 | After case ...: [match] | Switch.cs:105:21:105:29 | Before return ...; | |
| Switch.cs:105:13:105:19 | After case ...: [no-match] | Switch.cs:106:13:106:19 | case ...: | |
-| Switch.cs:105:13:105:19 | case ...: | Switch.cs:105:13:105:19 | After case ...: [match] | match |
-| Switch.cs:105:13:105:19 | case ...: | Switch.cs:105:13:105:19 | After case ...: [no-match] | no-match |
-| Switch.cs:105:18:105:18 | 0 | Switch.cs:105:21:105:29 | Before return ...; | |
+| Switch.cs:105:13:105:19 | case ...: | Switch.cs:105:18:105:18 | 0 | |
+| Switch.cs:105:18:105:18 | 0 | Switch.cs:105:18:105:18 | After 0 [match] | match |
+| Switch.cs:105:18:105:18 | 0 | Switch.cs:105:18:105:18 | After 0 [no-match] | no-match |
+| Switch.cs:105:18:105:18 | After 0 [match] | Switch.cs:105:13:105:19 | After case ...: [match] | match |
+| Switch.cs:105:18:105:18 | After 0 [no-match] | Switch.cs:105:13:105:19 | After case ...: [no-match] | no-match |
| Switch.cs:105:21:105:29 | Before return ...; | Switch.cs:105:28:105:28 | 0 | |
| Switch.cs:105:21:105:29 | return ...; | Switch.cs:101:9:101:10 | Normal Exit | return |
| Switch.cs:105:28:105:28 | 0 | Switch.cs:105:21:105:29 | return ...; | |
-| Switch.cs:106:13:106:19 | After case ...: [match] | Switch.cs:106:18:106:18 | 1 | |
+| Switch.cs:106:13:106:19 | After case ...: [match] | Switch.cs:106:21:106:29 | Before return ...; | |
| Switch.cs:106:13:106:19 | After case ...: [no-match] | Switch.cs:103:9:107:9 | After switch (...) {...} | |
-| Switch.cs:106:13:106:19 | case ...: | Switch.cs:106:13:106:19 | After case ...: [match] | match |
-| Switch.cs:106:13:106:19 | case ...: | Switch.cs:106:13:106:19 | After case ...: [no-match] | no-match |
-| Switch.cs:106:18:106:18 | 1 | Switch.cs:106:21:106:29 | Before return ...; | |
+| Switch.cs:106:13:106:19 | case ...: | Switch.cs:106:18:106:18 | 1 | |
+| Switch.cs:106:18:106:18 | 1 | Switch.cs:106:18:106:18 | After 1 [match] | match |
+| Switch.cs:106:18:106:18 | 1 | Switch.cs:106:18:106:18 | After 1 [no-match] | no-match |
+| Switch.cs:106:18:106:18 | After 1 [match] | Switch.cs:106:13:106:19 | After case ...: [match] | match |
+| Switch.cs:106:18:106:18 | After 1 [no-match] | Switch.cs:106:13:106:19 | After case ...: [no-match] | no-match |
| Switch.cs:106:21:106:29 | Before return ...; | Switch.cs:106:28:106:28 | 1 | |
| Switch.cs:106:21:106:29 | return ...; | Switch.cs:101:9:101:10 | Normal Exit | return |
| Switch.cs:106:28:106:28 | 1 | Switch.cs:106:21:106:29 | return ...; | |
@@ -6574,11 +6628,13 @@
| Switch.cs:115:17:115:24 | After access to property Length | Switch.cs:117:13:117:35 | case ...: | |
| Switch.cs:115:17:115:24 | Before access to property Length | Switch.cs:115:17:115:17 | access to parameter s | |
| Switch.cs:115:17:115:24 | access to property Length | Switch.cs:115:17:115:24 | After access to property Length | |
-| Switch.cs:117:13:117:35 | After case ...: [match] | Switch.cs:117:18:117:18 | 3 | |
+| Switch.cs:117:13:117:35 | After case ...: [match] | Switch.cs:117:25:117:34 | Before ... == ... | |
| Switch.cs:117:13:117:35 | After case ...: [no-match] | Switch.cs:118:13:118:34 | case ...: | |
-| Switch.cs:117:13:117:35 | case ...: | Switch.cs:117:13:117:35 | After case ...: [match] | match |
-| Switch.cs:117:13:117:35 | case ...: | Switch.cs:117:13:117:35 | After case ...: [no-match] | no-match |
-| Switch.cs:117:18:117:18 | 3 | Switch.cs:117:25:117:34 | Before ... == ... | |
+| Switch.cs:117:13:117:35 | case ...: | Switch.cs:117:18:117:18 | 3 | |
+| Switch.cs:117:18:117:18 | 3 | Switch.cs:117:18:117:18 | After 3 [match] | match |
+| Switch.cs:117:18:117:18 | 3 | Switch.cs:117:18:117:18 | After 3 [no-match] | no-match |
+| Switch.cs:117:18:117:18 | After 3 [match] | Switch.cs:117:13:117:35 | After case ...: [match] | match |
+| Switch.cs:117:18:117:18 | After 3 [no-match] | Switch.cs:117:13:117:35 | After case ...: [no-match] | no-match |
| Switch.cs:117:25:117:25 | access to parameter s | Switch.cs:117:30:117:34 | "foo" | |
| Switch.cs:117:25:117:34 | ... == ... | Switch.cs:117:25:117:34 | After ... == ... [false] | false |
| Switch.cs:117:25:117:34 | ... == ... | Switch.cs:117:25:117:34 | After ... == ... [true] | true |
@@ -6589,11 +6645,13 @@
| Switch.cs:117:37:117:45 | Before return ...; | Switch.cs:117:44:117:44 | 1 | |
| Switch.cs:117:37:117:45 | return ...; | Switch.cs:113:9:113:11 | Normal Exit | return |
| Switch.cs:117:44:117:44 | 1 | Switch.cs:117:37:117:45 | return ...; | |
-| Switch.cs:118:13:118:34 | After case ...: [match] | Switch.cs:118:18:118:18 | 2 | |
+| Switch.cs:118:13:118:34 | After case ...: [match] | Switch.cs:118:25:118:33 | Before ... == ... | |
| Switch.cs:118:13:118:34 | After case ...: [no-match] | Switch.cs:115:9:119:9 | After switch (...) {...} | |
-| Switch.cs:118:13:118:34 | case ...: | Switch.cs:118:13:118:34 | After case ...: [match] | match |
-| Switch.cs:118:13:118:34 | case ...: | Switch.cs:118:13:118:34 | After case ...: [no-match] | no-match |
-| Switch.cs:118:18:118:18 | 2 | Switch.cs:118:25:118:33 | Before ... == ... | |
+| Switch.cs:118:13:118:34 | case ...: | Switch.cs:118:18:118:18 | 2 | |
+| Switch.cs:118:18:118:18 | 2 | Switch.cs:118:18:118:18 | After 2 [match] | match |
+| Switch.cs:118:18:118:18 | 2 | Switch.cs:118:18:118:18 | After 2 [no-match] | no-match |
+| Switch.cs:118:18:118:18 | After 2 [match] | Switch.cs:118:13:118:34 | After case ...: [match] | match |
+| Switch.cs:118:18:118:18 | After 2 [no-match] | Switch.cs:118:13:118:34 | After case ...: [no-match] | no-match |
| Switch.cs:118:25:118:25 | access to parameter s | Switch.cs:118:30:118:33 | "fu" | |
| Switch.cs:118:25:118:33 | ... == ... | Switch.cs:118:25:118:33 | After ... == ... [false] | false |
| Switch.cs:118:25:118:33 | ... == ... | Switch.cs:118:25:118:33 | After ... == ... [true] | true |
@@ -6621,16 +6679,19 @@
| Switch.cs:125:13:125:48 | ... switch { ... } | Switch.cs:125:13:125:13 | access to parameter o | |
| Switch.cs:125:13:125:48 | After ... switch { ... } [false] | Switch.cs:125:9:126:19 | After if (...) ... | |
| Switch.cs:125:13:125:48 | After ... switch { ... } [true] | Switch.cs:126:13:126:19 | Before return ...; | |
-| Switch.cs:125:24:125:29 | Boolean b | Switch.cs:125:34:125:34 | access to local variable b | |
-| Switch.cs:125:24:125:34 | ... => ... | Switch.cs:125:24:125:34 | After ... => ... [match] | match |
-| Switch.cs:125:24:125:34 | ... => ... | Switch.cs:125:24:125:34 | After ... => ... [no-match] | no-match |
-| Switch.cs:125:24:125:34 | After ... => ... [match] | Switch.cs:125:24:125:29 | Boolean b | |
+| Switch.cs:125:24:125:29 | After Boolean b [match] | Switch.cs:125:24:125:34 | After ... => ... [match] | match |
+| Switch.cs:125:24:125:29 | After Boolean b [no-match] | Switch.cs:125:24:125:34 | After ... => ... [no-match] | no-match |
+| Switch.cs:125:24:125:29 | Boolean b | Switch.cs:125:24:125:29 | After Boolean b [match] | match |
+| Switch.cs:125:24:125:29 | Boolean b | Switch.cs:125:24:125:29 | After Boolean b [no-match] | no-match |
+| Switch.cs:125:24:125:34 | ... => ... | Switch.cs:125:24:125:29 | Boolean b | |
+| Switch.cs:125:24:125:34 | After ... => ... [match] | Switch.cs:125:34:125:34 | access to local variable b | |
| Switch.cs:125:24:125:34 | After ... => ... [no-match] | Switch.cs:125:37:125:46 | ... => ... | |
| Switch.cs:125:34:125:34 | access to local variable b | Switch.cs:125:13:125:48 | After ... switch { ... } [false] | false |
| Switch.cs:125:34:125:34 | access to local variable b | Switch.cs:125:13:125:48 | After ... switch { ... } [true] | true |
-| Switch.cs:125:37:125:37 | _ | Switch.cs:125:42:125:46 | false | |
-| Switch.cs:125:37:125:46 | ... => ... | Switch.cs:125:37:125:46 | After ... => ... [match] | match |
-| Switch.cs:125:37:125:46 | After ... => ... [match] | Switch.cs:125:37:125:37 | _ | |
+| Switch.cs:125:37:125:37 | After _ [match] | Switch.cs:125:37:125:46 | After ... => ... [match] | match |
+| Switch.cs:125:37:125:37 | _ | Switch.cs:125:37:125:37 | After _ [match] | match |
+| Switch.cs:125:37:125:46 | ... => ... | Switch.cs:125:37:125:37 | _ | |
+| Switch.cs:125:37:125:46 | After ... => ... [match] | Switch.cs:125:42:125:46 | false | |
| Switch.cs:125:42:125:46 | false | Switch.cs:125:13:125:48 | After ... switch { ... } [false] | false |
| Switch.cs:125:42:125:46 | false | Switch.cs:125:13:125:48 | After ... switch { ... } [true] | true |
| Switch.cs:126:13:126:19 | Before return ...; | Switch.cs:126:13:126:19 | return ...; | |
@@ -6648,16 +6709,19 @@
| Switch.cs:131:17:131:53 | ... switch { ... } | Switch.cs:131:17:131:17 | access to parameter o | |
| Switch.cs:131:17:131:53 | After ... switch { ... } [non-null] | Switch.cs:131:16:131:66 | call to method ToString | |
| Switch.cs:131:17:131:53 | After ... switch { ... } [null] | Switch.cs:131:16:131:66 | After call to method ToString | |
-| Switch.cs:131:28:131:35 | String s | Switch.cs:131:40:131:40 | access to local variable s | |
-| Switch.cs:131:28:131:40 | ... => ... | Switch.cs:131:28:131:40 | After ... => ... [match] | match |
-| Switch.cs:131:28:131:40 | ... => ... | Switch.cs:131:28:131:40 | After ... => ... [no-match] | no-match |
-| Switch.cs:131:28:131:40 | After ... => ... [match] | Switch.cs:131:28:131:35 | String s | |
+| Switch.cs:131:28:131:35 | After String s [match] | Switch.cs:131:28:131:40 | After ... => ... [match] | match |
+| Switch.cs:131:28:131:35 | After String s [no-match] | Switch.cs:131:28:131:40 | After ... => ... [no-match] | no-match |
+| Switch.cs:131:28:131:35 | String s | Switch.cs:131:28:131:35 | After String s [match] | match |
+| Switch.cs:131:28:131:35 | String s | Switch.cs:131:28:131:35 | After String s [no-match] | no-match |
+| Switch.cs:131:28:131:40 | ... => ... | Switch.cs:131:28:131:35 | String s | |
+| Switch.cs:131:28:131:40 | After ... => ... [match] | Switch.cs:131:40:131:40 | access to local variable s | |
| Switch.cs:131:28:131:40 | After ... => ... [no-match] | Switch.cs:131:43:131:51 | ... => ... | |
| Switch.cs:131:40:131:40 | access to local variable s | Switch.cs:131:17:131:53 | After ... switch { ... } [non-null] | non-null |
| Switch.cs:131:40:131:40 | access to local variable s | Switch.cs:131:17:131:53 | After ... switch { ... } [null] | null |
-| Switch.cs:131:43:131:43 | _ | Switch.cs:131:48:131:51 | null | |
-| Switch.cs:131:43:131:51 | ... => ... | Switch.cs:131:43:131:51 | After ... => ... [match] | match |
-| Switch.cs:131:43:131:51 | After ... => ... [match] | Switch.cs:131:43:131:43 | _ | |
+| Switch.cs:131:43:131:43 | After _ [match] | Switch.cs:131:43:131:51 | After ... => ... [match] | match |
+| Switch.cs:131:43:131:43 | _ | Switch.cs:131:43:131:43 | After _ [match] | match |
+| Switch.cs:131:43:131:51 | ... => ... | Switch.cs:131:43:131:43 | _ | |
+| Switch.cs:131:43:131:51 | After ... => ... [match] | Switch.cs:131:48:131:51 | null | |
| Switch.cs:131:48:131:51 | null | Switch.cs:131:17:131:53 | After ... switch { ... } [non-null] | non-null |
| Switch.cs:131:48:131:51 | null | Switch.cs:131:17:131:53 | After ... switch { ... } [null] | null |
| Switch.cs:134:9:134:11 | Entry | Switch.cs:134:17:134:17 | i | |
@@ -6674,19 +6738,23 @@
| Switch.cs:138:29:138:30 | After -... | Switch.cs:138:22:138:31 | return ...; | |
| Switch.cs:138:29:138:30 | Before -... | Switch.cs:138:30:138:30 | 1 | |
| Switch.cs:138:30:138:30 | 1 | Switch.cs:138:29:138:30 | -... | |
-| Switch.cs:139:13:139:19 | After case ...: [match] | Switch.cs:139:18:139:18 | 1 | |
+| Switch.cs:139:13:139:19 | After case ...: [match] | Switch.cs:139:21:139:29 | Before return ...; | |
| Switch.cs:139:13:139:19 | After case ...: [no-match] | Switch.cs:140:13:140:19 | case ...: | |
-| Switch.cs:139:13:139:19 | case ...: | Switch.cs:139:13:139:19 | After case ...: [match] | match |
-| Switch.cs:139:13:139:19 | case ...: | Switch.cs:139:13:139:19 | After case ...: [no-match] | no-match |
-| Switch.cs:139:18:139:18 | 1 | Switch.cs:139:21:139:29 | Before return ...; | |
+| Switch.cs:139:13:139:19 | case ...: | Switch.cs:139:18:139:18 | 1 | |
+| Switch.cs:139:18:139:18 | 1 | Switch.cs:139:18:139:18 | After 1 [match] | match |
+| Switch.cs:139:18:139:18 | 1 | Switch.cs:139:18:139:18 | After 1 [no-match] | no-match |
+| Switch.cs:139:18:139:18 | After 1 [match] | Switch.cs:139:13:139:19 | After case ...: [match] | match |
+| Switch.cs:139:18:139:18 | After 1 [no-match] | Switch.cs:139:13:139:19 | After case ...: [no-match] | no-match |
| Switch.cs:139:21:139:29 | Before return ...; | Switch.cs:139:28:139:28 | 1 | |
| Switch.cs:139:21:139:29 | return ...; | Switch.cs:134:9:134:11 | Normal Exit | return |
| Switch.cs:139:28:139:28 | 1 | Switch.cs:139:21:139:29 | return ...; | |
-| Switch.cs:140:13:140:19 | After case ...: [match] | Switch.cs:140:18:140:18 | 2 | |
+| Switch.cs:140:13:140:19 | After case ...: [match] | Switch.cs:140:21:140:29 | Before return ...; | |
| Switch.cs:140:13:140:19 | After case ...: [no-match] | Switch.cs:138:13:138:20 | default: | |
-| Switch.cs:140:13:140:19 | case ...: | Switch.cs:140:13:140:19 | After case ...: [match] | match |
-| Switch.cs:140:13:140:19 | case ...: | Switch.cs:140:13:140:19 | After case ...: [no-match] | no-match |
-| Switch.cs:140:18:140:18 | 2 | Switch.cs:140:21:140:29 | Before return ...; | |
+| Switch.cs:140:13:140:19 | case ...: | Switch.cs:140:18:140:18 | 2 | |
+| Switch.cs:140:18:140:18 | 2 | Switch.cs:140:18:140:18 | After 2 [match] | match |
+| Switch.cs:140:18:140:18 | 2 | Switch.cs:140:18:140:18 | After 2 [no-match] | no-match |
+| Switch.cs:140:18:140:18 | After 2 [match] | Switch.cs:140:13:140:19 | After case ...: [match] | match |
+| Switch.cs:140:18:140:18 | After 2 [no-match] | Switch.cs:140:13:140:19 | After case ...: [no-match] | no-match |
| Switch.cs:140:21:140:29 | Before return ...; | Switch.cs:140:28:140:28 | 2 | |
| Switch.cs:140:21:140:29 | return ...; | Switch.cs:134:9:134:11 | Normal Exit | return |
| Switch.cs:140:28:140:28 | 2 | Switch.cs:140:21:140:29 | return ...; | |
@@ -6696,11 +6764,13 @@
| Switch.cs:145:5:152:5 | {...} | Switch.cs:146:9:151:9 | switch (...) {...} | |
| Switch.cs:146:9:151:9 | switch (...) {...} | Switch.cs:146:17:146:17 | access to parameter i | |
| Switch.cs:146:17:146:17 | access to parameter i | Switch.cs:148:13:148:19 | case ...: | |
-| Switch.cs:148:13:148:19 | After case ...: [match] | Switch.cs:148:18:148:18 | 1 | |
+| Switch.cs:148:13:148:19 | After case ...: [match] | Switch.cs:148:21:148:29 | Before return ...; | |
| Switch.cs:148:13:148:19 | After case ...: [no-match] | Switch.cs:150:13:150:19 | case ...: | |
-| Switch.cs:148:13:148:19 | case ...: | Switch.cs:148:13:148:19 | After case ...: [match] | match |
-| Switch.cs:148:13:148:19 | case ...: | Switch.cs:148:13:148:19 | After case ...: [no-match] | no-match |
-| Switch.cs:148:18:148:18 | 1 | Switch.cs:148:21:148:29 | Before return ...; | |
+| Switch.cs:148:13:148:19 | case ...: | Switch.cs:148:18:148:18 | 1 | |
+| Switch.cs:148:18:148:18 | 1 | Switch.cs:148:18:148:18 | After 1 [match] | match |
+| Switch.cs:148:18:148:18 | 1 | Switch.cs:148:18:148:18 | After 1 [no-match] | no-match |
+| Switch.cs:148:18:148:18 | After 1 [match] | Switch.cs:148:13:148:19 | After case ...: [match] | match |
+| Switch.cs:148:18:148:18 | After 1 [no-match] | Switch.cs:148:13:148:19 | After case ...: [no-match] | no-match |
| Switch.cs:148:21:148:29 | Before return ...; | Switch.cs:148:28:148:28 | 1 | |
| Switch.cs:148:21:148:29 | return ...; | Switch.cs:144:9:144:11 | Normal Exit | return |
| Switch.cs:148:28:148:28 | 1 | Switch.cs:148:21:148:29 | return ...; | |
@@ -6712,11 +6782,13 @@
| Switch.cs:149:29:149:30 | After -... | Switch.cs:149:22:149:31 | return ...; | |
| Switch.cs:149:29:149:30 | Before -... | Switch.cs:149:30:149:30 | 1 | |
| Switch.cs:149:30:149:30 | 1 | Switch.cs:149:29:149:30 | -... | |
-| Switch.cs:150:13:150:19 | After case ...: [match] | Switch.cs:150:18:150:18 | 2 | |
+| Switch.cs:150:13:150:19 | After case ...: [match] | Switch.cs:150:21:150:29 | Before return ...; | |
| Switch.cs:150:13:150:19 | After case ...: [no-match] | Switch.cs:149:13:149:20 | default: | |
-| Switch.cs:150:13:150:19 | case ...: | Switch.cs:150:13:150:19 | After case ...: [match] | match |
-| Switch.cs:150:13:150:19 | case ...: | Switch.cs:150:13:150:19 | After case ...: [no-match] | no-match |
-| Switch.cs:150:18:150:18 | 2 | Switch.cs:150:21:150:29 | Before return ...; | |
+| Switch.cs:150:13:150:19 | case ...: | Switch.cs:150:18:150:18 | 2 | |
+| Switch.cs:150:18:150:18 | 2 | Switch.cs:150:18:150:18 | After 2 [match] | match |
+| Switch.cs:150:18:150:18 | 2 | Switch.cs:150:18:150:18 | After 2 [no-match] | no-match |
+| Switch.cs:150:18:150:18 | After 2 [match] | Switch.cs:150:13:150:19 | After case ...: [match] | match |
+| Switch.cs:150:18:150:18 | After 2 [no-match] | Switch.cs:150:13:150:19 | After case ...: [no-match] | no-match |
| Switch.cs:150:21:150:29 | Before return ...; | Switch.cs:150:28:150:28 | 2 | |
| Switch.cs:150:21:150:29 | return ...; | Switch.cs:144:9:144:11 | Normal Exit | return |
| Switch.cs:150:28:150:28 | 2 | Switch.cs:150:21:150:29 | return ...; | |
@@ -6734,16 +6806,20 @@
| Switch.cs:156:17:156:17 | access to parameter b | Switch.cs:156:28:156:38 | ... => ... | |
| Switch.cs:156:17:156:54 | ... switch { ... } | Switch.cs:156:17:156:17 | access to parameter b | |
| Switch.cs:156:17:156:54 | After ... switch { ... } | Switch.cs:156:13:156:54 | String s = ... | |
-| Switch.cs:156:28:156:31 | true | Switch.cs:156:36:156:38 | "a" | |
-| Switch.cs:156:28:156:38 | ... => ... | Switch.cs:156:28:156:38 | After ... => ... [match] | match |
-| Switch.cs:156:28:156:38 | ... => ... | Switch.cs:156:28:156:38 | After ... => ... [no-match] | no-match |
-| Switch.cs:156:28:156:38 | After ... => ... [match] | Switch.cs:156:28:156:31 | true | |
+| Switch.cs:156:28:156:31 | After true [match] | Switch.cs:156:28:156:38 | After ... => ... [match] | match |
+| Switch.cs:156:28:156:31 | After true [no-match] | Switch.cs:156:28:156:38 | After ... => ... [no-match] | no-match |
+| Switch.cs:156:28:156:31 | true | Switch.cs:156:28:156:31 | After true [match] | match |
+| Switch.cs:156:28:156:31 | true | Switch.cs:156:28:156:31 | After true [no-match] | no-match |
+| Switch.cs:156:28:156:38 | ... => ... | Switch.cs:156:28:156:31 | true | |
+| Switch.cs:156:28:156:38 | After ... => ... [match] | Switch.cs:156:36:156:38 | "a" | |
| Switch.cs:156:28:156:38 | After ... => ... [no-match] | Switch.cs:156:41:156:52 | ... => ... | |
| Switch.cs:156:36:156:38 | "a" | Switch.cs:156:17:156:54 | After ... switch { ... } | |
-| Switch.cs:156:41:156:45 | false | Switch.cs:156:50:156:52 | "b" | |
-| Switch.cs:156:41:156:52 | ... => ... | Switch.cs:156:41:156:52 | After ... => ... [match] | match |
-| Switch.cs:156:41:156:52 | ... => ... | Switch.cs:156:41:156:52 | After ... => ... [no-match] | no-match |
-| Switch.cs:156:41:156:52 | After ... => ... [match] | Switch.cs:156:41:156:45 | false | |
+| Switch.cs:156:41:156:45 | After false [match] | Switch.cs:156:41:156:52 | After ... => ... [match] | match |
+| Switch.cs:156:41:156:45 | After false [no-match] | Switch.cs:156:41:156:52 | After ... => ... [no-match] | no-match |
+| Switch.cs:156:41:156:45 | false | Switch.cs:156:41:156:45 | After false [match] | match |
+| Switch.cs:156:41:156:45 | false | Switch.cs:156:41:156:45 | After false [no-match] | no-match |
+| Switch.cs:156:41:156:52 | ... => ... | Switch.cs:156:41:156:45 | false | |
+| Switch.cs:156:41:156:52 | After ... => ... [match] | Switch.cs:156:50:156:52 | "b" | |
| Switch.cs:156:41:156:52 | After ... => ... [no-match] | Switch.cs:156:17:156:54 | After ... switch { ... } | |
| Switch.cs:156:50:156:52 | "b" | Switch.cs:156:17:156:54 | After ... switch { ... } | |
| Switch.cs:157:9:160:49 | After if (...) ... | Switch.cs:155:5:161:5 | After {...} | |
@@ -6786,16 +6862,20 @@
| Switch.cs:165:9:177:9 | After switch (...) {...} | Switch.cs:164:5:178:5 | After {...} | |
| Switch.cs:165:9:177:9 | switch (...) {...} | Switch.cs:165:17:165:17 | access to parameter i | |
| Switch.cs:165:17:165:17 | access to parameter i | Switch.cs:167:13:167:19 | case ...: | |
-| Switch.cs:167:13:167:19 | After case ...: [match] | Switch.cs:167:18:167:18 | 1 | |
+| Switch.cs:167:13:167:19 | After case ...: [match] | Switch.cs:169:17:169:51 | ...; | |
| Switch.cs:167:13:167:19 | After case ...: [no-match] | Switch.cs:168:13:168:19 | case ...: | |
-| Switch.cs:167:13:167:19 | case ...: | Switch.cs:167:13:167:19 | After case ...: [match] | match |
-| Switch.cs:167:13:167:19 | case ...: | Switch.cs:167:13:167:19 | After case ...: [no-match] | no-match |
-| Switch.cs:167:18:167:18 | 1 | Switch.cs:169:17:169:51 | ...; | |
-| Switch.cs:168:13:168:19 | After case ...: [match] | Switch.cs:168:18:168:18 | 2 | |
+| Switch.cs:167:13:167:19 | case ...: | Switch.cs:167:18:167:18 | 1 | |
+| Switch.cs:167:18:167:18 | 1 | Switch.cs:167:18:167:18 | After 1 [match] | match |
+| Switch.cs:167:18:167:18 | 1 | Switch.cs:167:18:167:18 | After 1 [no-match] | no-match |
+| Switch.cs:167:18:167:18 | After 1 [match] | Switch.cs:167:13:167:19 | After case ...: [match] | match |
+| Switch.cs:167:18:167:18 | After 1 [no-match] | Switch.cs:167:13:167:19 | After case ...: [no-match] | no-match |
+| Switch.cs:168:13:168:19 | After case ...: [match] | Switch.cs:169:17:169:51 | ...; | |
| Switch.cs:168:13:168:19 | After case ...: [no-match] | Switch.cs:171:13:171:19 | case ...: | |
-| Switch.cs:168:13:168:19 | case ...: | Switch.cs:168:13:168:19 | After case ...: [match] | match |
-| Switch.cs:168:13:168:19 | case ...: | Switch.cs:168:13:168:19 | After case ...: [no-match] | no-match |
-| Switch.cs:168:18:168:18 | 2 | Switch.cs:169:17:169:51 | ...; | |
+| Switch.cs:168:13:168:19 | case ...: | Switch.cs:168:18:168:18 | 2 | |
+| Switch.cs:168:18:168:18 | 2 | Switch.cs:168:18:168:18 | After 2 [match] | match |
+| Switch.cs:168:18:168:18 | 2 | Switch.cs:168:18:168:18 | After 2 [no-match] | no-match |
+| Switch.cs:168:18:168:18 | After 2 [match] | Switch.cs:168:13:168:19 | After case ...: [match] | match |
+| Switch.cs:168:18:168:18 | After 2 [no-match] | Switch.cs:168:13:168:19 | After case ...: [no-match] | no-match |
| Switch.cs:169:17:169:50 | After call to method WriteLine | Switch.cs:169:17:169:51 | After ...; | |
| Switch.cs:169:17:169:50 | Before call to method WriteLine | Switch.cs:169:42:169:49 | "1 or 2" | |
| Switch.cs:169:17:169:50 | call to method WriteLine | Switch.cs:169:17:169:50 | After call to method WriteLine | |
@@ -6804,11 +6884,13 @@
| Switch.cs:169:42:169:49 | "1 or 2" | Switch.cs:169:17:169:50 | call to method WriteLine | |
| Switch.cs:170:17:170:22 | Before break; | Switch.cs:170:17:170:22 | break; | |
| Switch.cs:170:17:170:22 | break; | Switch.cs:165:9:177:9 | After switch (...) {...} | break |
-| Switch.cs:171:13:171:19 | After case ...: [match] | Switch.cs:171:18:171:18 | 3 | |
+| Switch.cs:171:13:171:19 | After case ...: [match] | Switch.cs:172:17:172:46 | ...; | |
| Switch.cs:171:13:171:19 | After case ...: [no-match] | Switch.cs:174:13:174:20 | default: | |
-| Switch.cs:171:13:171:19 | case ...: | Switch.cs:171:13:171:19 | After case ...: [match] | match |
-| Switch.cs:171:13:171:19 | case ...: | Switch.cs:171:13:171:19 | After case ...: [no-match] | no-match |
-| Switch.cs:171:18:171:18 | 3 | Switch.cs:172:17:172:46 | ...; | |
+| Switch.cs:171:13:171:19 | case ...: | Switch.cs:171:18:171:18 | 3 | |
+| Switch.cs:171:18:171:18 | 3 | Switch.cs:171:18:171:18 | After 3 [match] | match |
+| Switch.cs:171:18:171:18 | 3 | Switch.cs:171:18:171:18 | After 3 [no-match] | no-match |
+| Switch.cs:171:18:171:18 | After 3 [match] | Switch.cs:171:13:171:19 | After case ...: [match] | match |
+| Switch.cs:171:18:171:18 | After 3 [no-match] | Switch.cs:171:13:171:19 | After case ...: [no-match] | no-match |
| Switch.cs:172:17:172:45 | After call to method WriteLine | Switch.cs:172:17:172:46 | After ...; | |
| Switch.cs:172:17:172:45 | Before call to method WriteLine | Switch.cs:172:42:172:44 | "3" | |
| Switch.cs:172:17:172:45 | call to method WriteLine | Switch.cs:172:17:172:45 | After call to method WriteLine | |
@@ -7195,11 +7277,13 @@
| cflow.cs:39:9:50:9 | After switch (...) {...} | cflow.cs:51:9:59:9 | switch (...) {...} | |
| cflow.cs:39:9:50:9 | switch (...) {...} | cflow.cs:39:17:39:17 | access to parameter a | |
| cflow.cs:39:17:39:17 | access to parameter a | cflow.cs:41:13:41:19 | case ...: | |
-| cflow.cs:41:13:41:19 | After case ...: [match] | cflow.cs:41:18:41:18 | 1 | |
+| cflow.cs:41:13:41:19 | After case ...: [match] | cflow.cs:42:17:42:39 | ...; | |
| cflow.cs:41:13:41:19 | After case ...: [no-match] | cflow.cs:44:13:44:19 | case ...: | |
-| cflow.cs:41:13:41:19 | case ...: | cflow.cs:41:13:41:19 | After case ...: [match] | match |
-| cflow.cs:41:13:41:19 | case ...: | cflow.cs:41:13:41:19 | After case ...: [no-match] | no-match |
-| cflow.cs:41:18:41:18 | 1 | cflow.cs:42:17:42:39 | ...; | |
+| cflow.cs:41:13:41:19 | case ...: | cflow.cs:41:18:41:18 | 1 | |
+| cflow.cs:41:18:41:18 | 1 | cflow.cs:41:18:41:18 | After 1 [match] | match |
+| cflow.cs:41:18:41:18 | 1 | cflow.cs:41:18:41:18 | After 1 [no-match] | no-match |
+| cflow.cs:41:18:41:18 | After 1 [match] | cflow.cs:41:13:41:19 | After case ...: [match] | match |
+| cflow.cs:41:18:41:18 | After 1 [no-match] | cflow.cs:41:13:41:19 | After case ...: [no-match] | no-match |
| cflow.cs:42:17:42:38 | After call to method WriteLine | cflow.cs:42:17:42:39 | After ...; | |
| cflow.cs:42:17:42:38 | Before call to method WriteLine | cflow.cs:42:35:42:37 | "1" | |
| cflow.cs:42:17:42:38 | call to method WriteLine | cflow.cs:42:17:42:38 | After call to method WriteLine | |
@@ -7209,11 +7293,13 @@
| cflow.cs:43:17:43:28 | Before goto case ...; | cflow.cs:43:27:43:27 | 2 | |
| cflow.cs:43:17:43:28 | goto case ...; | cflow.cs:44:13:44:19 | After case ...: [match] | goto |
| cflow.cs:43:27:43:27 | 2 | cflow.cs:43:17:43:28 | goto case ...; | |
-| cflow.cs:44:13:44:19 | After case ...: [match] | cflow.cs:44:18:44:18 | 2 | |
+| cflow.cs:44:13:44:19 | After case ...: [match] | cflow.cs:45:17:45:39 | ...; | |
| cflow.cs:44:13:44:19 | After case ...: [no-match] | cflow.cs:47:13:47:19 | case ...: | |
-| cflow.cs:44:13:44:19 | case ...: | cflow.cs:44:13:44:19 | After case ...: [match] | match |
-| cflow.cs:44:13:44:19 | case ...: | cflow.cs:44:13:44:19 | After case ...: [no-match] | no-match |
-| cflow.cs:44:18:44:18 | 2 | cflow.cs:45:17:45:39 | ...; | |
+| cflow.cs:44:13:44:19 | case ...: | cflow.cs:44:18:44:18 | 2 | |
+| cflow.cs:44:18:44:18 | 2 | cflow.cs:44:18:44:18 | After 2 [match] | match |
+| cflow.cs:44:18:44:18 | 2 | cflow.cs:44:18:44:18 | After 2 [no-match] | no-match |
+| cflow.cs:44:18:44:18 | After 2 [match] | cflow.cs:44:13:44:19 | After case ...: [match] | match |
+| cflow.cs:44:18:44:18 | After 2 [no-match] | cflow.cs:44:13:44:19 | After case ...: [no-match] | no-match |
| cflow.cs:45:17:45:38 | After call to method WriteLine | cflow.cs:45:17:45:39 | After ...; | |
| cflow.cs:45:17:45:38 | Before call to method WriteLine | cflow.cs:45:35:45:37 | "2" | |
| cflow.cs:45:17:45:38 | call to method WriteLine | cflow.cs:45:17:45:38 | After call to method WriteLine | |
@@ -7223,11 +7309,13 @@
| cflow.cs:46:17:46:28 | Before goto case ...; | cflow.cs:46:27:46:27 | 1 | |
| cflow.cs:46:17:46:28 | goto case ...; | cflow.cs:41:13:41:19 | After case ...: [match] | goto |
| cflow.cs:46:27:46:27 | 1 | cflow.cs:46:17:46:28 | goto case ...; | |
-| cflow.cs:47:13:47:19 | After case ...: [match] | cflow.cs:47:18:47:18 | 3 | |
+| cflow.cs:47:13:47:19 | After case ...: [match] | cflow.cs:48:17:48:39 | ...; | |
| cflow.cs:47:13:47:19 | After case ...: [no-match] | cflow.cs:39:9:50:9 | After switch (...) {...} | |
-| cflow.cs:47:13:47:19 | case ...: | cflow.cs:47:13:47:19 | After case ...: [match] | match |
-| cflow.cs:47:13:47:19 | case ...: | cflow.cs:47:13:47:19 | After case ...: [no-match] | no-match |
-| cflow.cs:47:18:47:18 | 3 | cflow.cs:48:17:48:39 | ...; | |
+| cflow.cs:47:13:47:19 | case ...: | cflow.cs:47:18:47:18 | 3 | |
+| cflow.cs:47:18:47:18 | 3 | cflow.cs:47:18:47:18 | After 3 [match] | match |
+| cflow.cs:47:18:47:18 | 3 | cflow.cs:47:18:47:18 | After 3 [no-match] | no-match |
+| cflow.cs:47:18:47:18 | After 3 [match] | cflow.cs:47:13:47:19 | After case ...: [match] | match |
+| cflow.cs:47:18:47:18 | After 3 [no-match] | cflow.cs:47:13:47:19 | After case ...: [no-match] | no-match |
| cflow.cs:48:17:48:38 | After call to method WriteLine | cflow.cs:48:17:48:39 | After ...; | |
| cflow.cs:48:17:48:38 | Before call to method WriteLine | cflow.cs:48:35:48:37 | "3" | |
| cflow.cs:48:17:48:38 | call to method WriteLine | cflow.cs:48:17:48:38 | After call to method WriteLine | |
@@ -7239,11 +7327,13 @@
| cflow.cs:51:9:59:9 | After switch (...) {...} | cflow.cs:60:9:66:9 | switch (...) {...} | |
| cflow.cs:51:9:59:9 | switch (...) {...} | cflow.cs:51:17:51:17 | access to parameter a | |
| cflow.cs:51:17:51:17 | access to parameter a | cflow.cs:53:13:53:20 | case ...: | |
-| cflow.cs:53:13:53:20 | After case ...: [match] | cflow.cs:53:18:53:19 | 42 | |
+| cflow.cs:53:13:53:20 | After case ...: [match] | cflow.cs:54:17:54:48 | ...; | |
| cflow.cs:53:13:53:20 | After case ...: [no-match] | cflow.cs:56:13:56:20 | default: | |
-| cflow.cs:53:13:53:20 | case ...: | cflow.cs:53:13:53:20 | After case ...: [match] | match |
-| cflow.cs:53:13:53:20 | case ...: | cflow.cs:53:13:53:20 | After case ...: [no-match] | no-match |
-| cflow.cs:53:18:53:19 | 42 | cflow.cs:54:17:54:48 | ...; | |
+| cflow.cs:53:13:53:20 | case ...: | cflow.cs:53:18:53:19 | 42 | |
+| cflow.cs:53:18:53:19 | 42 | cflow.cs:53:18:53:19 | After 42 [match] | match |
+| cflow.cs:53:18:53:19 | 42 | cflow.cs:53:18:53:19 | After 42 [no-match] | no-match |
+| cflow.cs:53:18:53:19 | After 42 [match] | cflow.cs:53:13:53:20 | After case ...: [match] | match |
+| cflow.cs:53:18:53:19 | After 42 [no-match] | cflow.cs:53:13:53:20 | After case ...: [no-match] | no-match |
| cflow.cs:54:17:54:47 | After call to method WriteLine | cflow.cs:54:17:54:48 | After ...; | |
| cflow.cs:54:17:54:47 | Before call to method WriteLine | cflow.cs:54:35:54:46 | "The answer" | |
| cflow.cs:54:17:54:47 | call to method WriteLine | cflow.cs:54:17:54:47 | After call to method WriteLine | |
@@ -7271,11 +7361,13 @@
| cflow.cs:60:27:60:31 | Before access to field Field | cflow.cs:60:27:60:31 | this access | |
| cflow.cs:60:27:60:31 | access to field Field | cflow.cs:60:27:60:31 | After access to field Field | |
| cflow.cs:60:27:60:31 | this access | cflow.cs:60:27:60:31 | access to field Field | |
-| cflow.cs:62:13:62:19 | After case ...: [match] | cflow.cs:62:18:62:18 | 0 | |
+| cflow.cs:62:13:62:19 | After case ...: [match] | cflow.cs:63:17:64:55 | if (...) ... | |
| cflow.cs:62:13:62:19 | After case ...: [no-match] | cflow.cs:60:9:66:9 | After switch (...) {...} | |
-| cflow.cs:62:13:62:19 | case ...: | cflow.cs:62:13:62:19 | After case ...: [match] | match |
-| cflow.cs:62:13:62:19 | case ...: | cflow.cs:62:13:62:19 | After case ...: [no-match] | no-match |
-| cflow.cs:62:18:62:18 | 0 | cflow.cs:63:17:64:55 | if (...) ... | |
+| cflow.cs:62:13:62:19 | case ...: | cflow.cs:62:18:62:18 | 0 | |
+| cflow.cs:62:18:62:18 | 0 | cflow.cs:62:18:62:18 | After 0 [match] | match |
+| cflow.cs:62:18:62:18 | 0 | cflow.cs:62:18:62:18 | After 0 [no-match] | no-match |
+| cflow.cs:62:18:62:18 | After 0 [match] | cflow.cs:62:13:62:19 | After case ...: [match] | match |
+| cflow.cs:62:18:62:18 | After 0 [no-match] | cflow.cs:62:13:62:19 | After case ...: [no-match] | no-match |
| cflow.cs:63:17:64:55 | After if (...) ... | cflow.cs:65:17:65:22 | Before break; | |
| cflow.cs:63:17:64:55 | if (...) ... | cflow.cs:63:21:63:34 | !... | |
| cflow.cs:63:21:63:34 | !... | cflow.cs:63:23:63:33 | Before ... == ... | |
@@ -8221,18 +8313,22 @@
| cflow.cs:246:17:246:32 | After ... + ... | cflow.cs:248:13:248:19 | case ...: | |
| cflow.cs:246:17:246:32 | Before ... + ... | cflow.cs:246:17:246:28 | Before access to property Length | |
| cflow.cs:246:32:246:32 | 3 | cflow.cs:246:17:246:32 | ... + ... | |
-| cflow.cs:248:13:248:19 | After case ...: [match] | cflow.cs:248:18:248:18 | 0 | |
+| cflow.cs:248:13:248:19 | After case ...: [match] | cflow.cs:249:17:249:29 | Before goto default; | |
| cflow.cs:248:13:248:19 | After case ...: [no-match] | cflow.cs:250:13:250:19 | case ...: | |
-| cflow.cs:248:13:248:19 | case ...: | cflow.cs:248:13:248:19 | After case ...: [match] | match |
-| cflow.cs:248:13:248:19 | case ...: | cflow.cs:248:13:248:19 | After case ...: [no-match] | no-match |
-| cflow.cs:248:18:248:18 | 0 | cflow.cs:249:17:249:29 | Before goto default; | |
+| cflow.cs:248:13:248:19 | case ...: | cflow.cs:248:18:248:18 | 0 | |
+| cflow.cs:248:18:248:18 | 0 | cflow.cs:248:18:248:18 | After 0 [match] | match |
+| cflow.cs:248:18:248:18 | 0 | cflow.cs:248:18:248:18 | After 0 [no-match] | no-match |
+| cflow.cs:248:18:248:18 | After 0 [match] | cflow.cs:248:13:248:19 | After case ...: [match] | match |
+| cflow.cs:248:18:248:18 | After 0 [no-match] | cflow.cs:248:13:248:19 | After case ...: [no-match] | no-match |
| cflow.cs:249:17:249:29 | Before goto default; | cflow.cs:249:17:249:29 | goto default; | |
| cflow.cs:249:17:249:29 | goto default; | cflow.cs:255:13:255:20 | After default: [match] | goto |
-| cflow.cs:250:13:250:19 | After case ...: [match] | cflow.cs:250:18:250:18 | 1 | |
+| cflow.cs:250:13:250:19 | After case ...: [match] | cflow.cs:251:17:251:37 | ...; | |
| cflow.cs:250:13:250:19 | After case ...: [no-match] | cflow.cs:253:13:253:19 | case ...: | |
-| cflow.cs:250:13:250:19 | case ...: | cflow.cs:250:13:250:19 | After case ...: [match] | match |
-| cflow.cs:250:13:250:19 | case ...: | cflow.cs:250:13:250:19 | After case ...: [no-match] | no-match |
-| cflow.cs:250:18:250:18 | 1 | cflow.cs:251:17:251:37 | ...; | |
+| cflow.cs:250:13:250:19 | case ...: | cflow.cs:250:18:250:18 | 1 | |
+| cflow.cs:250:18:250:18 | 1 | cflow.cs:250:18:250:18 | After 1 [match] | match |
+| cflow.cs:250:18:250:18 | 1 | cflow.cs:250:18:250:18 | After 1 [no-match] | no-match |
+| cflow.cs:250:18:250:18 | After 1 [match] | cflow.cs:250:13:250:19 | After case ...: [match] | match |
+| cflow.cs:250:18:250:18 | After 1 [no-match] | cflow.cs:250:13:250:19 | After case ...: [no-match] | no-match |
| cflow.cs:251:17:251:36 | After call to method WriteLine | cflow.cs:251:17:251:37 | After ...; | |
| cflow.cs:251:17:251:36 | Before call to method WriteLine | cflow.cs:251:35:251:35 | 1 | |
| cflow.cs:251:17:251:36 | call to method WriteLine | cflow.cs:251:17:251:36 | After call to method WriteLine | |
@@ -8241,11 +8337,13 @@
| cflow.cs:251:35:251:35 | 1 | cflow.cs:251:17:251:36 | call to method WriteLine | |
| cflow.cs:252:17:252:22 | Before break; | cflow.cs:252:17:252:22 | break; | |
| cflow.cs:252:17:252:22 | break; | cflow.cs:246:9:258:9 | After switch (...) {...} | break |
-| cflow.cs:253:13:253:19 | After case ...: [match] | cflow.cs:253:18:253:18 | 2 | |
+| cflow.cs:253:13:253:19 | After case ...: [match] | cflow.cs:254:17:254:27 | Before goto ...; | |
| cflow.cs:253:13:253:19 | After case ...: [no-match] | cflow.cs:255:13:255:20 | default: | |
-| cflow.cs:253:13:253:19 | case ...: | cflow.cs:253:13:253:19 | After case ...: [match] | match |
-| cflow.cs:253:13:253:19 | case ...: | cflow.cs:253:13:253:19 | After case ...: [no-match] | no-match |
-| cflow.cs:253:18:253:18 | 2 | cflow.cs:254:17:254:27 | Before goto ...; | |
+| cflow.cs:253:13:253:19 | case ...: | cflow.cs:253:18:253:18 | 2 | |
+| cflow.cs:253:18:253:18 | 2 | cflow.cs:253:18:253:18 | After 2 [match] | match |
+| cflow.cs:253:18:253:18 | 2 | cflow.cs:253:18:253:18 | After 2 [no-match] | no-match |
+| cflow.cs:253:18:253:18 | After 2 [match] | cflow.cs:253:13:253:19 | After case ...: [match] | match |
+| cflow.cs:253:18:253:18 | After 2 [no-match] | cflow.cs:253:13:253:19 | After case ...: [no-match] | no-match |
| cflow.cs:254:17:254:27 | Before goto ...; | cflow.cs:254:17:254:27 | goto ...; | |
| cflow.cs:254:17:254:27 | goto ...; | cflow.cs:242:5:242:9 | Label: | goto |
| cflow.cs:255:13:255:20 | After default: [match] | cflow.cs:256:17:256:37 | ...; | |
diff --git a/csharp/ql/test/library-tests/controlflow/guards/BooleanGuardedExpr.expected b/csharp/ql/test/library-tests/controlflow/guards/BooleanGuardedExpr.expected
index b274d7905b2..37455092448 100644
--- a/csharp/ql/test/library-tests/controlflow/guards/BooleanGuardedExpr.expected
+++ b/csharp/ql/test/library-tests/controlflow/guards/BooleanGuardedExpr.expected
@@ -79,7 +79,6 @@
| Guards.cs:287:17:287:17 | access to parameter o | Guards.cs:278:13:279:28 | ... => ... | Guards.cs:279:17:279:17 | access to parameter o | false |
| Guards.cs:287:17:287:17 | access to parameter o | Guards.cs:282:13:283:28 | ... => ... | Guards.cs:283:17:283:17 | access to parameter o | false |
| Guards.cs:287:17:287:17 | access to parameter o | Guards.cs:284:13:285:28 | ... => ... | Guards.cs:285:17:285:17 | access to parameter o | false |
-| Guards.cs:334:13:334:15 | access to constant B | Guards.cs:334:13:334:20 | ... => ... | Guards.cs:334:13:334:15 | access to constant B | true |
| Guards.cs:342:27:342:27 | access to parameter b | Guards.cs:341:20:341:20 | access to parameter b | Guards.cs:341:20:341:20 | access to parameter b | false |
| Guards.cs:343:31:343:31 | access to local variable s | Guards.cs:342:13:342:21 | ... != ... | Guards.cs:342:13:342:13 | access to local variable s | true |
| Guards.cs:349:13:349:13 | access to parameter o | Guards.cs:348:13:348:25 | ... is ... | Guards.cs:348:13:348:13 | access to parameter o | true |
diff --git a/csharp/ql/test/library-tests/controlflow/guards/GuardedControlFlowNode.expected b/csharp/ql/test/library-tests/controlflow/guards/GuardedControlFlowNode.expected
index c038c49ba17..765b8670a18 100644
--- a/csharp/ql/test/library-tests/controlflow/guards/GuardedControlFlowNode.expected
+++ b/csharp/ql/test/library-tests/controlflow/guards/GuardedControlFlowNode.expected
@@ -202,7 +202,6 @@
| Guards.cs:287:17:287:28 | call to method ToString | Guards.cs:278:13:279:28 | ... => ... | Guards.cs:279:17:279:28 | call to method ToString | false |
| Guards.cs:287:17:287:28 | call to method ToString | Guards.cs:282:13:283:28 | ... => ... | Guards.cs:283:17:283:28 | call to method ToString | false |
| Guards.cs:287:17:287:28 | call to method ToString | Guards.cs:284:13:285:28 | ... => ... | Guards.cs:285:17:285:28 | call to method ToString | false |
-| Guards.cs:334:13:334:15 | access to constant B | Guards.cs:334:13:334:20 | ... => ... | Guards.cs:334:13:334:15 | access to constant B | true |
| Guards.cs:342:27:342:27 | access to parameter b | Guards.cs:341:20:341:20 | access to parameter b | Guards.cs:341:20:341:20 | access to parameter b | false |
| Guards.cs:342:27:342:27 | access to parameter b | Guards.cs:341:20:341:32 | ... ? ... : ... | Guards.cs:341:20:341:20 | access to parameter b | not null |
| Guards.cs:343:31:343:31 | access to local variable s | Guards.cs:342:13:342:13 | access to local variable s | Guards.cs:342:13:342:13 | access to local variable s | not null |
diff --git a/csharp/ql/test/library-tests/controlflow/guards/GuardedExpr.expected b/csharp/ql/test/library-tests/controlflow/guards/GuardedExpr.expected
index c038c49ba17..765b8670a18 100644
--- a/csharp/ql/test/library-tests/controlflow/guards/GuardedExpr.expected
+++ b/csharp/ql/test/library-tests/controlflow/guards/GuardedExpr.expected
@@ -202,7 +202,6 @@
| Guards.cs:287:17:287:28 | call to method ToString | Guards.cs:278:13:279:28 | ... => ... | Guards.cs:279:17:279:28 | call to method ToString | false |
| Guards.cs:287:17:287:28 | call to method ToString | Guards.cs:282:13:283:28 | ... => ... | Guards.cs:283:17:283:28 | call to method ToString | false |
| Guards.cs:287:17:287:28 | call to method ToString | Guards.cs:284:13:285:28 | ... => ... | Guards.cs:285:17:285:28 | call to method ToString | false |
-| Guards.cs:334:13:334:15 | access to constant B | Guards.cs:334:13:334:20 | ... => ... | Guards.cs:334:13:334:15 | access to constant B | true |
| Guards.cs:342:27:342:27 | access to parameter b | Guards.cs:341:20:341:20 | access to parameter b | Guards.cs:341:20:341:20 | access to parameter b | false |
| Guards.cs:342:27:342:27 | access to parameter b | Guards.cs:341:20:341:32 | ... ? ... : ... | Guards.cs:341:20:341:20 | access to parameter b | not null |
| Guards.cs:343:31:343:31 | access to local variable s | Guards.cs:342:13:342:13 | access to local variable s | Guards.cs:342:13:342:13 | access to local variable s | not null |
diff --git a/csharp/ql/test/library-tests/csharp7/DefUse.ql b/csharp/ql/test/library-tests/csharp7/DefUse.ql
index 5957c009260..ccdd4db0157 100644
--- a/csharp/ql/test/library-tests/csharp7/DefUse.ql
+++ b/csharp/ql/test/library-tests/csharp7/DefUse.ql
@@ -1,13 +1,8 @@
import csharp
-from AssignableDefinition def, AssignableRead read, Ssa::Definition ult, Ssa::Definition ssaDef
+from AssignableDefinition def, AssignableRead read, SsaDefinition ult, SsaDefinition ssaDef
where
ssaDef.getAnUltimateDefinition() = ult and
- (
- ult.(Ssa::ExplicitDefinition).getADefinition() = def
- or
- ult.(Ssa::ParameterDefinition).getParameter() =
- def.(AssignableDefinitions::ImplicitParameterDefinition).getParameter()
- ) and
+ ult.(SsaExplicitWrite).getDefinition() = def and
read = ssaDef.getARead()
select def, read
diff --git a/csharp/ql/test/library-tests/csharp7/IsFlow.expected b/csharp/ql/test/library-tests/csharp7/IsFlow.expected
index a1dafe05ce6..07d3079854d 100644
--- a/csharp/ql/test/library-tests/csharp7/IsFlow.expected
+++ b/csharp/ql/test/library-tests/csharp7/IsFlow.expected
@@ -3,18 +3,22 @@
| CSharp7.cs:248:9:274:9 | After switch (...) {...} | CSharp7.cs:231:5:275:5 | After {...} | semmle.label | successor |
| CSharp7.cs:248:9:274:9 | switch (...) {...} | CSharp7.cs:248:17:248:17 | access to local variable o | semmle.label | successor |
| CSharp7.cs:248:17:248:17 | access to local variable o | CSharp7.cs:250:13:250:23 | case ...: | semmle.label | successor |
-| CSharp7.cs:250:13:250:23 | After case ...: [match] | CSharp7.cs:250:18:250:22 | "xyz" | semmle.label | successor |
+| CSharp7.cs:250:13:250:23 | After case ...: [match] | CSharp7.cs:251:17:251:22 | Before break; | semmle.label | successor |
| CSharp7.cs:250:13:250:23 | After case ...: [no-match] | CSharp7.cs:252:13:252:31 | case ...: | semmle.label | successor |
-| CSharp7.cs:250:13:250:23 | case ...: | CSharp7.cs:250:13:250:23 | After case ...: [match] | semmle.label | match |
-| CSharp7.cs:250:13:250:23 | case ...: | CSharp7.cs:250:13:250:23 | After case ...: [no-match] | semmle.label | no-match |
-| CSharp7.cs:250:18:250:22 | "xyz" | CSharp7.cs:251:17:251:22 | Before break; | semmle.label | successor |
+| CSharp7.cs:250:13:250:23 | case ...: | CSharp7.cs:250:18:250:22 | "xyz" | semmle.label | successor |
+| CSharp7.cs:250:18:250:22 | "xyz" | CSharp7.cs:250:18:250:22 | After "xyz" [match] | semmle.label | match |
+| CSharp7.cs:250:18:250:22 | "xyz" | CSharp7.cs:250:18:250:22 | After "xyz" [no-match] | semmle.label | no-match |
+| CSharp7.cs:250:18:250:22 | After "xyz" [match] | CSharp7.cs:250:13:250:23 | After case ...: [match] | semmle.label | match |
+| CSharp7.cs:250:18:250:22 | After "xyz" [no-match] | CSharp7.cs:250:13:250:23 | After case ...: [no-match] | semmle.label | no-match |
| CSharp7.cs:251:17:251:22 | Before break; | CSharp7.cs:251:17:251:22 | break; | semmle.label | successor |
| CSharp7.cs:251:17:251:22 | break; | CSharp7.cs:248:9:274:9 | After switch (...) {...} | semmle.label | break |
-| CSharp7.cs:252:13:252:31 | After case ...: [match] | CSharp7.cs:252:18:252:19 | "" | semmle.label | successor |
+| CSharp7.cs:252:13:252:31 | After case ...: [match] | CSharp7.cs:252:26:252:30 | Before ... < ... | semmle.label | successor |
| CSharp7.cs:252:13:252:31 | After case ...: [no-match] | CSharp7.cs:254:13:254:41 | case ...: | semmle.label | successor |
-| CSharp7.cs:252:13:252:31 | case ...: | CSharp7.cs:252:13:252:31 | After case ...: [match] | semmle.label | match |
-| CSharp7.cs:252:13:252:31 | case ...: | CSharp7.cs:252:13:252:31 | After case ...: [no-match] | semmle.label | no-match |
-| CSharp7.cs:252:18:252:19 | "" | CSharp7.cs:252:26:252:30 | Before ... < ... | semmle.label | successor |
+| CSharp7.cs:252:13:252:31 | case ...: | CSharp7.cs:252:18:252:19 | "" | semmle.label | successor |
+| CSharp7.cs:252:18:252:19 | "" | CSharp7.cs:252:18:252:19 | After "" [match] | semmle.label | match |
+| CSharp7.cs:252:18:252:19 | "" | CSharp7.cs:252:18:252:19 | After "" [no-match] | semmle.label | no-match |
+| CSharp7.cs:252:18:252:19 | After "" [match] | CSharp7.cs:252:13:252:31 | After case ...: [match] | semmle.label | match |
+| CSharp7.cs:252:18:252:19 | After "" [no-match] | CSharp7.cs:252:13:252:31 | After case ...: [no-match] | semmle.label | no-match |
| CSharp7.cs:252:26:252:26 | 1 | CSharp7.cs:252:30:252:30 | 2 | semmle.label | successor |
| CSharp7.cs:252:26:252:30 | ... < ... | CSharp7.cs:252:26:252:30 | After ... < ... [false] | semmle.label | false |
| CSharp7.cs:252:26:252:30 | ... < ... | CSharp7.cs:252:26:252:30 | After ... < ... [true] | semmle.label | true |
@@ -24,11 +28,13 @@
| CSharp7.cs:252:30:252:30 | 2 | CSharp7.cs:252:26:252:30 | ... < ... | semmle.label | successor |
| CSharp7.cs:253:17:253:22 | Before break; | CSharp7.cs:253:17:253:22 | break; | semmle.label | successor |
| CSharp7.cs:253:17:253:22 | break; | CSharp7.cs:248:9:274:9 | After switch (...) {...} | semmle.label | break |
-| CSharp7.cs:254:13:254:41 | After case ...: [match] | CSharp7.cs:254:18:254:20 | "x" | semmle.label | successor |
+| CSharp7.cs:254:13:254:41 | After case ...: [match] | CSharp7.cs:254:27:254:40 | Before ... is ... | semmle.label | successor |
| CSharp7.cs:254:13:254:41 | After case ...: [no-match] | CSharp7.cs:257:13:257:36 | case ...: | semmle.label | successor |
-| CSharp7.cs:254:13:254:41 | case ...: | CSharp7.cs:254:13:254:41 | After case ...: [match] | semmle.label | match |
-| CSharp7.cs:254:13:254:41 | case ...: | CSharp7.cs:254:13:254:41 | After case ...: [no-match] | semmle.label | no-match |
-| CSharp7.cs:254:18:254:20 | "x" | CSharp7.cs:254:27:254:40 | Before ... is ... | semmle.label | successor |
+| CSharp7.cs:254:13:254:41 | case ...: | CSharp7.cs:254:18:254:20 | "x" | semmle.label | successor |
+| CSharp7.cs:254:18:254:20 | "x" | CSharp7.cs:254:18:254:20 | After "x" [match] | semmle.label | match |
+| CSharp7.cs:254:18:254:20 | "x" | CSharp7.cs:254:18:254:20 | After "x" [no-match] | semmle.label | no-match |
+| CSharp7.cs:254:18:254:20 | After "x" [match] | CSharp7.cs:254:13:254:41 | After case ...: [match] | semmle.label | match |
+| CSharp7.cs:254:18:254:20 | After "x" [no-match] | CSharp7.cs:254:13:254:41 | After case ...: [no-match] | semmle.label | no-match |
| CSharp7.cs:254:27:254:27 | access to local variable o | CSharp7.cs:254:27:254:40 | ... is ... | semmle.label | successor |
| CSharp7.cs:254:27:254:40 | ... is ... | CSharp7.cs:254:27:254:40 | After ... is ... [false] | semmle.label | false |
| CSharp7.cs:254:27:254:40 | ... is ... | CSharp7.cs:254:27:254:40 | [MatchTrue] ... is ... | semmle.label | true |
@@ -52,11 +58,13 @@
| CSharp7.cs:255:40:255:41 | access to local variable s4 | CSharp7.cs:255:39:255:42 | {...} | semmle.label | successor |
| CSharp7.cs:256:17:256:22 | Before break; | CSharp7.cs:256:17:256:22 | break; | semmle.label | successor |
| CSharp7.cs:256:17:256:22 | break; | CSharp7.cs:248:9:274:9 | After switch (...) {...} | semmle.label | break |
-| CSharp7.cs:257:13:257:36 | After case ...: [match] | CSharp7.cs:257:18:257:23 | Int32 i2 | semmle.label | successor |
+| CSharp7.cs:257:13:257:36 | After case ...: [match] | CSharp7.cs:257:30:257:35 | Before ... > ... | semmle.label | successor |
| CSharp7.cs:257:13:257:36 | After case ...: [no-match] | CSharp7.cs:260:13:260:24 | case ...: | semmle.label | successor |
-| CSharp7.cs:257:13:257:36 | case ...: | CSharp7.cs:257:13:257:36 | After case ...: [match] | semmle.label | match |
-| CSharp7.cs:257:13:257:36 | case ...: | CSharp7.cs:257:13:257:36 | After case ...: [no-match] | semmle.label | no-match |
-| CSharp7.cs:257:18:257:23 | Int32 i2 | CSharp7.cs:257:30:257:35 | Before ... > ... | semmle.label | successor |
+| CSharp7.cs:257:13:257:36 | case ...: | CSharp7.cs:257:18:257:23 | Int32 i2 | semmle.label | successor |
+| CSharp7.cs:257:18:257:23 | After Int32 i2 [match] | CSharp7.cs:257:13:257:36 | After case ...: [match] | semmle.label | match |
+| CSharp7.cs:257:18:257:23 | After Int32 i2 [no-match] | CSharp7.cs:257:13:257:36 | After case ...: [no-match] | semmle.label | no-match |
+| CSharp7.cs:257:18:257:23 | Int32 i2 | CSharp7.cs:257:18:257:23 | After Int32 i2 [match] | semmle.label | match |
+| CSharp7.cs:257:18:257:23 | Int32 i2 | CSharp7.cs:257:18:257:23 | After Int32 i2 [no-match] | semmle.label | no-match |
| CSharp7.cs:257:30:257:31 | access to local variable i2 | CSharp7.cs:257:35:257:35 | 0 | semmle.label | successor |
| CSharp7.cs:257:30:257:35 | ... > ... | CSharp7.cs:257:30:257:35 | After ... > ... [false] | semmle.label | false |
| CSharp7.cs:257:30:257:35 | ... > ... | CSharp7.cs:257:30:257:35 | After ... > ... [true] | semmle.label | true |
@@ -79,11 +87,13 @@
| CSharp7.cs:258:47:258:48 | access to local variable i2 | CSharp7.cs:258:46:258:49 | {...} | semmle.label | successor |
| CSharp7.cs:259:17:259:22 | Before break; | CSharp7.cs:259:17:259:22 | break; | semmle.label | successor |
| CSharp7.cs:259:17:259:22 | break; | CSharp7.cs:248:9:274:9 | After switch (...) {...} | semmle.label | break |
-| CSharp7.cs:260:13:260:24 | After case ...: [match] | CSharp7.cs:260:18:260:23 | Int32 i3 | semmle.label | successor |
+| CSharp7.cs:260:13:260:24 | After case ...: [match] | CSharp7.cs:261:17:261:47 | ...; | semmle.label | successor |
| CSharp7.cs:260:13:260:24 | After case ...: [no-match] | CSharp7.cs:263:13:263:27 | case ...: | semmle.label | successor |
-| CSharp7.cs:260:13:260:24 | case ...: | CSharp7.cs:260:13:260:24 | After case ...: [match] | semmle.label | match |
-| CSharp7.cs:260:13:260:24 | case ...: | CSharp7.cs:260:13:260:24 | After case ...: [no-match] | semmle.label | no-match |
-| CSharp7.cs:260:18:260:23 | Int32 i3 | CSharp7.cs:261:17:261:47 | ...; | semmle.label | successor |
+| CSharp7.cs:260:13:260:24 | case ...: | CSharp7.cs:260:18:260:23 | Int32 i3 | semmle.label | successor |
+| CSharp7.cs:260:18:260:23 | After Int32 i3 [match] | CSharp7.cs:260:13:260:24 | After case ...: [match] | semmle.label | match |
+| CSharp7.cs:260:18:260:23 | After Int32 i3 [no-match] | CSharp7.cs:260:13:260:24 | After case ...: [no-match] | semmle.label | no-match |
+| CSharp7.cs:260:18:260:23 | Int32 i3 | CSharp7.cs:260:18:260:23 | After Int32 i3 [match] | semmle.label | match |
+| CSharp7.cs:260:18:260:23 | Int32 i3 | CSharp7.cs:260:18:260:23 | After Int32 i3 [no-match] | semmle.label | no-match |
| CSharp7.cs:261:17:261:46 | After call to method WriteLine | CSharp7.cs:261:17:261:47 | After ...; | semmle.label | successor |
| CSharp7.cs:261:17:261:46 | Before call to method WriteLine | CSharp7.cs:261:35:261:45 | Before $"..." | semmle.label | successor |
| CSharp7.cs:261:17:261:46 | call to method WriteLine | CSharp7.cs:261:17:261:46 | After call to method WriteLine | semmle.label | successor |
@@ -99,11 +109,13 @@
| CSharp7.cs:261:42:261:43 | access to local variable i3 | CSharp7.cs:261:41:261:44 | {...} | semmle.label | successor |
| CSharp7.cs:262:17:262:22 | Before break; | CSharp7.cs:262:17:262:22 | break; | semmle.label | successor |
| CSharp7.cs:262:17:262:22 | break; | CSharp7.cs:248:9:274:9 | After switch (...) {...} | semmle.label | break |
-| CSharp7.cs:263:13:263:27 | After case ...: [match] | CSharp7.cs:263:18:263:26 | String s2 | semmle.label | successor |
+| CSharp7.cs:263:13:263:27 | After case ...: [match] | CSharp7.cs:264:17:264:50 | ...; | semmle.label | successor |
| CSharp7.cs:263:13:263:27 | After case ...: [no-match] | CSharp7.cs:266:13:266:26 | case ...: | semmle.label | successor |
-| CSharp7.cs:263:13:263:27 | case ...: | CSharp7.cs:263:13:263:27 | After case ...: [match] | semmle.label | match |
-| CSharp7.cs:263:13:263:27 | case ...: | CSharp7.cs:263:13:263:27 | After case ...: [no-match] | semmle.label | no-match |
-| CSharp7.cs:263:18:263:26 | String s2 | CSharp7.cs:264:17:264:50 | ...; | semmle.label | successor |
+| CSharp7.cs:263:13:263:27 | case ...: | CSharp7.cs:263:18:263:26 | String s2 | semmle.label | successor |
+| CSharp7.cs:263:18:263:26 | After String s2 [match] | CSharp7.cs:263:13:263:27 | After case ...: [match] | semmle.label | match |
+| CSharp7.cs:263:18:263:26 | After String s2 [no-match] | CSharp7.cs:263:13:263:27 | After case ...: [no-match] | semmle.label | no-match |
+| CSharp7.cs:263:18:263:26 | String s2 | CSharp7.cs:263:18:263:26 | After String s2 [match] | semmle.label | match |
+| CSharp7.cs:263:18:263:26 | String s2 | CSharp7.cs:263:18:263:26 | After String s2 [no-match] | semmle.label | no-match |
| CSharp7.cs:264:17:264:49 | After call to method WriteLine | CSharp7.cs:264:17:264:50 | After ...; | semmle.label | successor |
| CSharp7.cs:264:17:264:49 | Before call to method WriteLine | CSharp7.cs:264:35:264:48 | Before $"..." | semmle.label | successor |
| CSharp7.cs:264:17:264:49 | call to method WriteLine | CSharp7.cs:264:17:264:49 | After call to method WriteLine | semmle.label | successor |
@@ -119,11 +131,13 @@
| CSharp7.cs:264:45:264:46 | access to local variable s2 | CSharp7.cs:264:44:264:47 | {...} | semmle.label | successor |
| CSharp7.cs:265:17:265:22 | Before break; | CSharp7.cs:265:17:265:22 | break; | semmle.label | successor |
| CSharp7.cs:265:17:265:22 | break; | CSharp7.cs:248:9:274:9 | After switch (...) {...} | semmle.label | break |
-| CSharp7.cs:266:13:266:26 | After case ...: [match] | CSharp7.cs:266:18:266:23 | access to type Double | semmle.label | successor |
+| CSharp7.cs:266:13:266:26 | After case ...: [match] | CSharp7.cs:267:17:267:44 | ...; | semmle.label | successor |
| CSharp7.cs:266:13:266:26 | After case ...: [no-match] | CSharp7.cs:269:13:269:24 | case ...: | semmle.label | successor |
-| CSharp7.cs:266:13:266:26 | case ...: | CSharp7.cs:266:13:266:26 | After case ...: [match] | semmle.label | match |
-| CSharp7.cs:266:13:266:26 | case ...: | CSharp7.cs:266:13:266:26 | After case ...: [no-match] | semmle.label | no-match |
-| CSharp7.cs:266:18:266:23 | access to type Double | CSharp7.cs:267:17:267:44 | ...; | semmle.label | successor |
+| CSharp7.cs:266:13:266:26 | case ...: | CSharp7.cs:266:18:266:23 | access to type Double | semmle.label | successor |
+| CSharp7.cs:266:18:266:23 | After access to type Double [match] | CSharp7.cs:266:13:266:26 | After case ...: [match] | semmle.label | match |
+| CSharp7.cs:266:18:266:23 | After access to type Double [no-match] | CSharp7.cs:266:13:266:26 | After case ...: [no-match] | semmle.label | no-match |
+| CSharp7.cs:266:18:266:23 | access to type Double | CSharp7.cs:266:18:266:23 | After access to type Double [match] | semmle.label | match |
+| CSharp7.cs:266:18:266:23 | access to type Double | CSharp7.cs:266:18:266:23 | After access to type Double [no-match] | semmle.label | no-match |
| CSharp7.cs:267:17:267:43 | After call to method WriteLine | CSharp7.cs:267:17:267:44 | After ...; | semmle.label | successor |
| CSharp7.cs:267:17:267:43 | Before call to method WriteLine | CSharp7.cs:267:35:267:42 | "Double" | semmle.label | successor |
| CSharp7.cs:267:17:267:43 | call to method WriteLine | CSharp7.cs:267:17:267:43 | After call to method WriteLine | semmle.label | successor |
@@ -132,11 +146,13 @@
| CSharp7.cs:267:35:267:42 | "Double" | CSharp7.cs:267:17:267:43 | call to method WriteLine | semmle.label | successor |
| CSharp7.cs:268:17:268:22 | Before break; | CSharp7.cs:268:17:268:22 | break; | semmle.label | successor |
| CSharp7.cs:268:17:268:22 | break; | CSharp7.cs:248:9:274:9 | After switch (...) {...} | semmle.label | break |
-| CSharp7.cs:269:13:269:24 | After case ...: [match] | CSharp7.cs:269:18:269:23 | Object v2 | semmle.label | successor |
+| CSharp7.cs:269:13:269:24 | After case ...: [match] | CSharp7.cs:270:17:270:22 | Before break; | semmle.label | successor |
| CSharp7.cs:269:13:269:24 | After case ...: [no-match] | CSharp7.cs:271:13:271:20 | default: | semmle.label | successor |
-| CSharp7.cs:269:13:269:24 | case ...: | CSharp7.cs:269:13:269:24 | After case ...: [match] | semmle.label | match |
-| CSharp7.cs:269:13:269:24 | case ...: | CSharp7.cs:269:13:269:24 | After case ...: [no-match] | semmle.label | no-match |
-| CSharp7.cs:269:18:269:23 | Object v2 | CSharp7.cs:270:17:270:22 | Before break; | semmle.label | successor |
+| CSharp7.cs:269:13:269:24 | case ...: | CSharp7.cs:269:18:269:23 | Object v2 | semmle.label | successor |
+| CSharp7.cs:269:18:269:23 | After Object v2 [match] | CSharp7.cs:269:13:269:24 | After case ...: [match] | semmle.label | match |
+| CSharp7.cs:269:18:269:23 | After Object v2 [no-match] | CSharp7.cs:269:13:269:24 | After case ...: [no-match] | semmle.label | no-match |
+| CSharp7.cs:269:18:269:23 | Object v2 | CSharp7.cs:269:18:269:23 | After Object v2 [match] | semmle.label | match |
+| CSharp7.cs:269:18:269:23 | Object v2 | CSharp7.cs:269:18:269:23 | After Object v2 [no-match] | semmle.label | no-match |
| CSharp7.cs:270:17:270:22 | Before break; | CSharp7.cs:270:17:270:22 | break; | semmle.label | successor |
| CSharp7.cs:270:17:270:22 | break; | CSharp7.cs:248:9:274:9 | After switch (...) {...} | semmle.label | break |
| CSharp7.cs:271:13:271:20 | After default: [match] | CSharp7.cs:272:17:272:52 | ...; | semmle.label | successor |
diff --git a/csharp/ql/test/library-tests/csharp7/LocalTaintFlow.expected b/csharp/ql/test/library-tests/csharp7/LocalTaintFlow.expected
index 61693ac518e..e2d3b18e036 100644
--- a/csharp/ql/test/library-tests/csharp7/LocalTaintFlow.expected
+++ b/csharp/ql/test/library-tests/csharp7/LocalTaintFlow.expected
@@ -35,23 +35,23 @@
| CSharp7.cs:44:9:44:9 | access to parameter y | CSharp7.cs:44:9:44:13 | SSA def(y) |
| CSharp7.cs:44:13:44:13 | access to parameter x | CSharp7.cs:44:9:44:9 | access to parameter y |
| CSharp7.cs:47:10:47:10 | this | CSharp7.cs:49:9:49:24 | this access |
+| CSharp7.cs:49:9:49:24 | SSA def(t1) | CSharp7.cs:51:18:51:19 | access to local variable t1 |
| CSharp7.cs:49:9:49:24 | [post] this access | CSharp7.cs:50:9:50:21 | this access |
| CSharp7.cs:49:9:49:24 | this access | CSharp7.cs:50:9:50:21 | this access |
-| CSharp7.cs:49:22:49:23 | SSA def(t1) | CSharp7.cs:51:18:51:19 | access to local variable t1 |
-| CSharp7.cs:49:22:49:23 | String t1 | CSharp7.cs:49:22:49:23 | SSA def(t1) |
+| CSharp7.cs:49:22:49:23 | String t1 | CSharp7.cs:49:9:49:24 | SSA def(t1) |
+| CSharp7.cs:50:9:50:21 | SSA def(t2) | CSharp7.cs:54:14:54:15 | access to local variable t2 |
| CSharp7.cs:50:9:50:21 | [post] this access | CSharp7.cs:52:9:52:17 | this access |
| CSharp7.cs:50:9:50:21 | this access | CSharp7.cs:52:9:52:17 | this access |
-| CSharp7.cs:50:19:50:20 | SSA def(t2) | CSharp7.cs:54:14:54:15 | access to local variable t2 |
-| CSharp7.cs:50:19:50:20 | String t2 | CSharp7.cs:50:19:50:20 | SSA def(t2) |
+| CSharp7.cs:50:19:50:20 | String t2 | CSharp7.cs:50:9:50:21 | SSA def(t2) |
| CSharp7.cs:51:18:51:19 | access to local variable t1 | CSharp7.cs:51:13:51:14 | access to local variable t3 |
+| CSharp7.cs:52:9:52:17 | SSA def(t1) | CSharp7.cs:53:14:53:15 | access to local variable t1 |
| CSharp7.cs:52:9:52:17 | [post] this access | CSharp7.cs:55:9:55:32 | this access |
| CSharp7.cs:52:9:52:17 | this access | CSharp7.cs:55:9:55:32 | this access |
-| CSharp7.cs:52:15:52:16 | SSA def(t1) | CSharp7.cs:53:14:53:15 | access to local variable t1 |
-| CSharp7.cs:52:15:52:16 | access to local variable t1 | CSharp7.cs:52:15:52:16 | SSA def(t1) |
+| CSharp7.cs:52:15:52:16 | access to local variable t1 | CSharp7.cs:52:9:52:17 | SSA def(t1) |
| CSharp7.cs:53:14:53:15 | access to local variable t1 | CSharp7.cs:53:9:53:10 | access to local variable t3 |
| CSharp7.cs:54:14:54:15 | access to local variable t2 | CSharp7.cs:54:9:54:10 | access to local variable t3 |
-| CSharp7.cs:55:30:55:31 | SSA def(t4) | CSharp7.cs:56:18:56:19 | access to local variable t4 |
-| CSharp7.cs:55:30:55:31 | String t4 | CSharp7.cs:55:30:55:31 | SSA def(t4) |
+| CSharp7.cs:55:9:55:32 | SSA def(t4) | CSharp7.cs:56:18:56:19 | access to local variable t4 |
+| CSharp7.cs:55:30:55:31 | String t4 | CSharp7.cs:55:9:55:32 | SSA def(t4) |
| CSharp7.cs:56:18:56:19 | access to local variable t4 | CSharp7.cs:56:13:56:14 | access to local variable t5 |
| CSharp7.cs:60:7:60:12 | this | CSharp7.cs:60:7:60:12 | this access |
| CSharp7.cs:67:10:67:20 | this | CSharp7.cs:69:26:69:28 | this access |
diff --git a/csharp/ql/test/library-tests/csharp8/NullableRefTypes.expected b/csharp/ql/test/library-tests/csharp8/NullableRefTypes.expected
index 6ab83277fcf..d6965f85da5 100644
--- a/csharp/ql/test/library-tests/csharp8/NullableRefTypes.expected
+++ b/csharp/ql/test/library-tests/csharp8/NullableRefTypes.expected
@@ -227,7 +227,7 @@ returnTypes
| NullableRefTypes.cs:107:26:107:36 | ReturnsRef5 | readonly MyClass! |
| NullableRefTypes.cs:108:26:108:36 | ReturnsRef6 | readonly MyClass! |
| NullableRefTypes.cs:110:10:110:20 | Parameters1 | Void! |
-| NullableRefTypes.cs:113:32:113:44 | get_RefProperty | MyClass! |
+| NullableRefTypes.cs:113:32:113:44 | get_RefProperty | ref MyClass! |
| NullableRefTypes.cs:116:7:116:23 |