Skip to content
Navigation Menu
Sign in
Appearance settings
Platform
AI CODE CREATION
GitHub Copilot
Write better code with AI
GitHub Copilot app
Direct agents from issue to merge
MCP Registry
Integrate external tools
DEVELOPER WORKFLOWS
Actions
Automate any workflow
Codespaces
Instant dev environments
Issues
Plan and track work
Code Review
Manage code changes
Code Quality
Enforce quality at merge
APPLICATION SECURITY
GitHub Advanced Security
Find and fix vulnerabilities
Code security
Secure your code as you build
Secret protection
Stop leaks before they start
EXPLORE
Why GitHub
Documentation
Blog
Changelog
Marketplace
View all features
Solutions
BY COMPANY SIZE
Enterprises
Small and medium teams
Startups
Nonprofits
BY USE CASE
App Modernization
DevSecOps
DevOps
CI/CD
View all use cases
BY INDUSTRY
Healthcare
Financial services
Manufacturing
Government
View all industries
View all solutions
Resources
EXPLORE BY TOPIC
AI
Software Development
DevOps
Security
View all topics
EXPLORE BY TYPE
Customer stories
Events & webinars
Ebooks & reports
Business insights
GitHub Skills
SUPPORT & SERVICES
Documentation
Customer support
Community forum
Trust center
Partners
View all resources
Open Source
COMMUNITY
GitHub Sponsors
Fund open source developers
PROGRAMS
Security Lab
Maintainer Community
GitHub Stars
Archive Program
REPOSITORIES
Topics
Trending
Collections
Enterprise
ENTERPRISE SOLUTIONS
Enterprise platform
AI-powered developer platform
AVAILABLE ADD-ONS
GitHub Advanced Security
Enterprise-grade security features
Copilot for Business
Enterprise-grade AI features
Premium Support
Enterprise-grade 24/7 support
Pricing
Search
/
Sign in
Sign up
Appearance settings
You signed in with another tab or window.
Reload
to refresh your session.
You signed out in another tab or window.
Reload
to refresh your session.
You switched accounts on another tab or window.
Reload
to refresh your session.
Dismiss alert
{{ message }}
Uh oh!
There was an error while loading.
Please reload this page
.
github
/
codeql
Public
Notifications
You must be signed in to change notification settings
Fork
2.1k
Star
10.1k
Code
Issues
995
Pull requests
460
Discussions
Actions
Projects
Security and quality
0
Insights
Additional navigation options
Code
Issues
Pull requests
Discussions
Actions
Projects
Security and quality
Insights
Go: migrate control flow graph to shared CFG library #2
- #22182
#22182
Open
owen-mc
wants to merge 71 commits into
github:main
github/codeql:main
from
owen-mc:go/shared-cfg
owen-mc/codeql:go/shared-cfg
Copy head branch name to clipboard
Conversation
Commits
71
(71)
Checks
Findings
Files changed
Open
Go: migrate control flow graph to shared CFG library #2
#22182
owen-mc
wants to merge 71 commits into
github:main
github/codeql:main
from
owen-mc:go/shared-cfg
owen-mc/codeql:go/shared-cfg
Copy head branch name to clipboard
Commits
Commits on Sep 15, 2026
Align old CFG node strings with shared library
owen-mc
committed
a0dc0d2
View commit details
Copy full SHA for a0dc0d2
Browse repository at this point
Improve redundant recover test coverage
owen-mc
committed
2daa7ed
View commit details
Copy full SHA for 2daa7ed
Browse repository at this point
More tests for non-returning functions
owen-mc
committed
b82db67
View commit details
Copy full SHA for b82db67
Browse repository at this point
Test semantic invalid types in notype test
owen-mc
committed
62f2b42
View commit details
Copy full SHA for 62f2b42
Browse repository at this point
Make KeyValueExpr have the same type as its value
owen-mc
committed
9c749eb
View commit details
Copy full SHA for 9c749eb
Browse repository at this point
Change mayReturnNormally to mustNotReturnNormally
owen-mc
committed
2200bfa
View commit details
Copy full SHA for 2200bfa
Browse repository at this point
Distinguish panic and exit in logrus
owen-mc
committed
af19ef3
View commit details
Copy full SHA for af19ef3
Browse repository at this point
Model `logrus.Exit` like `os.Exit`
owen-mc
committed
304ec85
View commit details
Copy full SHA for 304ec85
Browse repository at this point
Update two queries so alert locations don't change
owen-mc
committed
a772b42
View commit details
Copy full SHA for a772b42
Browse repository at this point
Make synthetic RangeElementExpr during extraction
owen-mc
committed
171046a
View commit details
Copy full SHA for 171046a
Browse repository at this point
Switch to using shared CFG library
owen-mc
committed
1f64f10
View commit details
Copy full SHA for 1f64f10
Browse repository at this point
Add go/print-cfg
owen-mc
committed
30a0488
View commit details
Copy full SHA for 30a0488
Browse repository at this point
Add Go CFG consistency query
owen-mc
committed
e7000ab
View commit details
Copy full SHA for e7000ab
Browse repository at this point
fold implicit-one operand into incdec-rhs instruction
Show description for 0bd998f
owen-mc
committed
0bd998f
View commit details
Copy full SHA for 0bd998f
Browse repository at this point
fold compound-assign write into the compound-rhs instruction
Show description for dee1d8c
owen-mc
committed
dee1d8c
View commit details
Copy full SHA for dee1d8c
Browse repository at this point
drop implicit slice-bound nodes
Show description for 2c77287
owen-mc
committed
2c77287
View commit details
Copy full SHA for 2c77287
Browse repository at this point
Merge 'result-init' node into 'result-zero-init'
Show description for 16b2eaa
owen-mc
committed
16b2eaa
View commit details
Copy full SHA for 16b2eaa
Browse repository at this point
Fold implicit literal element index into the lit-init node
Show description for 16b9560
owen-mc
committed
16b9560
View commit details
Copy full SHA for 16b9560
Browse repository at this point
Fold uninitialised var-decl zero-init and write into one node
owen-mc
committed
5383fe8
View commit details
Copy full SHA for 5383fe8
Browse repository at this point
Fold tuple-destructuring extract and write into one node
owen-mc
committed
857f549
View commit details
Copy full SHA for 857f549
Browse repository at this point
Unify result-zero-init and zero-init node kinds
owen-mc
committed
00815e9
View commit details
Copy full SHA for 00815e9
Browse repository at this point
Simplify zero-init code after unifying result-zero-init
owen-mc
committed
cf6bf47
View commit details
Copy full SHA for cf6bf47
Browse repository at this point
Unify incdec-rhs into the compound-rhs node kind
owen-mc
committed
8f90962
View commit details
Copy full SHA for 8f90962
Browse repository at this point
No CFG nodes for subexprs of const exprs
Show description for 59c5534
owen-mc
committed
59c5534
View commit details
Copy full SHA for 59c5534
Browse repository at this point
Add change note
owen-mc
committed
9b523f2
View commit details
Copy full SHA for 9b523f2
Browse repository at this point
Replace IfStmt.getCond with IfStmt.getCondition
owen-mc
committed
6df8595
View commit details
Copy full SHA for 6df8595
Browse repository at this point
Address review comments
owen-mc
committed
864e10a
View commit details
Copy full SHA for 864e10a
Browse repository at this point
Add defer CFG edge-case tests
owen-mc
committed
b66ccd8
View commit details
Copy full SHA for b66ccd8
Browse repository at this point
Build defer edges from an early Go CFG
owen-mc
committed
b815f92
View commit details
Copy full SHA for b815f92
Browse repository at this point
Model Go function epilogues in the body CFG
owen-mc
committed
290fa45
View commit details
Copy full SHA for 290fa45
Browse repository at this point
Address more review comments
owen-mc
committed
85fb77e
View commit details
Copy full SHA for 85fb77e
Browse repository at this point
Change CompoundAssignStmt and IncDecStmt
owen-mc
committed
f344944
View commit details
Copy full SHA for f344944
Browse repository at this point
Move `getExpr` to `SwitchExpr`
owen-mc
committed
6e48157
View commit details
Copy full SHA for 6e48157
Browse repository at this point
Remove/reduce comments
owen-mc
committed
f37db60
View commit details
Copy full SHA for f37db60
Browse repository at this point
Rename file to ControlFlowGraphImpl.qll
owen-mc
committed
7e48a1e
View commit details
Copy full SHA for 7e48a1e
Browse repository at this point
Use american spelling
owen-mc
committed
cfe78ef
View commit details
Copy full SHA for cfe78ef
Browse repository at this point
Add missing qldoc
owen-mc
committed
c2d6703
View commit details
Copy full SHA for c2d6703
Browse repository at this point
Update change note
owen-mc
committed
c9276a0
View commit details
Copy full SHA for c9276a0
Browse repository at this point
Fix non-US spelling
owen-mc
committed
b0427e0
View commit details
Copy full SHA for b0427e0
Browse repository at this point
Change function epilogue CFG
Show description for 187e3fd
owen-mc
committed
187e3fd
View commit details
Copy full SHA for 187e3fd
Browse repository at this point
Remove CFG hook by making CFG for SelectStmt simpler
owen-mc
committed
65cffd7
View commit details
Copy full SHA for 65cffd7
Browse repository at this point
Remove CFG hook preservesDefaultControlFlow
owen-mc
committed
b93595e
View commit details
Copy full SHA for b93595e
Browse repository at this point
Allow empty switch to be a simple leaf node
owen-mc
committed
563fae2
View commit details
Copy full SHA for 563fae2
Browse repository at this point
Rename ForeachStmt to ForEachStmt
owen-mc
committed
d3298c7
View commit details
Copy full SHA for d3298c7
Browse repository at this point
Undo unnecessary code changes
owen-mc
committed
0593055
View commit details
Copy full SHA for 0593055
Browse repository at this point
Skip extracting ast.ParenExpr nodes
Show description for ff260f5
owen-mc
and
Copilot
committed
ff260f5
View commit details
Copy full SHA for ff260f5
Browse repository at this point
Deprecate ParenExpr and remove all references
Show description for 82c2fd1
owen-mc
and
Copilot
committed
82c2fd1
View commit details
Copy full SHA for 82c2fd1
Browse repository at this point
Accept `invalidAbruptCompletionOrigin` results
Show description for 682b4f0
owen-mc
committed
682b4f0
View commit details
Copy full SHA for 682b4f0
Browse repository at this point
Fix `invalidAbruptCompletionOrigin` results
owen-mc
committed
0d7c7a3
View commit details
Copy full SHA for 0d7c7a3
Browse repository at this point
Restore data flow through pointer assignment targets
Show description for 86e9d8c
owen-mc
committed
86e9d8c
View commit details
Copy full SHA for 86e9d8c
Browse repository at this point
Fix go/whitespace-contradicts-precendence for ParenExpr removal
owen-mc
committed
4365142
View commit details
Copy full SHA for 4365142
Browse repository at this point
Fix bad join order
owen-mc
committed
f0bdadd
View commit details
Copy full SHA for f0bdadd
Browse repository at this point
(Performance) don't materialize ancestor relation
owen-mc
committed
3012037
View commit details
Copy full SHA for 3012037
Browse repository at this point
(Performance) speed up GVN calculations by using contracted graph
owen-mc
committed
333aa17
View commit details
Copy full SHA for 333aa17
Browse repository at this point
Shared CFG: Add `includeCallableEntry` hook
owen-mc
committed
60e78a8
View commit details
Copy full SHA for 60e78a8
Browse repository at this point
Performance: Use `includeCallableEntry` hook
owen-mc
committed
1a9dfa6
View commit details
Copy full SHA for 1a9dfa6
Browse repository at this point
Minor refactor (don't use AstNode.getNumChild)
owen-mc
committed
f415d3f
View commit details
Copy full SHA for f415d3f
Browse repository at this point
Refactor: avoid transitive closures
owen-mc
committed
a2c6fec
View commit details
Copy full SHA for a2c6fec
Browse repository at this point
Limit Go build-constraint regex matching to initial comments
Show description for a0dc107
owen-mc
committed
a0dc107
View commit details
Copy full SHA for a0dc107
Browse repository at this point
Fix bad join order
owen-mc
committed
b17724d
View commit details
Copy full SHA for b17724d
Browse repository at this point
Cache Go CFG root lookup
Show description for 9467e9c
owen-mc
committed
9467e9c
View commit details
Copy full SHA for 9467e9c
Browse repository at this point
Use shared CFG leaf representation more for Go
Show description for 976d3d4
owen-mc
committed
976d3d4
View commit details
Copy full SHA for 976d3d4
Browse repository at this point
Use shared default sequencing for ordinary Go operations
Show description for a151828
owen-mc
committed
a151828
View commit details
Copy full SHA for a151828
Browse repository at this point
Use shared CFG leaf nodes for Go function literals
Show description for 893c10c
owen-mc
committed
893c10c
View commit details
Copy full SHA for 893c10c
Browse repository at this point
Add QLDoc to `skipCfg`
owen-mc
committed
cc359b6
View commit details
Copy full SHA for cc359b6
Browse repository at this point
Cache Go IR write-target construction
Show description for d130dc2
owen-mc
committed
d130dc2
View commit details
Copy full SHA for d130dc2
Browse repository at this point
Limit Go explicit CFG child ranking to its consumers
Show description for 1e5eadd
owen-mc
committed
1e5eadd
View commit details
Copy full SHA for 1e5eadd
Browse repository at this point
Remove unnecessary `Instruction.getRoot` overrides
owen-mc
committed
4a3f631
View commit details
Copy full SHA for 4a3f631
Browse repository at this point
Cache `getEnclosingCallable`
owen-mc
committed
e66ba00
View commit details
Copy full SHA for e66ba00
Browse repository at this point
Single node for function, import, type decls
Show description for eda8d5c
owen-mc
committed
eda8d5c
View commit details
Copy full SHA for eda8d5c
Browse repository at this point
Add missing QLDoc in shared library
owen-mc
committed
068f649
View commit details
Copy full SHA for 068f649
Browse repository at this point
You can’t perform that action at this time.