Skip to content

Commit f298ef0

Browse files
committed
Accept invalidAbruptCompletionOrigin results
This is a new CFG consistency query.
1 parent 31dd8c1 commit f298ef0

18 files changed

Lines changed: 124 additions & 0 deletions

File tree

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
consistencyOverview
2+
| invalidAbruptCompletionOrigin | 4 |
3+
invalidAbruptCompletionOrigin
4+
| ImproperLdapAuth.go:25:2:25:16 | defer statement | ImproperLdapAuth.go:25:8:25:16 | defer-invoke call to Close |
5+
| ImproperLdapAuth.go:46:2:46:16 | defer statement | ImproperLdapAuth.go:46:8:46:16 | defer-invoke call to Close |
6+
| ImproperLdapAuth.go:71:2:71:16 | defer statement | ImproperLdapAuth.go:71:8:71:16 | defer-invoke call to Close |
7+
| ImproperLdapAuth.go:94:2:94:16 | defer statement | ImproperLdapAuth.go:94:8:94:16 | defer-invoke call to Close |
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
consistencyOverview
2+
| invalidAbruptCompletionOrigin | 2 |
3+
invalidAbruptCompletionOrigin
4+
| test.go:102:2:102:19 | defer statement | test.go:102:8:102:19 | defer-invoke call to Close |
5+
| test.go:443:2:443:19 | defer statement | test.go:443:8:443:19 | defer-invoke call to Close |
Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
consistencyOverview
2+
| invalidAbruptCompletionOrigin | 1 |
3+
invalidAbruptCompletionOrigin
4+
| WebCacheDeceptionBad.go:29:2:29:21 | defer statement | WebCacheDeceptionBad.go:29:8:29:21 | defer-invoke call to Unlock |

go/ql/test/experimental/InconsistentCode/CONSISTENCY/CfgConsistency.expected

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,15 @@
11
consistencyOverview
2+
| invalidAbruptCompletionOrigin | 7 |
23
| multipleSuccessors | 8 |
34
| selfLoop | 1 |
5+
invalidAbruptCompletionOrigin
6+
| DeferInLoop.go:8:3:8:20 | defer statement | DeferInLoop.go:8:9:8:20 | defer-invoke call to Close |
7+
| DeferInLoopGood.go:7:2:7:19 | defer statement | DeferInLoopGood.go:7:8:7:19 | defer-invoke call to Close |
8+
| test.go:6:3:6:14 | defer statement | test.go:6:9:6:14 | defer-invoke call to test |
9+
| test.go:11:4:11:15 | defer statement | test.go:11:10:11:15 | defer-invoke call to test |
10+
| test.go:16:3:16:14 | defer statement | test.go:16:9:16:14 | defer-invoke call to test |
11+
| test.go:20:3:20:14 | defer statement | test.go:20:9:20:14 | defer-invoke call to test |
12+
| test.go:24:3:24:14 | defer statement | test.go:24:9:24:14 | defer-invoke call to test |
413
multipleSuccessors
514
| DeferInLoop.go:6:2:13:2 | After range statement | successor | DeferInLoop.go:5:36:14:1 | After block statement |
615
| DeferInLoop.go:6:2:13:2 | After range statement | successor | DeferInLoop.go:8:9:8:20 | defer-invoke call to Close |

go/ql/test/library-tests/semmle/go/Function/TypeParamType.expected

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -55,6 +55,8 @@ numberOfTypeParameters
5555
| codeql-go-tests/function.StructForGenericMethod2.GenericMethod2 | 0 | from receiver | P3 | interface { } |
5656
| codeql-go-tests/function.StructWithDependentBound | 0 | | P5 | interface { } |
5757
| codeql-go-tests/function.StructWithDependentBound.GenericMethodWithDependentBound | 0 | | P7 | interface { ~[]P6 } |
58+
| codeql-go-tests/function.StructWithDependentBound.GenericMethodWithDependentBound | 0 | | P7 | interface { ~[]int } |
59+
| codeql-go-tests/function.StructWithDependentBound.GenericMethodWithDependentBound | 0 | | P7 | interface { ~[]string } |
5860
| codeql-go-tests/function.StructWithDependentBound.GenericMethodWithDependentBound | 0 | from receiver | P6 | interface { } |
5961
| codeql-go-tests/function.multipleAnonymousTypeParamsFunc | 0 | | _ | interface { } |
6062
| codeql-go-tests/function.multipleAnonymousTypeParamsFunc | 1 | | _ | interface { string } |

go/ql/test/library-tests/semmle/go/PrintAst/CONSISTENCY/CfgConsistency.expected

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,12 @@
11
consistencyOverview
22
| deadEnd | 1 |
3+
| invalidAbruptCompletionOrigin | 2 |
34
| multipleSuccessors | 6 |
45
deadEnd
56
| input.go:61:2:61:10 | select statement |
7+
invalidAbruptCompletionOrigin
8+
| input.go:67:3:67:35 | defer statement | input.go:67:9:67:35 | defer-invoke function call |
9+
| input.go:69:3:69:36 | defer statement | input.go:69:9:69:36 | defer-invoke function call |
610
multipleSuccessors
711
| input.go:50:2:59:2 | select statement | successor | input.go:51:2:52:31 | comm clause |
812
| input.go:50:2:59:2 | select statement | successor | input.go:53:2:55:16 | comm clause |

go/ql/test/library-tests/semmle/go/controlflow/ControlFlowGraph/CONSISTENCY/CfgConsistency.expected

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,34 @@
11
consistencyOverview
22
| deadEnd | 1 |
3+
| invalidAbruptCompletionOrigin | 23 |
34
| multipleSuccessors | 24 |
45
| selfLoop | 1 |
56
deadEnd
67
| stmts.go:61:2:61:10 | select statement |
8+
invalidAbruptCompletionOrigin
9+
| epilogues.go:60:2:60:33 | defer statement | epilogues.go:60:8:60:33 | defer-invoke call to log |
10+
| epilogues.go:68:2:68:24 | defer statement | epilogues.go:68:8:68:24 | defer-invoke call to logValue |
11+
| epilogues.go:69:2:69:25 | defer statement | epilogues.go:69:8:69:25 | defer-invoke call to log |
12+
| epilogues.go:78:2:80:15 | defer statement | epilogues.go:78:8:80:15 | defer-invoke function call |
13+
| epilogues.go:88:2:92:4 | defer statement | epilogues.go:88:8:92:4 | defer-invoke function call |
14+
| epilogues.go:103:2:103:19 | defer statement | epilogues.go:103:8:103:19 | defer-invoke call to epiRecover |
15+
| epilogues.go:116:2:116:19 | defer statement | epilogues.go:116:8:116:19 | defer-invoke call to epiRecover |
16+
| stmts7.go:14:2:14:21 | defer statement | stmts7.go:14:8:14:21 | defer-invoke call to recoverPanic |
17+
| stmts7.go:27:2:27:20 | defer statement | stmts7.go:27:8:27:20 | defer-invoke call to fn |
18+
| stmts7.go:28:2:28:23 | defer statement | stmts7.go:28:8:28:23 | defer-invoke call to fn |
19+
| stmts7.go:34:2:34:21 | defer statement | stmts7.go:34:8:34:21 | defer-invoke call to recoverPanic |
20+
| stmts7.go:39:2:39:21 | defer statement | stmts7.go:39:8:39:21 | defer-invoke call to recoverPanic |
21+
| stmts7.go:40:2:40:30 | defer statement | stmts7.go:40:8:40:30 | defer-invoke call to panic |
22+
| stmts7.go:44:2:44:36 | defer statement | stmts7.go:44:8:44:36 | defer-invoke call to panic |
23+
| stmts7.go:48:2:48:21 | defer statement | stmts7.go:48:8:48:21 | defer-invoke call to recoverPanic |
24+
| stmts7.go:49:2:49:17 | defer statement | stmts7.go:49:8:49:17 | defer-invoke call to Exit |
25+
| stmts7.go:53:2:53:21 | defer statement | stmts7.go:53:8:53:21 | defer-invoke call to recoverPanic |
26+
| stmts7.go:59:3:59:22 | defer statement | stmts7.go:59:9:59:22 | defer-invoke call to recoverPanic |
27+
| stmts7.go:66:3:66:22 | defer statement | stmts7.go:66:9:66:22 | defer-invoke call to recoverPanic |
28+
| stmts7.go:74:2:74:21 | defer statement | stmts7.go:74:8:74:21 | defer-invoke call to recoverPanic |
29+
| stmts7.go:83:2:83:21 | defer statement | stmts7.go:83:8:83:21 | defer-invoke call to recoverPanic |
30+
| stmts.go:67:3:67:35 | defer statement | stmts.go:67:9:67:35 | defer-invoke function call |
31+
| stmts.go:69:3:69:36 | defer statement | stmts.go:69:9:69:36 | defer-invoke function call |
732
multipleSuccessors
833
| stmts2.go:16:2:26:2 | select statement | successor | stmts2.go:17:2:17:15 | comm clause |
934
| stmts2.go:16:2:26:2 | select statement | successor | stmts2.go:18:2:19:10 | comm clause |
Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
consistencyOverview
2+
| invalidAbruptCompletionOrigin | 1 |
3+
invalidAbruptCompletionOrigin
4+
| main.go:41:2:43:4 | defer statement | main.go:41:8:43:4 | defer-invoke function call |
Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
consistencyOverview
2+
| invalidAbruptCompletionOrigin | 1 |
3+
invalidAbruptCompletionOrigin
4+
| main.go:35:2:37:4 | defer statement | main.go:35:8:37:4 | defer-invoke function call |
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
consistencyOverview
2+
| invalidAbruptCompletionOrigin | 9 |
3+
invalidAbruptCompletionOrigin
4+
| test_database_sql.go:15:2:15:19 | defer statement | test_database_sql.go:15:8:15:19 | defer-invoke call to Close |
5+
| test_database_sql.go:49:2:49:19 | defer statement | test_database_sql.go:49:8:49:19 | defer-invoke call to Close |
6+
| test_database_sql.go:87:2:87:19 | defer statement | test_database_sql.go:87:8:87:19 | defer-invoke call to Close |
7+
| test_database_sql.go:128:2:128:19 | defer statement | test_database_sql.go:128:8:128:19 | defer-invoke call to Close |
8+
| test_gorm.go:20:2:20:19 | defer statement | test_gorm.go:20:8:20:19 | defer-invoke call to Close |
9+
| test_jmoiron_sqlx.go:89:2:89:19 | defer statement | test_jmoiron_sqlx.go:89:8:89:19 | defer-invoke call to Close |
10+
| test_jmoiron_sqlx.go:151:2:151:19 | defer statement | test_jmoiron_sqlx.go:151:8:151:19 | defer-invoke call to Close |
11+
| test_jmoiron_sqlx.go:207:2:207:19 | defer statement | test_jmoiron_sqlx.go:207:8:207:19 | defer-invoke call to Close |
12+
| test_jmoiron_sqlx.go:263:2:263:19 | defer statement | test_jmoiron_sqlx.go:263:8:263:19 | defer-invoke call to Close |

0 commit comments

Comments
 (0)