mirror of
https://github.com/github/codeql.git
synced 2026-02-12 05:01:06 +01:00
C#: Add extension data flow test.
This commit is contained in:
@@ -0,0 +1,502 @@
|
||||
models
|
||||
edges
|
||||
| extensions.cs:5:22:5:24 | obj : B | extensions.cs:23:24:23:26 | access to extension synthetic parameter obj | provenance | |
|
||||
| extensions.cs:5:22:5:24 | obj : B | extensions.cs:23:24:23:26 | access to extension synthetic parameter obj | provenance | |
|
||||
| extensions.cs:5:22:5:24 | obj : B | extensions.cs:28:24:28:26 | access to extension synthetic parameter obj | provenance | |
|
||||
| extensions.cs:5:22:5:24 | obj : B | extensions.cs:28:24:28:26 | access to extension synthetic parameter obj | provenance | |
|
||||
| extensions.cs:5:22:5:24 | obj : B | extensions.cs:51:20:51:22 | access to extension synthetic parameter obj | provenance | |
|
||||
| extensions.cs:5:22:5:24 | obj : B | extensions.cs:51:20:51:22 | access to extension synthetic parameter obj | provenance | |
|
||||
| extensions.cs:11:24:11:37 | call to method Source<B> : B | extensions.cs:108:18:108:26 | access to property Prop1 : B | provenance | |
|
||||
| extensions.cs:11:24:11:37 | call to method Source<B> : B | extensions.cs:108:18:108:26 | access to property Prop1 : B | provenance | |
|
||||
| extensions.cs:11:24:11:37 | call to method Source<B> : B | extensions.cs:111:18:111:44 | call to extension accessor get_Prop1 : B | provenance | |
|
||||
| extensions.cs:11:24:11:37 | call to method Source<B> : B | extensions.cs:111:18:111:44 | call to extension accessor get_Prop1 : B | provenance | |
|
||||
| extensions.cs:13:13:13:15 | value : B | extensions.cs:15:24:15:28 | access to parameter value | provenance | |
|
||||
| extensions.cs:13:13:13:15 | value : B | extensions.cs:15:24:15:28 | access to parameter value | provenance | |
|
||||
| extensions.cs:36:24:36:38 | call to method Source<B> : B | extensions.cs:194:18:194:35 | access to property StaticProp1 : B | provenance | |
|
||||
| extensions.cs:36:24:36:38 | call to method Source<B> : B | extensions.cs:194:18:194:35 | access to property StaticProp1 : B | provenance | |
|
||||
| extensions.cs:36:24:36:38 | call to method Source<B> : B | extensions.cs:197:18:197:47 | call to extension accessor get_StaticProp1 : B | provenance | |
|
||||
| extensions.cs:36:24:36:38 | call to method Source<B> : B | extensions.cs:197:18:197:47 | call to extension accessor get_StaticProp1 : B | provenance | |
|
||||
| extensions.cs:38:13:38:15 | value : B | extensions.cs:40:24:40:28 | access to parameter value | provenance | |
|
||||
| extensions.cs:38:13:38:15 | value : B | extensions.cs:40:24:40:28 | access to parameter value | provenance | |
|
||||
| extensions.cs:46:20:46:33 | call to method Source<B> : B | extensions.cs:127:18:127:25 | call to method M1 : B | provenance | |
|
||||
| extensions.cs:46:20:46:33 | call to method Source<B> : B | extensions.cs:127:18:127:25 | call to method M1 : B | provenance | |
|
||||
| extensions.cs:46:20:46:33 | call to method Source<B> : B | extensions.cs:130:18:130:37 | call to method M1 : B | provenance | |
|
||||
| extensions.cs:46:20:46:33 | call to method Source<B> : B | extensions.cs:130:18:130:37 | call to method M1 : B | provenance | |
|
||||
| extensions.cs:59:48:59:48 | a : B | extensions.cs:61:20:61:20 | access to parameter a | provenance | |
|
||||
| extensions.cs:59:48:59:48 | a : B | extensions.cs:61:20:61:20 | access to parameter a | provenance | |
|
||||
| extensions.cs:67:20:67:33 | call to method Source<B> : B | extensions.cs:185:18:185:24 | call to operator - : B | provenance | |
|
||||
| extensions.cs:67:20:67:33 | call to method Source<B> : B | extensions.cs:185:18:185:24 | call to operator - : B | provenance | |
|
||||
| extensions.cs:67:20:67:33 | call to method Source<B> : B | extensions.cs:188:18:188:52 | call to operator - : B | provenance | |
|
||||
| extensions.cs:67:20:67:33 | call to method Source<B> : B | extensions.cs:188:18:188:52 | call to operator - : B | provenance | |
|
||||
| extensions.cs:76:17:76:17 | b : B | extensions.cs:80:20:80:20 | access to extension synthetic parameter b : B | provenance | |
|
||||
| extensions.cs:76:17:76:17 | b : B | extensions.cs:80:20:80:20 | access to extension synthetic parameter b : B | provenance | |
|
||||
| extensions.cs:76:17:76:17 | b : B | extensions.cs:85:20:85:20 | access to extension synthetic parameter b | provenance | |
|
||||
| extensions.cs:76:17:76:17 | b : B | extensions.cs:85:20:85:20 | access to extension synthetic parameter b | provenance | |
|
||||
| extensions.cs:89:20:89:20 | t : B | extensions.cs:93:20:93:20 | access to extension synthetic parameter t | provenance | |
|
||||
| extensions.cs:89:20:89:20 | t : B | extensions.cs:93:20:93:20 | access to extension synthetic parameter t | provenance | |
|
||||
| extensions.cs:96:33:96:37 | other : B | extensions.cs:98:20:98:24 | access to parameter other : B | provenance | |
|
||||
| extensions.cs:96:33:96:37 | other : B | extensions.cs:98:20:98:24 | access to parameter other : B | provenance | |
|
||||
| extensions.cs:108:13:108:14 | access to local variable b1 : B | extensions.cs:109:14:109:15 | access to local variable b1 | provenance | |
|
||||
| extensions.cs:108:13:108:14 | access to local variable b1 : B | extensions.cs:109:14:109:15 | access to local variable b1 | provenance | |
|
||||
| extensions.cs:108:18:108:26 | access to property Prop1 : B | extensions.cs:108:13:108:14 | access to local variable b1 : B | provenance | |
|
||||
| extensions.cs:108:18:108:26 | access to property Prop1 : B | extensions.cs:108:13:108:14 | access to local variable b1 : B | provenance | |
|
||||
| extensions.cs:111:13:111:14 | access to local variable b2 : B | extensions.cs:112:14:112:15 | access to local variable b2 | provenance | |
|
||||
| extensions.cs:111:13:111:14 | access to local variable b2 : B | extensions.cs:112:14:112:15 | access to local variable b2 | provenance | |
|
||||
| extensions.cs:111:18:111:44 | call to extension accessor get_Prop1 : B | extensions.cs:111:13:111:14 | access to local variable b2 : B | provenance | |
|
||||
| extensions.cs:111:18:111:44 | call to extension accessor get_Prop1 : B | extensions.cs:111:13:111:14 | access to local variable b2 : B | provenance | |
|
||||
| extensions.cs:118:21:118:32 | call to method Source<B> : B | extensions.cs:13:13:13:15 | value : B | provenance | |
|
||||
| extensions.cs:118:21:118:32 | call to method Source<B> : B | extensions.cs:13:13:13:15 | value : B | provenance | |
|
||||
| extensions.cs:120:13:120:13 | access to local variable b : B | extensions.cs:121:37:121:37 | access to local variable b : B | provenance | |
|
||||
| extensions.cs:120:13:120:13 | access to local variable b : B | extensions.cs:121:37:121:37 | access to local variable b : B | provenance | |
|
||||
| extensions.cs:120:17:120:30 | call to method Source<B> : B | extensions.cs:120:13:120:13 | access to local variable b : B | provenance | |
|
||||
| extensions.cs:120:17:120:30 | call to method Source<B> : B | extensions.cs:120:13:120:13 | access to local variable b : B | provenance | |
|
||||
| extensions.cs:121:37:121:37 | access to local variable b : B | extensions.cs:13:13:13:15 | value : B | provenance | |
|
||||
| extensions.cs:121:37:121:37 | access to local variable b : B | extensions.cs:13:13:13:15 | value : B | provenance | |
|
||||
| extensions.cs:127:13:127:14 | access to local variable b1 : B | extensions.cs:128:14:128:15 | access to local variable b1 | provenance | |
|
||||
| extensions.cs:127:13:127:14 | access to local variable b1 : B | extensions.cs:128:14:128:15 | access to local variable b1 | provenance | |
|
||||
| extensions.cs:127:18:127:25 | call to method M1 : B | extensions.cs:127:13:127:14 | access to local variable b1 : B | provenance | |
|
||||
| extensions.cs:127:18:127:25 | call to method M1 : B | extensions.cs:127:13:127:14 | access to local variable b1 : B | provenance | |
|
||||
| extensions.cs:130:13:130:14 | access to local variable b2 : B | extensions.cs:131:14:131:15 | access to local variable b2 | provenance | |
|
||||
| extensions.cs:130:13:130:14 | access to local variable b2 : B | extensions.cs:131:14:131:15 | access to local variable b2 | provenance | |
|
||||
| extensions.cs:130:18:130:37 | call to method M1 : B | extensions.cs:130:13:130:14 | access to local variable b2 : B | provenance | |
|
||||
| extensions.cs:130:18:130:37 | call to method M1 : B | extensions.cs:130:13:130:14 | access to local variable b2 : B | provenance | |
|
||||
| extensions.cs:136:13:136:14 | access to local variable b1 : B | extensions.cs:137:9:137:10 | access to local variable b1 : B | provenance | |
|
||||
| extensions.cs:136:13:136:14 | access to local variable b1 : B | extensions.cs:137:9:137:10 | access to local variable b1 : B | provenance | |
|
||||
| extensions.cs:136:18:136:29 | call to method Source<B> : B | extensions.cs:136:13:136:14 | access to local variable b1 : B | provenance | |
|
||||
| extensions.cs:136:18:136:29 | call to method Source<B> : B | extensions.cs:136:13:136:14 | access to local variable b1 : B | provenance | |
|
||||
| extensions.cs:137:9:137:10 | access to local variable b1 : B | extensions.cs:5:22:5:24 | obj : B | provenance | |
|
||||
| extensions.cs:137:9:137:10 | access to local variable b1 : B | extensions.cs:5:22:5:24 | obj : B | provenance | |
|
||||
| extensions.cs:139:13:139:14 | access to local variable b2 : B | extensions.cs:140:25:140:26 | access to local variable b2 : B | provenance | |
|
||||
| extensions.cs:139:13:139:14 | access to local variable b2 : B | extensions.cs:140:25:140:26 | access to local variable b2 : B | provenance | |
|
||||
| extensions.cs:139:18:139:31 | call to method Source<B> : B | extensions.cs:139:13:139:14 | access to local variable b2 : B | provenance | |
|
||||
| extensions.cs:139:18:139:31 | call to method Source<B> : B | extensions.cs:139:13:139:14 | access to local variable b2 : B | provenance | |
|
||||
| extensions.cs:140:25:140:26 | access to local variable b2 : B | extensions.cs:5:22:5:24 | obj : B | provenance | |
|
||||
| extensions.cs:140:25:140:26 | access to local variable b2 : B | extensions.cs:5:22:5:24 | obj : B | provenance | |
|
||||
| extensions.cs:145:13:145:14 | access to local variable b1 : B | extensions.cs:146:18:146:19 | access to local variable b1 : B | provenance | |
|
||||
| extensions.cs:145:13:145:14 | access to local variable b1 : B | extensions.cs:146:18:146:19 | access to local variable b1 : B | provenance | |
|
||||
| extensions.cs:145:13:145:14 | access to local variable b1 : B | extensions.cs:149:34:149:35 | access to local variable b1 : B | provenance | |
|
||||
| extensions.cs:145:13:145:14 | access to local variable b1 : B | extensions.cs:149:34:149:35 | access to local variable b1 : B | provenance | |
|
||||
| extensions.cs:145:18:145:29 | call to method Source<B> : B | extensions.cs:145:13:145:14 | access to local variable b1 : B | provenance | |
|
||||
| extensions.cs:145:18:145:29 | call to method Source<B> : B | extensions.cs:145:13:145:14 | access to local variable b1 : B | provenance | |
|
||||
| extensions.cs:146:13:146:14 | access to local variable b2 : B | extensions.cs:147:14:147:15 | access to local variable b2 | provenance | |
|
||||
| extensions.cs:146:13:146:14 | access to local variable b2 : B | extensions.cs:147:14:147:15 | access to local variable b2 | provenance | |
|
||||
| extensions.cs:146:18:146:19 | access to local variable b1 : B | extensions.cs:76:17:76:17 | b : B | provenance | |
|
||||
| extensions.cs:146:18:146:19 | access to local variable b1 : B | extensions.cs:76:17:76:17 | b : B | provenance | |
|
||||
| extensions.cs:146:18:146:19 | access to local variable b1 : B | extensions.cs:146:18:146:24 | call to method B1 : B | provenance | |
|
||||
| extensions.cs:146:18:146:19 | access to local variable b1 : B | extensions.cs:146:18:146:24 | call to method B1 : B | provenance | |
|
||||
| extensions.cs:146:18:146:24 | call to method B1 : B | extensions.cs:146:13:146:14 | access to local variable b2 : B | provenance | |
|
||||
| extensions.cs:146:18:146:24 | call to method B1 : B | extensions.cs:146:13:146:14 | access to local variable b2 : B | provenance | |
|
||||
| extensions.cs:149:13:149:14 | access to local variable b3 : B | extensions.cs:150:14:150:15 | access to local variable b3 | provenance | |
|
||||
| extensions.cs:149:13:149:14 | access to local variable b3 : B | extensions.cs:150:14:150:15 | access to local variable b3 | provenance | |
|
||||
| extensions.cs:149:18:149:36 | call to method B1 : B | extensions.cs:149:13:149:14 | access to local variable b3 : B | provenance | |
|
||||
| extensions.cs:149:18:149:36 | call to method B1 : B | extensions.cs:149:13:149:14 | access to local variable b3 : B | provenance | |
|
||||
| extensions.cs:149:34:149:35 | access to local variable b1 : B | extensions.cs:76:17:76:17 | b : B | provenance | |
|
||||
| extensions.cs:149:34:149:35 | access to local variable b1 : B | extensions.cs:76:17:76:17 | b : B | provenance | |
|
||||
| extensions.cs:149:34:149:35 | access to local variable b1 : B | extensions.cs:149:18:149:36 | call to method B1 : B | provenance | |
|
||||
| extensions.cs:149:34:149:35 | access to local variable b1 : B | extensions.cs:149:18:149:36 | call to method B1 : B | provenance | |
|
||||
| extensions.cs:155:13:155:14 | access to local variable b1 : B | extensions.cs:156:18:156:19 | access to local variable b1 : B | provenance | |
|
||||
| extensions.cs:155:13:155:14 | access to local variable b1 : B | extensions.cs:156:18:156:19 | access to local variable b1 : B | provenance | |
|
||||
| extensions.cs:155:18:155:29 | call to method Source<B> : B | extensions.cs:155:13:155:14 | access to local variable b1 : B | provenance | |
|
||||
| extensions.cs:155:18:155:29 | call to method Source<B> : B | extensions.cs:155:13:155:14 | access to local variable b1 : B | provenance | |
|
||||
| extensions.cs:156:18:156:19 | access to local variable b1 : B | extensions.cs:5:22:5:24 | obj : B | provenance | |
|
||||
| extensions.cs:156:18:156:19 | access to local variable b1 : B | extensions.cs:5:22:5:24 | obj : B | provenance | |
|
||||
| extensions.cs:158:13:158:14 | access to local variable b3 : B | extensions.cs:159:41:159:42 | access to local variable b3 : B | provenance | |
|
||||
| extensions.cs:158:13:158:14 | access to local variable b3 : B | extensions.cs:159:41:159:42 | access to local variable b3 : B | provenance | |
|
||||
| extensions.cs:158:18:158:31 | call to method Source<B> : B | extensions.cs:158:13:158:14 | access to local variable b3 : B | provenance | |
|
||||
| extensions.cs:158:18:158:31 | call to method Source<B> : B | extensions.cs:158:13:158:14 | access to local variable b3 : B | provenance | |
|
||||
| extensions.cs:159:41:159:42 | access to local variable b3 : B | extensions.cs:5:22:5:24 | obj : B | provenance | |
|
||||
| extensions.cs:159:41:159:42 | access to local variable b3 : B | extensions.cs:5:22:5:24 | obj : B | provenance | |
|
||||
| extensions.cs:164:13:164:14 | access to local variable b1 : B | extensions.cs:165:9:165:10 | access to local variable b1 : B | provenance | |
|
||||
| extensions.cs:164:13:164:14 | access to local variable b1 : B | extensions.cs:165:9:165:10 | access to local variable b1 : B | provenance | |
|
||||
| extensions.cs:164:18:164:29 | call to method Source<B> : B | extensions.cs:164:13:164:14 | access to local variable b1 : B | provenance | |
|
||||
| extensions.cs:164:18:164:29 | call to method Source<B> : B | extensions.cs:164:13:164:14 | access to local variable b1 : B | provenance | |
|
||||
| extensions.cs:165:9:165:10 | access to local variable b1 : B | extensions.cs:5:22:5:24 | obj : B | provenance | |
|
||||
| extensions.cs:165:9:165:10 | access to local variable b1 : B | extensions.cs:5:22:5:24 | obj : B | provenance | |
|
||||
| extensions.cs:167:13:167:14 | access to local variable b2 : B | extensions.cs:168:32:168:33 | access to local variable b2 : B | provenance | |
|
||||
| extensions.cs:167:13:167:14 | access to local variable b2 : B | extensions.cs:168:32:168:33 | access to local variable b2 : B | provenance | |
|
||||
| extensions.cs:167:18:167:31 | call to method Source<B> : B | extensions.cs:167:13:167:14 | access to local variable b2 : B | provenance | |
|
||||
| extensions.cs:167:18:167:31 | call to method Source<B> : B | extensions.cs:167:13:167:14 | access to local variable b2 : B | provenance | |
|
||||
| extensions.cs:168:32:168:33 | access to local variable b2 : B | extensions.cs:5:22:5:24 | obj : B | provenance | |
|
||||
| extensions.cs:168:32:168:33 | access to local variable b2 : B | extensions.cs:5:22:5:24 | obj : B | provenance | |
|
||||
| extensions.cs:173:13:173:14 | access to local variable b1 : B | extensions.cs:175:18:175:19 | access to local variable b1 : B | provenance | |
|
||||
| extensions.cs:173:13:173:14 | access to local variable b1 : B | extensions.cs:175:18:175:19 | access to local variable b1 : B | provenance | |
|
||||
| extensions.cs:173:18:173:29 | call to method Source<B> : B | extensions.cs:173:13:173:14 | access to local variable b1 : B | provenance | |
|
||||
| extensions.cs:173:18:173:29 | call to method Source<B> : B | extensions.cs:173:13:173:14 | access to local variable b1 : B | provenance | |
|
||||
| extensions.cs:175:18:175:19 | access to local variable b1 : B | extensions.cs:59:48:59:48 | a : B | provenance | |
|
||||
| extensions.cs:175:18:175:19 | access to local variable b1 : B | extensions.cs:59:48:59:48 | a : B | provenance | |
|
||||
| extensions.cs:177:13:177:14 | access to local variable b4 : B | extensions.cs:178:43:178:44 | access to local variable b4 : B | provenance | |
|
||||
| extensions.cs:177:13:177:14 | access to local variable b4 : B | extensions.cs:178:43:178:44 | access to local variable b4 : B | provenance | |
|
||||
| extensions.cs:177:18:177:31 | call to method Source<B> : B | extensions.cs:177:13:177:14 | access to local variable b4 : B | provenance | |
|
||||
| extensions.cs:177:18:177:31 | call to method Source<B> : B | extensions.cs:177:13:177:14 | access to local variable b4 : B | provenance | |
|
||||
| extensions.cs:178:43:178:44 | access to local variable b4 : B | extensions.cs:59:48:59:48 | a : B | provenance | |
|
||||
| extensions.cs:178:43:178:44 | access to local variable b4 : B | extensions.cs:59:48:59:48 | a : B | provenance | |
|
||||
| extensions.cs:185:13:185:14 | access to local variable b3 : B | extensions.cs:186:14:186:15 | access to local variable b3 | provenance | |
|
||||
| extensions.cs:185:13:185:14 | access to local variable b3 : B | extensions.cs:186:14:186:15 | access to local variable b3 | provenance | |
|
||||
| extensions.cs:185:18:185:24 | call to operator - : B | extensions.cs:185:13:185:14 | access to local variable b3 : B | provenance | |
|
||||
| extensions.cs:185:18:185:24 | call to operator - : B | extensions.cs:185:13:185:14 | access to local variable b3 : B | provenance | |
|
||||
| extensions.cs:188:13:188:14 | access to local variable b4 : B | extensions.cs:189:14:189:15 | access to local variable b4 | provenance | |
|
||||
| extensions.cs:188:13:188:14 | access to local variable b4 : B | extensions.cs:189:14:189:15 | access to local variable b4 | provenance | |
|
||||
| extensions.cs:188:18:188:52 | call to operator - : B | extensions.cs:188:13:188:14 | access to local variable b4 : B | provenance | |
|
||||
| extensions.cs:188:18:188:52 | call to operator - : B | extensions.cs:188:13:188:14 | access to local variable b4 : B | provenance | |
|
||||
| extensions.cs:194:13:194:14 | access to local variable b1 : B | extensions.cs:195:14:195:15 | access to local variable b1 | provenance | |
|
||||
| extensions.cs:194:13:194:14 | access to local variable b1 : B | extensions.cs:195:14:195:15 | access to local variable b1 | provenance | |
|
||||
| extensions.cs:194:18:194:35 | access to property StaticProp1 : B | extensions.cs:194:13:194:14 | access to local variable b1 : B | provenance | |
|
||||
| extensions.cs:194:18:194:35 | access to property StaticProp1 : B | extensions.cs:194:13:194:14 | access to local variable b1 : B | provenance | |
|
||||
| extensions.cs:197:13:197:14 | access to local variable b2 : B | extensions.cs:198:14:198:15 | access to local variable b2 | provenance | |
|
||||
| extensions.cs:197:13:197:14 | access to local variable b2 : B | extensions.cs:198:14:198:15 | access to local variable b2 | provenance | |
|
||||
| extensions.cs:197:18:197:47 | call to extension accessor get_StaticProp1 : B | extensions.cs:197:13:197:14 | access to local variable b2 : B | provenance | |
|
||||
| extensions.cs:197:18:197:47 | call to extension accessor get_StaticProp1 : B | extensions.cs:197:13:197:14 | access to local variable b2 : B | provenance | |
|
||||
| extensions.cs:203:13:203:14 | access to local variable b1 : B | extensions.cs:204:30:204:31 | access to local variable b1 : B | provenance | |
|
||||
| extensions.cs:203:13:203:14 | access to local variable b1 : B | extensions.cs:204:30:204:31 | access to local variable b1 : B | provenance | |
|
||||
| extensions.cs:203:18:203:30 | call to method Source<B> : B | extensions.cs:203:13:203:14 | access to local variable b1 : B | provenance | |
|
||||
| extensions.cs:203:18:203:30 | call to method Source<B> : B | extensions.cs:203:13:203:14 | access to local variable b1 : B | provenance | |
|
||||
| extensions.cs:204:30:204:31 | access to local variable b1 : B | extensions.cs:38:13:38:15 | value : B | provenance | |
|
||||
| extensions.cs:204:30:204:31 | access to local variable b1 : B | extensions.cs:38:13:38:15 | value : B | provenance | |
|
||||
| extensions.cs:206:13:206:14 | access to local variable b2 : B | extensions.cs:207:38:207:39 | access to local variable b2 : B | provenance | |
|
||||
| extensions.cs:206:13:206:14 | access to local variable b2 : B | extensions.cs:207:38:207:39 | access to local variable b2 : B | provenance | |
|
||||
| extensions.cs:206:18:206:31 | call to method Source<B> : B | extensions.cs:206:13:206:14 | access to local variable b2 : B | provenance | |
|
||||
| extensions.cs:206:18:206:31 | call to method Source<B> : B | extensions.cs:206:13:206:14 | access to local variable b2 : B | provenance | |
|
||||
| extensions.cs:207:38:207:39 | access to local variable b2 : B | extensions.cs:38:13:38:15 | value : B | provenance | |
|
||||
| extensions.cs:207:38:207:39 | access to local variable b2 : B | extensions.cs:38:13:38:15 | value : B | provenance | |
|
||||
| extensions.cs:212:13:212:14 | access to local variable b1 : B | extensions.cs:213:9:213:10 | access to local variable b1 : B | provenance | |
|
||||
| extensions.cs:212:13:212:14 | access to local variable b1 : B | extensions.cs:213:9:213:10 | access to local variable b1 : B | provenance | |
|
||||
| extensions.cs:212:18:212:30 | call to method Source<B> : B | extensions.cs:212:13:212:14 | access to local variable b1 : B | provenance | |
|
||||
| extensions.cs:212:18:212:30 | call to method Source<B> : B | extensions.cs:212:13:212:14 | access to local variable b1 : B | provenance | |
|
||||
| extensions.cs:213:9:213:10 | access to local variable b1 : B | extensions.cs:76:17:76:17 | b : B | provenance | |
|
||||
| extensions.cs:213:9:213:10 | access to local variable b1 : B | extensions.cs:76:17:76:17 | b : B | provenance | |
|
||||
| extensions.cs:215:13:215:14 | access to local variable b2 : B | extensions.cs:216:25:216:26 | access to local variable b2 : B | provenance | |
|
||||
| extensions.cs:215:13:215:14 | access to local variable b2 : B | extensions.cs:216:25:216:26 | access to local variable b2 : B | provenance | |
|
||||
| extensions.cs:215:18:215:31 | call to method Source<B> : B | extensions.cs:215:13:215:14 | access to local variable b2 : B | provenance | |
|
||||
| extensions.cs:215:18:215:31 | call to method Source<B> : B | extensions.cs:215:13:215:14 | access to local variable b2 : B | provenance | |
|
||||
| extensions.cs:216:25:216:26 | access to local variable b2 : B | extensions.cs:76:17:76:17 | b : B | provenance | |
|
||||
| extensions.cs:216:25:216:26 | access to local variable b2 : B | extensions.cs:76:17:76:17 | b : B | provenance | |
|
||||
| extensions.cs:221:13:221:14 | access to local variable b1 : B | extensions.cs:222:9:222:10 | access to local variable b1 : B | provenance | |
|
||||
| extensions.cs:221:13:221:14 | access to local variable b1 : B | extensions.cs:222:9:222:10 | access to local variable b1 : B | provenance | |
|
||||
| extensions.cs:221:18:221:30 | call to method Source<B> : B | extensions.cs:221:13:221:14 | access to local variable b1 : B | provenance | |
|
||||
| extensions.cs:221:18:221:30 | call to method Source<B> : B | extensions.cs:221:13:221:14 | access to local variable b1 : B | provenance | |
|
||||
| extensions.cs:222:9:222:10 | access to local variable b1 : B | extensions.cs:89:20:89:20 | t : B | provenance | |
|
||||
| extensions.cs:222:9:222:10 | access to local variable b1 : B | extensions.cs:89:20:89:20 | t : B | provenance | |
|
||||
| extensions.cs:224:13:224:14 | access to local variable b2 : B | extensions.cs:225:32:225:33 | access to local variable b2 : B | provenance | |
|
||||
| extensions.cs:224:13:224:14 | access to local variable b2 : B | extensions.cs:225:32:225:33 | access to local variable b2 : B | provenance | |
|
||||
| extensions.cs:224:18:224:31 | call to method Source<B> : B | extensions.cs:224:13:224:14 | access to local variable b2 : B | provenance | |
|
||||
| extensions.cs:224:18:224:31 | call to method Source<B> : B | extensions.cs:224:13:224:14 | access to local variable b2 : B | provenance | |
|
||||
| extensions.cs:225:32:225:33 | access to local variable b2 : B | extensions.cs:89:20:89:20 | t : B | provenance | |
|
||||
| extensions.cs:225:32:225:33 | access to local variable b2 : B | extensions.cs:89:20:89:20 | t : B | provenance | |
|
||||
| extensions.cs:231:13:231:14 | access to local variable b1 : B | extensions.cs:232:32:232:33 | access to local variable b1 : B | provenance | |
|
||||
| extensions.cs:231:13:231:14 | access to local variable b1 : B | extensions.cs:232:32:232:33 | access to local variable b1 : B | provenance | |
|
||||
| extensions.cs:231:13:231:14 | access to local variable b1 : B | extensions.cs:235:46:235:47 | access to local variable b1 : B | provenance | |
|
||||
| extensions.cs:231:13:231:14 | access to local variable b1 : B | extensions.cs:235:46:235:47 | access to local variable b1 : B | provenance | |
|
||||
| extensions.cs:231:18:231:30 | call to method Source<B> : B | extensions.cs:231:13:231:14 | access to local variable b1 : B | provenance | |
|
||||
| extensions.cs:231:18:231:30 | call to method Source<B> : B | extensions.cs:231:13:231:14 | access to local variable b1 : B | provenance | |
|
||||
| extensions.cs:232:13:232:14 | access to local variable b2 : B | extensions.cs:233:14:233:15 | access to local variable b2 | provenance | |
|
||||
| extensions.cs:232:13:232:14 | access to local variable b2 : B | extensions.cs:233:14:233:15 | access to local variable b2 | provenance | |
|
||||
| extensions.cs:232:18:232:34 | call to method GenericM2<B> : B | extensions.cs:232:13:232:14 | access to local variable b2 : B | provenance | |
|
||||
| extensions.cs:232:18:232:34 | call to method GenericM2<B> : B | extensions.cs:232:13:232:14 | access to local variable b2 : B | provenance | |
|
||||
| extensions.cs:232:32:232:33 | access to local variable b1 : B | extensions.cs:96:33:96:37 | other : B | provenance | |
|
||||
| extensions.cs:232:32:232:33 | access to local variable b1 : B | extensions.cs:96:33:96:37 | other : B | provenance | |
|
||||
| extensions.cs:232:32:232:33 | access to local variable b1 : B | extensions.cs:232:18:232:34 | call to method GenericM2<B> : B | provenance | |
|
||||
| extensions.cs:232:32:232:33 | access to local variable b1 : B | extensions.cs:232:18:232:34 | call to method GenericM2<B> : B | provenance | |
|
||||
| extensions.cs:235:13:235:14 | access to local variable b3 : B | extensions.cs:236:14:236:15 | access to local variable b3 | provenance | |
|
||||
| extensions.cs:235:13:235:14 | access to local variable b3 : B | extensions.cs:236:14:236:15 | access to local variable b3 | provenance | |
|
||||
| extensions.cs:235:18:235:48 | call to method GenericM2<B> : B | extensions.cs:235:13:235:14 | access to local variable b3 : B | provenance | |
|
||||
| extensions.cs:235:18:235:48 | call to method GenericM2<B> : B | extensions.cs:235:13:235:14 | access to local variable b3 : B | provenance | |
|
||||
| extensions.cs:235:46:235:47 | access to local variable b1 : B | extensions.cs:96:33:96:37 | other : B | provenance | |
|
||||
| extensions.cs:235:46:235:47 | access to local variable b1 : B | extensions.cs:96:33:96:37 | other : B | provenance | |
|
||||
| extensions.cs:235:46:235:47 | access to local variable b1 : B | extensions.cs:235:18:235:48 | call to method GenericM2<B> : B | provenance | |
|
||||
| extensions.cs:235:46:235:47 | access to local variable b1 : B | extensions.cs:235:18:235:48 | call to method GenericM2<B> : B | provenance | |
|
||||
nodes
|
||||
| extensions.cs:5:22:5:24 | obj : B | semmle.label | obj : B |
|
||||
| extensions.cs:5:22:5:24 | obj : B | semmle.label | obj : B |
|
||||
| extensions.cs:5:22:5:24 | obj : B | semmle.label | obj : B |
|
||||
| extensions.cs:5:22:5:24 | obj : B | semmle.label | obj : B |
|
||||
| extensions.cs:5:22:5:24 | obj : B | semmle.label | obj : B |
|
||||
| extensions.cs:5:22:5:24 | obj : B | semmle.label | obj : B |
|
||||
| extensions.cs:11:24:11:37 | call to method Source<B> : B | semmle.label | call to method Source<B> : B |
|
||||
| extensions.cs:11:24:11:37 | call to method Source<B> : B | semmle.label | call to method Source<B> : B |
|
||||
| extensions.cs:13:13:13:15 | value : B | semmle.label | value : B |
|
||||
| extensions.cs:13:13:13:15 | value : B | semmle.label | value : B |
|
||||
| extensions.cs:15:24:15:28 | access to parameter value | semmle.label | access to parameter value |
|
||||
| extensions.cs:15:24:15:28 | access to parameter value | semmle.label | access to parameter value |
|
||||
| extensions.cs:23:24:23:26 | access to extension synthetic parameter obj | semmle.label | access to extension synthetic parameter obj |
|
||||
| extensions.cs:23:24:23:26 | access to extension synthetic parameter obj | semmle.label | access to extension synthetic parameter obj |
|
||||
| extensions.cs:28:24:28:26 | access to extension synthetic parameter obj | semmle.label | access to extension synthetic parameter obj |
|
||||
| extensions.cs:28:24:28:26 | access to extension synthetic parameter obj | semmle.label | access to extension synthetic parameter obj |
|
||||
| extensions.cs:36:24:36:38 | call to method Source<B> : B | semmle.label | call to method Source<B> : B |
|
||||
| extensions.cs:36:24:36:38 | call to method Source<B> : B | semmle.label | call to method Source<B> : B |
|
||||
| extensions.cs:38:13:38:15 | value : B | semmle.label | value : B |
|
||||
| extensions.cs:38:13:38:15 | value : B | semmle.label | value : B |
|
||||
| extensions.cs:40:24:40:28 | access to parameter value | semmle.label | access to parameter value |
|
||||
| extensions.cs:40:24:40:28 | access to parameter value | semmle.label | access to parameter value |
|
||||
| extensions.cs:46:20:46:33 | call to method Source<B> : B | semmle.label | call to method Source<B> : B |
|
||||
| extensions.cs:46:20:46:33 | call to method Source<B> : B | semmle.label | call to method Source<B> : B |
|
||||
| extensions.cs:51:20:51:22 | access to extension synthetic parameter obj | semmle.label | access to extension synthetic parameter obj |
|
||||
| extensions.cs:51:20:51:22 | access to extension synthetic parameter obj | semmle.label | access to extension synthetic parameter obj |
|
||||
| extensions.cs:59:48:59:48 | a : B | semmle.label | a : B |
|
||||
| extensions.cs:59:48:59:48 | a : B | semmle.label | a : B |
|
||||
| extensions.cs:61:20:61:20 | access to parameter a | semmle.label | access to parameter a |
|
||||
| extensions.cs:61:20:61:20 | access to parameter a | semmle.label | access to parameter a |
|
||||
| extensions.cs:67:20:67:33 | call to method Source<B> : B | semmle.label | call to method Source<B> : B |
|
||||
| extensions.cs:67:20:67:33 | call to method Source<B> : B | semmle.label | call to method Source<B> : B |
|
||||
| extensions.cs:76:17:76:17 | b : B | semmle.label | b : B |
|
||||
| extensions.cs:76:17:76:17 | b : B | semmle.label | b : B |
|
||||
| extensions.cs:76:17:76:17 | b : B | semmle.label | b : B |
|
||||
| extensions.cs:76:17:76:17 | b : B | semmle.label | b : B |
|
||||
| extensions.cs:80:20:80:20 | access to extension synthetic parameter b : B | semmle.label | access to extension synthetic parameter b : B |
|
||||
| extensions.cs:80:20:80:20 | access to extension synthetic parameter b : B | semmle.label | access to extension synthetic parameter b : B |
|
||||
| extensions.cs:85:20:85:20 | access to extension synthetic parameter b | semmle.label | access to extension synthetic parameter b |
|
||||
| extensions.cs:85:20:85:20 | access to extension synthetic parameter b | semmle.label | access to extension synthetic parameter b |
|
||||
| extensions.cs:89:20:89:20 | t : B | semmle.label | t : B |
|
||||
| extensions.cs:89:20:89:20 | t : B | semmle.label | t : B |
|
||||
| extensions.cs:93:20:93:20 | access to extension synthetic parameter t | semmle.label | access to extension synthetic parameter t |
|
||||
| extensions.cs:93:20:93:20 | access to extension synthetic parameter t | semmle.label | access to extension synthetic parameter t |
|
||||
| extensions.cs:96:33:96:37 | other : B | semmle.label | other : B |
|
||||
| extensions.cs:96:33:96:37 | other : B | semmle.label | other : B |
|
||||
| extensions.cs:98:20:98:24 | access to parameter other : B | semmle.label | access to parameter other : B |
|
||||
| extensions.cs:98:20:98:24 | access to parameter other : B | semmle.label | access to parameter other : B |
|
||||
| extensions.cs:108:13:108:14 | access to local variable b1 : B | semmle.label | access to local variable b1 : B |
|
||||
| extensions.cs:108:13:108:14 | access to local variable b1 : B | semmle.label | access to local variable b1 : B |
|
||||
| extensions.cs:108:18:108:26 | access to property Prop1 : B | semmle.label | access to property Prop1 : B |
|
||||
| extensions.cs:108:18:108:26 | access to property Prop1 : B | semmle.label | access to property Prop1 : B |
|
||||
| extensions.cs:109:14:109:15 | access to local variable b1 | semmle.label | access to local variable b1 |
|
||||
| extensions.cs:109:14:109:15 | access to local variable b1 | semmle.label | access to local variable b1 |
|
||||
| extensions.cs:111:13:111:14 | access to local variable b2 : B | semmle.label | access to local variable b2 : B |
|
||||
| extensions.cs:111:13:111:14 | access to local variable b2 : B | semmle.label | access to local variable b2 : B |
|
||||
| extensions.cs:111:18:111:44 | call to extension accessor get_Prop1 : B | semmle.label | call to extension accessor get_Prop1 : B |
|
||||
| extensions.cs:111:18:111:44 | call to extension accessor get_Prop1 : B | semmle.label | call to extension accessor get_Prop1 : B |
|
||||
| extensions.cs:112:14:112:15 | access to local variable b2 | semmle.label | access to local variable b2 |
|
||||
| extensions.cs:112:14:112:15 | access to local variable b2 | semmle.label | access to local variable b2 |
|
||||
| extensions.cs:118:21:118:32 | call to method Source<B> : B | semmle.label | call to method Source<B> : B |
|
||||
| extensions.cs:118:21:118:32 | call to method Source<B> : B | semmle.label | call to method Source<B> : B |
|
||||
| extensions.cs:120:13:120:13 | access to local variable b : B | semmle.label | access to local variable b : B |
|
||||
| extensions.cs:120:13:120:13 | access to local variable b : B | semmle.label | access to local variable b : B |
|
||||
| extensions.cs:120:17:120:30 | call to method Source<B> : B | semmle.label | call to method Source<B> : B |
|
||||
| extensions.cs:120:17:120:30 | call to method Source<B> : B | semmle.label | call to method Source<B> : B |
|
||||
| extensions.cs:121:37:121:37 | access to local variable b : B | semmle.label | access to local variable b : B |
|
||||
| extensions.cs:121:37:121:37 | access to local variable b : B | semmle.label | access to local variable b : B |
|
||||
| extensions.cs:127:13:127:14 | access to local variable b1 : B | semmle.label | access to local variable b1 : B |
|
||||
| extensions.cs:127:13:127:14 | access to local variable b1 : B | semmle.label | access to local variable b1 : B |
|
||||
| extensions.cs:127:18:127:25 | call to method M1 : B | semmle.label | call to method M1 : B |
|
||||
| extensions.cs:127:18:127:25 | call to method M1 : B | semmle.label | call to method M1 : B |
|
||||
| extensions.cs:128:14:128:15 | access to local variable b1 | semmle.label | access to local variable b1 |
|
||||
| extensions.cs:128:14:128:15 | access to local variable b1 | semmle.label | access to local variable b1 |
|
||||
| extensions.cs:130:13:130:14 | access to local variable b2 : B | semmle.label | access to local variable b2 : B |
|
||||
| extensions.cs:130:13:130:14 | access to local variable b2 : B | semmle.label | access to local variable b2 : B |
|
||||
| extensions.cs:130:18:130:37 | call to method M1 : B | semmle.label | call to method M1 : B |
|
||||
| extensions.cs:130:18:130:37 | call to method M1 : B | semmle.label | call to method M1 : B |
|
||||
| extensions.cs:131:14:131:15 | access to local variable b2 | semmle.label | access to local variable b2 |
|
||||
| extensions.cs:131:14:131:15 | access to local variable b2 | semmle.label | access to local variable b2 |
|
||||
| extensions.cs:136:13:136:14 | access to local variable b1 : B | semmle.label | access to local variable b1 : B |
|
||||
| extensions.cs:136:13:136:14 | access to local variable b1 : B | semmle.label | access to local variable b1 : B |
|
||||
| extensions.cs:136:18:136:29 | call to method Source<B> : B | semmle.label | call to method Source<B> : B |
|
||||
| extensions.cs:136:18:136:29 | call to method Source<B> : B | semmle.label | call to method Source<B> : B |
|
||||
| extensions.cs:137:9:137:10 | access to local variable b1 : B | semmle.label | access to local variable b1 : B |
|
||||
| extensions.cs:137:9:137:10 | access to local variable b1 : B | semmle.label | access to local variable b1 : B |
|
||||
| extensions.cs:139:13:139:14 | access to local variable b2 : B | semmle.label | access to local variable b2 : B |
|
||||
| extensions.cs:139:13:139:14 | access to local variable b2 : B | semmle.label | access to local variable b2 : B |
|
||||
| extensions.cs:139:18:139:31 | call to method Source<B> : B | semmle.label | call to method Source<B> : B |
|
||||
| extensions.cs:139:18:139:31 | call to method Source<B> : B | semmle.label | call to method Source<B> : B |
|
||||
| extensions.cs:140:25:140:26 | access to local variable b2 : B | semmle.label | access to local variable b2 : B |
|
||||
| extensions.cs:140:25:140:26 | access to local variable b2 : B | semmle.label | access to local variable b2 : B |
|
||||
| extensions.cs:145:13:145:14 | access to local variable b1 : B | semmle.label | access to local variable b1 : B |
|
||||
| extensions.cs:145:13:145:14 | access to local variable b1 : B | semmle.label | access to local variable b1 : B |
|
||||
| extensions.cs:145:18:145:29 | call to method Source<B> : B | semmle.label | call to method Source<B> : B |
|
||||
| extensions.cs:145:18:145:29 | call to method Source<B> : B | semmle.label | call to method Source<B> : B |
|
||||
| extensions.cs:146:13:146:14 | access to local variable b2 : B | semmle.label | access to local variable b2 : B |
|
||||
| extensions.cs:146:13:146:14 | access to local variable b2 : B | semmle.label | access to local variable b2 : B |
|
||||
| extensions.cs:146:18:146:19 | access to local variable b1 : B | semmle.label | access to local variable b1 : B |
|
||||
| extensions.cs:146:18:146:19 | access to local variable b1 : B | semmle.label | access to local variable b1 : B |
|
||||
| extensions.cs:146:18:146:24 | call to method B1 : B | semmle.label | call to method B1 : B |
|
||||
| extensions.cs:146:18:146:24 | call to method B1 : B | semmle.label | call to method B1 : B |
|
||||
| extensions.cs:147:14:147:15 | access to local variable b2 | semmle.label | access to local variable b2 |
|
||||
| extensions.cs:147:14:147:15 | access to local variable b2 | semmle.label | access to local variable b2 |
|
||||
| extensions.cs:149:13:149:14 | access to local variable b3 : B | semmle.label | access to local variable b3 : B |
|
||||
| extensions.cs:149:13:149:14 | access to local variable b3 : B | semmle.label | access to local variable b3 : B |
|
||||
| extensions.cs:149:18:149:36 | call to method B1 : B | semmle.label | call to method B1 : B |
|
||||
| extensions.cs:149:18:149:36 | call to method B1 : B | semmle.label | call to method B1 : B |
|
||||
| extensions.cs:149:34:149:35 | access to local variable b1 : B | semmle.label | access to local variable b1 : B |
|
||||
| extensions.cs:149:34:149:35 | access to local variable b1 : B | semmle.label | access to local variable b1 : B |
|
||||
| extensions.cs:150:14:150:15 | access to local variable b3 | semmle.label | access to local variable b3 |
|
||||
| extensions.cs:150:14:150:15 | access to local variable b3 | semmle.label | access to local variable b3 |
|
||||
| extensions.cs:155:13:155:14 | access to local variable b1 : B | semmle.label | access to local variable b1 : B |
|
||||
| extensions.cs:155:13:155:14 | access to local variable b1 : B | semmle.label | access to local variable b1 : B |
|
||||
| extensions.cs:155:18:155:29 | call to method Source<B> : B | semmle.label | call to method Source<B> : B |
|
||||
| extensions.cs:155:18:155:29 | call to method Source<B> : B | semmle.label | call to method Source<B> : B |
|
||||
| extensions.cs:156:18:156:19 | access to local variable b1 : B | semmle.label | access to local variable b1 : B |
|
||||
| extensions.cs:156:18:156:19 | access to local variable b1 : B | semmle.label | access to local variable b1 : B |
|
||||
| extensions.cs:158:13:158:14 | access to local variable b3 : B | semmle.label | access to local variable b3 : B |
|
||||
| extensions.cs:158:13:158:14 | access to local variable b3 : B | semmle.label | access to local variable b3 : B |
|
||||
| extensions.cs:158:18:158:31 | call to method Source<B> : B | semmle.label | call to method Source<B> : B |
|
||||
| extensions.cs:158:18:158:31 | call to method Source<B> : B | semmle.label | call to method Source<B> : B |
|
||||
| extensions.cs:159:41:159:42 | access to local variable b3 : B | semmle.label | access to local variable b3 : B |
|
||||
| extensions.cs:159:41:159:42 | access to local variable b3 : B | semmle.label | access to local variable b3 : B |
|
||||
| extensions.cs:164:13:164:14 | access to local variable b1 : B | semmle.label | access to local variable b1 : B |
|
||||
| extensions.cs:164:13:164:14 | access to local variable b1 : B | semmle.label | access to local variable b1 : B |
|
||||
| extensions.cs:164:18:164:29 | call to method Source<B> : B | semmle.label | call to method Source<B> : B |
|
||||
| extensions.cs:164:18:164:29 | call to method Source<B> : B | semmle.label | call to method Source<B> : B |
|
||||
| extensions.cs:165:9:165:10 | access to local variable b1 : B | semmle.label | access to local variable b1 : B |
|
||||
| extensions.cs:165:9:165:10 | access to local variable b1 : B | semmle.label | access to local variable b1 : B |
|
||||
| extensions.cs:167:13:167:14 | access to local variable b2 : B | semmle.label | access to local variable b2 : B |
|
||||
| extensions.cs:167:13:167:14 | access to local variable b2 : B | semmle.label | access to local variable b2 : B |
|
||||
| extensions.cs:167:18:167:31 | call to method Source<B> : B | semmle.label | call to method Source<B> : B |
|
||||
| extensions.cs:167:18:167:31 | call to method Source<B> : B | semmle.label | call to method Source<B> : B |
|
||||
| extensions.cs:168:32:168:33 | access to local variable b2 : B | semmle.label | access to local variable b2 : B |
|
||||
| extensions.cs:168:32:168:33 | access to local variable b2 : B | semmle.label | access to local variable b2 : B |
|
||||
| extensions.cs:173:13:173:14 | access to local variable b1 : B | semmle.label | access to local variable b1 : B |
|
||||
| extensions.cs:173:13:173:14 | access to local variable b1 : B | semmle.label | access to local variable b1 : B |
|
||||
| extensions.cs:173:18:173:29 | call to method Source<B> : B | semmle.label | call to method Source<B> : B |
|
||||
| extensions.cs:173:18:173:29 | call to method Source<B> : B | semmle.label | call to method Source<B> : B |
|
||||
| extensions.cs:175:18:175:19 | access to local variable b1 : B | semmle.label | access to local variable b1 : B |
|
||||
| extensions.cs:175:18:175:19 | access to local variable b1 : B | semmle.label | access to local variable b1 : B |
|
||||
| extensions.cs:177:13:177:14 | access to local variable b4 : B | semmle.label | access to local variable b4 : B |
|
||||
| extensions.cs:177:13:177:14 | access to local variable b4 : B | semmle.label | access to local variable b4 : B |
|
||||
| extensions.cs:177:18:177:31 | call to method Source<B> : B | semmle.label | call to method Source<B> : B |
|
||||
| extensions.cs:177:18:177:31 | call to method Source<B> : B | semmle.label | call to method Source<B> : B |
|
||||
| extensions.cs:178:43:178:44 | access to local variable b4 : B | semmle.label | access to local variable b4 : B |
|
||||
| extensions.cs:178:43:178:44 | access to local variable b4 : B | semmle.label | access to local variable b4 : B |
|
||||
| extensions.cs:185:13:185:14 | access to local variable b3 : B | semmle.label | access to local variable b3 : B |
|
||||
| extensions.cs:185:13:185:14 | access to local variable b3 : B | semmle.label | access to local variable b3 : B |
|
||||
| extensions.cs:185:18:185:24 | call to operator - : B | semmle.label | call to operator - : B |
|
||||
| extensions.cs:185:18:185:24 | call to operator - : B | semmle.label | call to operator - : B |
|
||||
| extensions.cs:186:14:186:15 | access to local variable b3 | semmle.label | access to local variable b3 |
|
||||
| extensions.cs:186:14:186:15 | access to local variable b3 | semmle.label | access to local variable b3 |
|
||||
| extensions.cs:188:13:188:14 | access to local variable b4 : B | semmle.label | access to local variable b4 : B |
|
||||
| extensions.cs:188:13:188:14 | access to local variable b4 : B | semmle.label | access to local variable b4 : B |
|
||||
| extensions.cs:188:18:188:52 | call to operator - : B | semmle.label | call to operator - : B |
|
||||
| extensions.cs:188:18:188:52 | call to operator - : B | semmle.label | call to operator - : B |
|
||||
| extensions.cs:189:14:189:15 | access to local variable b4 | semmle.label | access to local variable b4 |
|
||||
| extensions.cs:189:14:189:15 | access to local variable b4 | semmle.label | access to local variable b4 |
|
||||
| extensions.cs:194:13:194:14 | access to local variable b1 : B | semmle.label | access to local variable b1 : B |
|
||||
| extensions.cs:194:13:194:14 | access to local variable b1 : B | semmle.label | access to local variable b1 : B |
|
||||
| extensions.cs:194:18:194:35 | access to property StaticProp1 : B | semmle.label | access to property StaticProp1 : B |
|
||||
| extensions.cs:194:18:194:35 | access to property StaticProp1 : B | semmle.label | access to property StaticProp1 : B |
|
||||
| extensions.cs:195:14:195:15 | access to local variable b1 | semmle.label | access to local variable b1 |
|
||||
| extensions.cs:195:14:195:15 | access to local variable b1 | semmle.label | access to local variable b1 |
|
||||
| extensions.cs:197:13:197:14 | access to local variable b2 : B | semmle.label | access to local variable b2 : B |
|
||||
| extensions.cs:197:13:197:14 | access to local variable b2 : B | semmle.label | access to local variable b2 : B |
|
||||
| extensions.cs:197:18:197:47 | call to extension accessor get_StaticProp1 : B | semmle.label | call to extension accessor get_StaticProp1 : B |
|
||||
| extensions.cs:197:18:197:47 | call to extension accessor get_StaticProp1 : B | semmle.label | call to extension accessor get_StaticProp1 : B |
|
||||
| extensions.cs:198:14:198:15 | access to local variable b2 | semmle.label | access to local variable b2 |
|
||||
| extensions.cs:198:14:198:15 | access to local variable b2 | semmle.label | access to local variable b2 |
|
||||
| extensions.cs:203:13:203:14 | access to local variable b1 : B | semmle.label | access to local variable b1 : B |
|
||||
| extensions.cs:203:13:203:14 | access to local variable b1 : B | semmle.label | access to local variable b1 : B |
|
||||
| extensions.cs:203:18:203:30 | call to method Source<B> : B | semmle.label | call to method Source<B> : B |
|
||||
| extensions.cs:203:18:203:30 | call to method Source<B> : B | semmle.label | call to method Source<B> : B |
|
||||
| extensions.cs:204:30:204:31 | access to local variable b1 : B | semmle.label | access to local variable b1 : B |
|
||||
| extensions.cs:204:30:204:31 | access to local variable b1 : B | semmle.label | access to local variable b1 : B |
|
||||
| extensions.cs:206:13:206:14 | access to local variable b2 : B | semmle.label | access to local variable b2 : B |
|
||||
| extensions.cs:206:13:206:14 | access to local variable b2 : B | semmle.label | access to local variable b2 : B |
|
||||
| extensions.cs:206:18:206:31 | call to method Source<B> : B | semmle.label | call to method Source<B> : B |
|
||||
| extensions.cs:206:18:206:31 | call to method Source<B> : B | semmle.label | call to method Source<B> : B |
|
||||
| extensions.cs:207:38:207:39 | access to local variable b2 : B | semmle.label | access to local variable b2 : B |
|
||||
| extensions.cs:207:38:207:39 | access to local variable b2 : B | semmle.label | access to local variable b2 : B |
|
||||
| extensions.cs:212:13:212:14 | access to local variable b1 : B | semmle.label | access to local variable b1 : B |
|
||||
| extensions.cs:212:13:212:14 | access to local variable b1 : B | semmle.label | access to local variable b1 : B |
|
||||
| extensions.cs:212:18:212:30 | call to method Source<B> : B | semmle.label | call to method Source<B> : B |
|
||||
| extensions.cs:212:18:212:30 | call to method Source<B> : B | semmle.label | call to method Source<B> : B |
|
||||
| extensions.cs:213:9:213:10 | access to local variable b1 : B | semmle.label | access to local variable b1 : B |
|
||||
| extensions.cs:213:9:213:10 | access to local variable b1 : B | semmle.label | access to local variable b1 : B |
|
||||
| extensions.cs:215:13:215:14 | access to local variable b2 : B | semmle.label | access to local variable b2 : B |
|
||||
| extensions.cs:215:13:215:14 | access to local variable b2 : B | semmle.label | access to local variable b2 : B |
|
||||
| extensions.cs:215:18:215:31 | call to method Source<B> : B | semmle.label | call to method Source<B> : B |
|
||||
| extensions.cs:215:18:215:31 | call to method Source<B> : B | semmle.label | call to method Source<B> : B |
|
||||
| extensions.cs:216:25:216:26 | access to local variable b2 : B | semmle.label | access to local variable b2 : B |
|
||||
| extensions.cs:216:25:216:26 | access to local variable b2 : B | semmle.label | access to local variable b2 : B |
|
||||
| extensions.cs:221:13:221:14 | access to local variable b1 : B | semmle.label | access to local variable b1 : B |
|
||||
| extensions.cs:221:13:221:14 | access to local variable b1 : B | semmle.label | access to local variable b1 : B |
|
||||
| extensions.cs:221:18:221:30 | call to method Source<B> : B | semmle.label | call to method Source<B> : B |
|
||||
| extensions.cs:221:18:221:30 | call to method Source<B> : B | semmle.label | call to method Source<B> : B |
|
||||
| extensions.cs:222:9:222:10 | access to local variable b1 : B | semmle.label | access to local variable b1 : B |
|
||||
| extensions.cs:222:9:222:10 | access to local variable b1 : B | semmle.label | access to local variable b1 : B |
|
||||
| extensions.cs:224:13:224:14 | access to local variable b2 : B | semmle.label | access to local variable b2 : B |
|
||||
| extensions.cs:224:13:224:14 | access to local variable b2 : B | semmle.label | access to local variable b2 : B |
|
||||
| extensions.cs:224:18:224:31 | call to method Source<B> : B | semmle.label | call to method Source<B> : B |
|
||||
| extensions.cs:224:18:224:31 | call to method Source<B> : B | semmle.label | call to method Source<B> : B |
|
||||
| extensions.cs:225:32:225:33 | access to local variable b2 : B | semmle.label | access to local variable b2 : B |
|
||||
| extensions.cs:225:32:225:33 | access to local variable b2 : B | semmle.label | access to local variable b2 : B |
|
||||
| extensions.cs:231:13:231:14 | access to local variable b1 : B | semmle.label | access to local variable b1 : B |
|
||||
| extensions.cs:231:13:231:14 | access to local variable b1 : B | semmle.label | access to local variable b1 : B |
|
||||
| extensions.cs:231:18:231:30 | call to method Source<B> : B | semmle.label | call to method Source<B> : B |
|
||||
| extensions.cs:231:18:231:30 | call to method Source<B> : B | semmle.label | call to method Source<B> : B |
|
||||
| extensions.cs:232:13:232:14 | access to local variable b2 : B | semmle.label | access to local variable b2 : B |
|
||||
| extensions.cs:232:13:232:14 | access to local variable b2 : B | semmle.label | access to local variable b2 : B |
|
||||
| extensions.cs:232:18:232:34 | call to method GenericM2<B> : B | semmle.label | call to method GenericM2<B> : B |
|
||||
| extensions.cs:232:18:232:34 | call to method GenericM2<B> : B | semmle.label | call to method GenericM2<B> : B |
|
||||
| extensions.cs:232:32:232:33 | access to local variable b1 : B | semmle.label | access to local variable b1 : B |
|
||||
| extensions.cs:232:32:232:33 | access to local variable b1 : B | semmle.label | access to local variable b1 : B |
|
||||
| extensions.cs:233:14:233:15 | access to local variable b2 | semmle.label | access to local variable b2 |
|
||||
| extensions.cs:233:14:233:15 | access to local variable b2 | semmle.label | access to local variable b2 |
|
||||
| extensions.cs:235:13:235:14 | access to local variable b3 : B | semmle.label | access to local variable b3 : B |
|
||||
| extensions.cs:235:13:235:14 | access to local variable b3 : B | semmle.label | access to local variable b3 : B |
|
||||
| extensions.cs:235:18:235:48 | call to method GenericM2<B> : B | semmle.label | call to method GenericM2<B> : B |
|
||||
| extensions.cs:235:18:235:48 | call to method GenericM2<B> : B | semmle.label | call to method GenericM2<B> : B |
|
||||
| extensions.cs:235:46:235:47 | access to local variable b1 : B | semmle.label | access to local variable b1 : B |
|
||||
| extensions.cs:235:46:235:47 | access to local variable b1 : B | semmle.label | access to local variable b1 : B |
|
||||
| extensions.cs:236:14:236:15 | access to local variable b3 | semmle.label | access to local variable b3 |
|
||||
| extensions.cs:236:14:236:15 | access to local variable b3 | semmle.label | access to local variable b3 |
|
||||
subpaths
|
||||
| extensions.cs:146:18:146:19 | access to local variable b1 : B | extensions.cs:76:17:76:17 | b : B | extensions.cs:80:20:80:20 | access to extension synthetic parameter b : B | extensions.cs:146:18:146:24 | call to method B1 : B |
|
||||
| extensions.cs:146:18:146:19 | access to local variable b1 : B | extensions.cs:76:17:76:17 | b : B | extensions.cs:80:20:80:20 | access to extension synthetic parameter b : B | extensions.cs:146:18:146:24 | call to method B1 : B |
|
||||
| extensions.cs:149:34:149:35 | access to local variable b1 : B | extensions.cs:76:17:76:17 | b : B | extensions.cs:80:20:80:20 | access to extension synthetic parameter b : B | extensions.cs:149:18:149:36 | call to method B1 : B |
|
||||
| extensions.cs:149:34:149:35 | access to local variable b1 : B | extensions.cs:76:17:76:17 | b : B | extensions.cs:80:20:80:20 | access to extension synthetic parameter b : B | extensions.cs:149:18:149:36 | call to method B1 : B |
|
||||
| extensions.cs:232:32:232:33 | access to local variable b1 : B | extensions.cs:96:33:96:37 | other : B | extensions.cs:98:20:98:24 | access to parameter other : B | extensions.cs:232:18:232:34 | call to method GenericM2<B> : B |
|
||||
| extensions.cs:232:32:232:33 | access to local variable b1 : B | extensions.cs:96:33:96:37 | other : B | extensions.cs:98:20:98:24 | access to parameter other : B | extensions.cs:232:18:232:34 | call to method GenericM2<B> : B |
|
||||
| extensions.cs:235:46:235:47 | access to local variable b1 : B | extensions.cs:96:33:96:37 | other : B | extensions.cs:98:20:98:24 | access to parameter other : B | extensions.cs:235:18:235:48 | call to method GenericM2<B> : B |
|
||||
| extensions.cs:235:46:235:47 | access to local variable b1 : B | extensions.cs:96:33:96:37 | other : B | extensions.cs:98:20:98:24 | access to parameter other : B | extensions.cs:235:18:235:48 | call to method GenericM2<B> : B |
|
||||
testFailures
|
||||
#select
|
||||
| extensions.cs:15:24:15:28 | access to parameter value | extensions.cs:118:21:118:32 | call to method Source<B> : B | extensions.cs:15:24:15:28 | access to parameter value | $@ | extensions.cs:118:21:118:32 | call to method Source<B> : B | call to method Source<B> : B |
|
||||
| extensions.cs:15:24:15:28 | access to parameter value | extensions.cs:118:21:118:32 | call to method Source<B> : B | extensions.cs:15:24:15:28 | access to parameter value | $@ | extensions.cs:118:21:118:32 | call to method Source<B> : B | call to method Source<B> : B |
|
||||
| extensions.cs:15:24:15:28 | access to parameter value | extensions.cs:120:17:120:30 | call to method Source<B> : B | extensions.cs:15:24:15:28 | access to parameter value | $@ | extensions.cs:120:17:120:30 | call to method Source<B> : B | call to method Source<B> : B |
|
||||
| extensions.cs:15:24:15:28 | access to parameter value | extensions.cs:120:17:120:30 | call to method Source<B> : B | extensions.cs:15:24:15:28 | access to parameter value | $@ | extensions.cs:120:17:120:30 | call to method Source<B> : B | call to method Source<B> : B |
|
||||
| extensions.cs:23:24:23:26 | access to extension synthetic parameter obj | extensions.cs:155:18:155:29 | call to method Source<B> : B | extensions.cs:23:24:23:26 | access to extension synthetic parameter obj | $@ | extensions.cs:155:18:155:29 | call to method Source<B> : B | call to method Source<B> : B |
|
||||
| extensions.cs:23:24:23:26 | access to extension synthetic parameter obj | extensions.cs:155:18:155:29 | call to method Source<B> : B | extensions.cs:23:24:23:26 | access to extension synthetic parameter obj | $@ | extensions.cs:155:18:155:29 | call to method Source<B> : B | call to method Source<B> : B |
|
||||
| extensions.cs:23:24:23:26 | access to extension synthetic parameter obj | extensions.cs:158:18:158:31 | call to method Source<B> : B | extensions.cs:23:24:23:26 | access to extension synthetic parameter obj | $@ | extensions.cs:158:18:158:31 | call to method Source<B> : B | call to method Source<B> : B |
|
||||
| extensions.cs:23:24:23:26 | access to extension synthetic parameter obj | extensions.cs:158:18:158:31 | call to method Source<B> : B | extensions.cs:23:24:23:26 | access to extension synthetic parameter obj | $@ | extensions.cs:158:18:158:31 | call to method Source<B> : B | call to method Source<B> : B |
|
||||
| extensions.cs:28:24:28:26 | access to extension synthetic parameter obj | extensions.cs:164:18:164:29 | call to method Source<B> : B | extensions.cs:28:24:28:26 | access to extension synthetic parameter obj | $@ | extensions.cs:164:18:164:29 | call to method Source<B> : B | call to method Source<B> : B |
|
||||
| extensions.cs:28:24:28:26 | access to extension synthetic parameter obj | extensions.cs:164:18:164:29 | call to method Source<B> : B | extensions.cs:28:24:28:26 | access to extension synthetic parameter obj | $@ | extensions.cs:164:18:164:29 | call to method Source<B> : B | call to method Source<B> : B |
|
||||
| extensions.cs:28:24:28:26 | access to extension synthetic parameter obj | extensions.cs:167:18:167:31 | call to method Source<B> : B | extensions.cs:28:24:28:26 | access to extension synthetic parameter obj | $@ | extensions.cs:167:18:167:31 | call to method Source<B> : B | call to method Source<B> : B |
|
||||
| extensions.cs:28:24:28:26 | access to extension synthetic parameter obj | extensions.cs:167:18:167:31 | call to method Source<B> : B | extensions.cs:28:24:28:26 | access to extension synthetic parameter obj | $@ | extensions.cs:167:18:167:31 | call to method Source<B> : B | call to method Source<B> : B |
|
||||
| extensions.cs:40:24:40:28 | access to parameter value | extensions.cs:203:18:203:30 | call to method Source<B> : B | extensions.cs:40:24:40:28 | access to parameter value | $@ | extensions.cs:203:18:203:30 | call to method Source<B> : B | call to method Source<B> : B |
|
||||
| extensions.cs:40:24:40:28 | access to parameter value | extensions.cs:203:18:203:30 | call to method Source<B> : B | extensions.cs:40:24:40:28 | access to parameter value | $@ | extensions.cs:203:18:203:30 | call to method Source<B> : B | call to method Source<B> : B |
|
||||
| extensions.cs:40:24:40:28 | access to parameter value | extensions.cs:206:18:206:31 | call to method Source<B> : B | extensions.cs:40:24:40:28 | access to parameter value | $@ | extensions.cs:206:18:206:31 | call to method Source<B> : B | call to method Source<B> : B |
|
||||
| extensions.cs:40:24:40:28 | access to parameter value | extensions.cs:206:18:206:31 | call to method Source<B> : B | extensions.cs:40:24:40:28 | access to parameter value | $@ | extensions.cs:206:18:206:31 | call to method Source<B> : B | call to method Source<B> : B |
|
||||
| extensions.cs:51:20:51:22 | access to extension synthetic parameter obj | extensions.cs:136:18:136:29 | call to method Source<B> : B | extensions.cs:51:20:51:22 | access to extension synthetic parameter obj | $@ | extensions.cs:136:18:136:29 | call to method Source<B> : B | call to method Source<B> : B |
|
||||
| extensions.cs:51:20:51:22 | access to extension synthetic parameter obj | extensions.cs:136:18:136:29 | call to method Source<B> : B | extensions.cs:51:20:51:22 | access to extension synthetic parameter obj | $@ | extensions.cs:136:18:136:29 | call to method Source<B> : B | call to method Source<B> : B |
|
||||
| extensions.cs:51:20:51:22 | access to extension synthetic parameter obj | extensions.cs:139:18:139:31 | call to method Source<B> : B | extensions.cs:51:20:51:22 | access to extension synthetic parameter obj | $@ | extensions.cs:139:18:139:31 | call to method Source<B> : B | call to method Source<B> : B |
|
||||
| extensions.cs:51:20:51:22 | access to extension synthetic parameter obj | extensions.cs:139:18:139:31 | call to method Source<B> : B | extensions.cs:51:20:51:22 | access to extension synthetic parameter obj | $@ | extensions.cs:139:18:139:31 | call to method Source<B> : B | call to method Source<B> : B |
|
||||
| extensions.cs:61:20:61:20 | access to parameter a | extensions.cs:173:18:173:29 | call to method Source<B> : B | extensions.cs:61:20:61:20 | access to parameter a | $@ | extensions.cs:173:18:173:29 | call to method Source<B> : B | call to method Source<B> : B |
|
||||
| extensions.cs:61:20:61:20 | access to parameter a | extensions.cs:173:18:173:29 | call to method Source<B> : B | extensions.cs:61:20:61:20 | access to parameter a | $@ | extensions.cs:173:18:173:29 | call to method Source<B> : B | call to method Source<B> : B |
|
||||
| extensions.cs:61:20:61:20 | access to parameter a | extensions.cs:177:18:177:31 | call to method Source<B> : B | extensions.cs:61:20:61:20 | access to parameter a | $@ | extensions.cs:177:18:177:31 | call to method Source<B> : B | call to method Source<B> : B |
|
||||
| extensions.cs:61:20:61:20 | access to parameter a | extensions.cs:177:18:177:31 | call to method Source<B> : B | extensions.cs:61:20:61:20 | access to parameter a | $@ | extensions.cs:177:18:177:31 | call to method Source<B> : B | call to method Source<B> : B |
|
||||
| extensions.cs:85:20:85:20 | access to extension synthetic parameter b | extensions.cs:212:18:212:30 | call to method Source<B> : B | extensions.cs:85:20:85:20 | access to extension synthetic parameter b | $@ | extensions.cs:212:18:212:30 | call to method Source<B> : B | call to method Source<B> : B |
|
||||
| extensions.cs:85:20:85:20 | access to extension synthetic parameter b | extensions.cs:212:18:212:30 | call to method Source<B> : B | extensions.cs:85:20:85:20 | access to extension synthetic parameter b | $@ | extensions.cs:212:18:212:30 | call to method Source<B> : B | call to method Source<B> : B |
|
||||
| extensions.cs:85:20:85:20 | access to extension synthetic parameter b | extensions.cs:215:18:215:31 | call to method Source<B> : B | extensions.cs:85:20:85:20 | access to extension synthetic parameter b | $@ | extensions.cs:215:18:215:31 | call to method Source<B> : B | call to method Source<B> : B |
|
||||
| extensions.cs:85:20:85:20 | access to extension synthetic parameter b | extensions.cs:215:18:215:31 | call to method Source<B> : B | extensions.cs:85:20:85:20 | access to extension synthetic parameter b | $@ | extensions.cs:215:18:215:31 | call to method Source<B> : B | call to method Source<B> : B |
|
||||
| extensions.cs:93:20:93:20 | access to extension synthetic parameter t | extensions.cs:221:18:221:30 | call to method Source<B> : B | extensions.cs:93:20:93:20 | access to extension synthetic parameter t | $@ | extensions.cs:221:18:221:30 | call to method Source<B> : B | call to method Source<B> : B |
|
||||
| extensions.cs:93:20:93:20 | access to extension synthetic parameter t | extensions.cs:221:18:221:30 | call to method Source<B> : B | extensions.cs:93:20:93:20 | access to extension synthetic parameter t | $@ | extensions.cs:221:18:221:30 | call to method Source<B> : B | call to method Source<B> : B |
|
||||
| extensions.cs:93:20:93:20 | access to extension synthetic parameter t | extensions.cs:224:18:224:31 | call to method Source<B> : B | extensions.cs:93:20:93:20 | access to extension synthetic parameter t | $@ | extensions.cs:224:18:224:31 | call to method Source<B> : B | call to method Source<B> : B |
|
||||
| extensions.cs:93:20:93:20 | access to extension synthetic parameter t | extensions.cs:224:18:224:31 | call to method Source<B> : B | extensions.cs:93:20:93:20 | access to extension synthetic parameter t | $@ | extensions.cs:224:18:224:31 | call to method Source<B> : B | call to method Source<B> : B |
|
||||
| extensions.cs:109:14:109:15 | access to local variable b1 | extensions.cs:11:24:11:37 | call to method Source<B> : B | extensions.cs:109:14:109:15 | access to local variable b1 | $@ | extensions.cs:11:24:11:37 | call to method Source<B> : B | call to method Source<B> : B |
|
||||
| extensions.cs:109:14:109:15 | access to local variable b1 | extensions.cs:11:24:11:37 | call to method Source<B> : B | extensions.cs:109:14:109:15 | access to local variable b1 | $@ | extensions.cs:11:24:11:37 | call to method Source<B> : B | call to method Source<B> : B |
|
||||
| extensions.cs:112:14:112:15 | access to local variable b2 | extensions.cs:11:24:11:37 | call to method Source<B> : B | extensions.cs:112:14:112:15 | access to local variable b2 | $@ | extensions.cs:11:24:11:37 | call to method Source<B> : B | call to method Source<B> : B |
|
||||
| extensions.cs:112:14:112:15 | access to local variable b2 | extensions.cs:11:24:11:37 | call to method Source<B> : B | extensions.cs:112:14:112:15 | access to local variable b2 | $@ | extensions.cs:11:24:11:37 | call to method Source<B> : B | call to method Source<B> : B |
|
||||
| extensions.cs:128:14:128:15 | access to local variable b1 | extensions.cs:46:20:46:33 | call to method Source<B> : B | extensions.cs:128:14:128:15 | access to local variable b1 | $@ | extensions.cs:46:20:46:33 | call to method Source<B> : B | call to method Source<B> : B |
|
||||
| extensions.cs:128:14:128:15 | access to local variable b1 | extensions.cs:46:20:46:33 | call to method Source<B> : B | extensions.cs:128:14:128:15 | access to local variable b1 | $@ | extensions.cs:46:20:46:33 | call to method Source<B> : B | call to method Source<B> : B |
|
||||
| extensions.cs:131:14:131:15 | access to local variable b2 | extensions.cs:46:20:46:33 | call to method Source<B> : B | extensions.cs:131:14:131:15 | access to local variable b2 | $@ | extensions.cs:46:20:46:33 | call to method Source<B> : B | call to method Source<B> : B |
|
||||
| extensions.cs:131:14:131:15 | access to local variable b2 | extensions.cs:46:20:46:33 | call to method Source<B> : B | extensions.cs:131:14:131:15 | access to local variable b2 | $@ | extensions.cs:46:20:46:33 | call to method Source<B> : B | call to method Source<B> : B |
|
||||
| extensions.cs:147:14:147:15 | access to local variable b2 | extensions.cs:145:18:145:29 | call to method Source<B> : B | extensions.cs:147:14:147:15 | access to local variable b2 | $@ | extensions.cs:145:18:145:29 | call to method Source<B> : B | call to method Source<B> : B |
|
||||
| extensions.cs:147:14:147:15 | access to local variable b2 | extensions.cs:145:18:145:29 | call to method Source<B> : B | extensions.cs:147:14:147:15 | access to local variable b2 | $@ | extensions.cs:145:18:145:29 | call to method Source<B> : B | call to method Source<B> : B |
|
||||
| extensions.cs:150:14:150:15 | access to local variable b3 | extensions.cs:145:18:145:29 | call to method Source<B> : B | extensions.cs:150:14:150:15 | access to local variable b3 | $@ | extensions.cs:145:18:145:29 | call to method Source<B> : B | call to method Source<B> : B |
|
||||
| extensions.cs:150:14:150:15 | access to local variable b3 | extensions.cs:145:18:145:29 | call to method Source<B> : B | extensions.cs:150:14:150:15 | access to local variable b3 | $@ | extensions.cs:145:18:145:29 | call to method Source<B> : B | call to method Source<B> : B |
|
||||
| extensions.cs:186:14:186:15 | access to local variable b3 | extensions.cs:67:20:67:33 | call to method Source<B> : B | extensions.cs:186:14:186:15 | access to local variable b3 | $@ | extensions.cs:67:20:67:33 | call to method Source<B> : B | call to method Source<B> : B |
|
||||
| extensions.cs:186:14:186:15 | access to local variable b3 | extensions.cs:67:20:67:33 | call to method Source<B> : B | extensions.cs:186:14:186:15 | access to local variable b3 | $@ | extensions.cs:67:20:67:33 | call to method Source<B> : B | call to method Source<B> : B |
|
||||
| extensions.cs:189:14:189:15 | access to local variable b4 | extensions.cs:67:20:67:33 | call to method Source<B> : B | extensions.cs:189:14:189:15 | access to local variable b4 | $@ | extensions.cs:67:20:67:33 | call to method Source<B> : B | call to method Source<B> : B |
|
||||
| extensions.cs:189:14:189:15 | access to local variable b4 | extensions.cs:67:20:67:33 | call to method Source<B> : B | extensions.cs:189:14:189:15 | access to local variable b4 | $@ | extensions.cs:67:20:67:33 | call to method Source<B> : B | call to method Source<B> : B |
|
||||
| extensions.cs:195:14:195:15 | access to local variable b1 | extensions.cs:36:24:36:38 | call to method Source<B> : B | extensions.cs:195:14:195:15 | access to local variable b1 | $@ | extensions.cs:36:24:36:38 | call to method Source<B> : B | call to method Source<B> : B |
|
||||
| extensions.cs:195:14:195:15 | access to local variable b1 | extensions.cs:36:24:36:38 | call to method Source<B> : B | extensions.cs:195:14:195:15 | access to local variable b1 | $@ | extensions.cs:36:24:36:38 | call to method Source<B> : B | call to method Source<B> : B |
|
||||
| extensions.cs:198:14:198:15 | access to local variable b2 | extensions.cs:36:24:36:38 | call to method Source<B> : B | extensions.cs:198:14:198:15 | access to local variable b2 | $@ | extensions.cs:36:24:36:38 | call to method Source<B> : B | call to method Source<B> : B |
|
||||
| extensions.cs:198:14:198:15 | access to local variable b2 | extensions.cs:36:24:36:38 | call to method Source<B> : B | extensions.cs:198:14:198:15 | access to local variable b2 | $@ | extensions.cs:36:24:36:38 | call to method Source<B> : B | call to method Source<B> : B |
|
||||
| extensions.cs:233:14:233:15 | access to local variable b2 | extensions.cs:231:18:231:30 | call to method Source<B> : B | extensions.cs:233:14:233:15 | access to local variable b2 | $@ | extensions.cs:231:18:231:30 | call to method Source<B> : B | call to method Source<B> : B |
|
||||
| extensions.cs:233:14:233:15 | access to local variable b2 | extensions.cs:231:18:231:30 | call to method Source<B> : B | extensions.cs:233:14:233:15 | access to local variable b2 | $@ | extensions.cs:231:18:231:30 | call to method Source<B> : B | call to method Source<B> : B |
|
||||
| extensions.cs:236:14:236:15 | access to local variable b3 | extensions.cs:231:18:231:30 | call to method Source<B> : B | extensions.cs:236:14:236:15 | access to local variable b3 | $@ | extensions.cs:231:18:231:30 | call to method Source<B> : B | call to method Source<B> : B |
|
||||
| extensions.cs:236:14:236:15 | access to local variable b3 | extensions.cs:231:18:231:30 | call to method Source<B> : B | extensions.cs:236:14:236:15 | access to local variable b3 | $@ | extensions.cs:231:18:231:30 | call to method Source<B> : B | call to method Source<B> : B |
|
||||
@@ -0,0 +1,12 @@
|
||||
/**
|
||||
* @kind path-problem
|
||||
*/
|
||||
|
||||
import csharp
|
||||
import utils.test.InlineFlowTest
|
||||
import DefaultFlowTest
|
||||
import PathGraph
|
||||
|
||||
from PathNode source, PathNode sink
|
||||
where flowPath(source, sink)
|
||||
select sink, source, sink, "$@", source, source.toString()
|
||||
243
csharp/ql/test/library-tests/dataflow/extensions/extensions.cs
Normal file
243
csharp/ql/test/library-tests/dataflow/extensions/extensions.cs
Normal file
@@ -0,0 +1,243 @@
|
||||
using System;
|
||||
|
||||
public static class MyExtensions
|
||||
{
|
||||
extension(object obj)
|
||||
{
|
||||
public B Prop1
|
||||
{
|
||||
get
|
||||
{
|
||||
return A.Source<B>(1);
|
||||
}
|
||||
set
|
||||
{
|
||||
A.Sink(value); // $ hasValueFlow=2 hasValueFlow=102
|
||||
}
|
||||
}
|
||||
|
||||
public B Prop2
|
||||
{
|
||||
get
|
||||
{
|
||||
A.Sink(obj); // $ hasValueFlow=6 hasValueFlow=106
|
||||
return new B();
|
||||
}
|
||||
set
|
||||
{
|
||||
A.Sink(obj); // $ hasValueFlow=7 hasValueFlow=107
|
||||
}
|
||||
}
|
||||
|
||||
public static B StaticProp1
|
||||
{
|
||||
get
|
||||
{
|
||||
return A.Source<B>(10);
|
||||
}
|
||||
set
|
||||
{
|
||||
A.Sink(value); // $ hasValueFlow=11 hasValueFlow=111
|
||||
}
|
||||
}
|
||||
|
||||
public B M1()
|
||||
{
|
||||
return A.Source<B>(3);
|
||||
}
|
||||
|
||||
public void M2()
|
||||
{
|
||||
A.Sink(obj); // $ hasValueFlow=4 hasValueFlow=104
|
||||
}
|
||||
|
||||
public static B M3(B b)
|
||||
{
|
||||
return b;
|
||||
}
|
||||
|
||||
public static object operator +(object a, object b)
|
||||
{
|
||||
A.Sink(a); // $ hasValueFlow=8 hasValueFlow=108
|
||||
return new object();
|
||||
}
|
||||
|
||||
public static object operator -(object a, object b)
|
||||
{
|
||||
return A.Source<B>(9);
|
||||
}
|
||||
|
||||
public T GenericMethod<T>(T t)
|
||||
{
|
||||
return t;
|
||||
}
|
||||
}
|
||||
|
||||
extension(B b)
|
||||
{
|
||||
public B B1()
|
||||
{
|
||||
return b;
|
||||
}
|
||||
|
||||
public void B2()
|
||||
{
|
||||
A.Sink(b); // $ hasValueFlow=12 hasValueFlow=112
|
||||
}
|
||||
}
|
||||
|
||||
extension<T>(T t) where T : class
|
||||
{
|
||||
public void GenericM1()
|
||||
{
|
||||
A.Sink(t); // $ hasValueFlow=13 hasValueFlow=113
|
||||
}
|
||||
|
||||
public S GenericM2<S>(S other)
|
||||
{
|
||||
return other;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public class A
|
||||
{
|
||||
public void Test1()
|
||||
{
|
||||
var obj = new object();
|
||||
var b1 = obj.Prop1;
|
||||
Sink(b1); // $ hasValueFlow=1
|
||||
|
||||
var b2 = MyExtensions.get_Prop1(obj);
|
||||
Sink(b2); // $ hasValueFlow=1
|
||||
}
|
||||
|
||||
public void Test2()
|
||||
{
|
||||
var obj = new object();
|
||||
obj.Prop1 = Source<B>(2);
|
||||
|
||||
var b = Source<B>(102);
|
||||
MyExtensions.set_Prop1(obj, b);
|
||||
}
|
||||
|
||||
public void Test3()
|
||||
{
|
||||
var obj = new object();
|
||||
var b1 = obj.M1();
|
||||
Sink(b1); // $ hasValueFlow=3
|
||||
|
||||
var b2 = MyExtensions.M1(obj);
|
||||
Sink(b2); // $ hasValueFlow=3
|
||||
}
|
||||
|
||||
public void Test4()
|
||||
{
|
||||
var b1 = Source<B>(4);
|
||||
b1.M2();
|
||||
|
||||
var b2 = Source<B>(104);
|
||||
MyExtensions.M2(b2);
|
||||
}
|
||||
|
||||
public void Test5()
|
||||
{
|
||||
var b1 = Source<B>(5);
|
||||
var b2 = b1.B1();
|
||||
Sink(b2); // $ hasValueFlow=5
|
||||
|
||||
var b3 = MyExtensions.B1(b1);
|
||||
Sink(b3); // $ hasValueFlow=5
|
||||
}
|
||||
|
||||
public void Test6()
|
||||
{
|
||||
var b1 = Source<B>(6);
|
||||
var b2 = b1.Prop2;
|
||||
|
||||
var b3 = Source<B>(106);
|
||||
var b4 = MyExtensions.get_Prop2(b3);
|
||||
}
|
||||
|
||||
public void Test7()
|
||||
{
|
||||
var b1 = Source<B>(7);
|
||||
b1.Prop2 = new B();
|
||||
|
||||
var b2 = Source<B>(107);
|
||||
MyExtensions.set_Prop2(b2, new B());
|
||||
}
|
||||
|
||||
public void Test8()
|
||||
{
|
||||
var b1 = Source<B>(8);
|
||||
var b2 = Source<B>(1);
|
||||
var b3 = b1 + b2;
|
||||
|
||||
var b4 = Source<B>(108);
|
||||
var b5 = MyExtensions.op_Addition(b4, b2);
|
||||
}
|
||||
|
||||
public void Test9()
|
||||
{
|
||||
var b1 = Source<B>(0);
|
||||
var b2 = Source<B>(1);
|
||||
var b3 = b1 - b2;
|
||||
Sink(b3); // $ hasValueFlow=9
|
||||
|
||||
var b4 = MyExtensions.op_Subtraction(b1, b2);
|
||||
Sink(b4); // $ hasValueFlow=9
|
||||
}
|
||||
|
||||
public void Test10()
|
||||
{
|
||||
var b1 = object.StaticProp1;
|
||||
Sink(b1); // $ hasValueFlow=10
|
||||
|
||||
var b2 = MyExtensions.get_StaticProp1();
|
||||
Sink(b2); // $ hasValueFlow=10
|
||||
}
|
||||
|
||||
public void Test11()
|
||||
{
|
||||
var b1 = Source<B>(11);
|
||||
object.StaticProp1 = b1;
|
||||
|
||||
var b2 = Source<B>(111);
|
||||
MyExtensions.set_StaticProp1(b2);
|
||||
}
|
||||
|
||||
public void Test12()
|
||||
{
|
||||
var b1 = Source<B>(12);
|
||||
b1.B2();
|
||||
|
||||
var b2 = Source<B>(112);
|
||||
MyExtensions.B2(b2);
|
||||
}
|
||||
|
||||
public void Test13()
|
||||
{
|
||||
var b1 = Source<B>(13);
|
||||
b1.GenericM1();
|
||||
|
||||
var b2 = Source<B>(113);
|
||||
MyExtensions.GenericM1(b2);
|
||||
}
|
||||
|
||||
public void Test14()
|
||||
{
|
||||
var obj = new object();
|
||||
var b1 = Source<B>(14);
|
||||
var b2 = obj.GenericM2(b1);
|
||||
Sink(b2); // $ hasValueFlow=14
|
||||
|
||||
var b3 = MyExtensions.GenericM2(obj, b1);
|
||||
Sink(b3); // $ hasValueFlow=14
|
||||
}
|
||||
|
||||
public static T Source<T>(object source) => throw null;
|
||||
public static void Sink(object o) { }
|
||||
}
|
||||
|
||||
public class B { }
|
||||
Reference in New Issue
Block a user