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
996
Pull requests
465
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 17033d8
owen-mc
committed
17033d8
View commit details
Copy full SHA for 17033d8
Browse repository at this point
Fix `invalidAbruptCompletionOrigin` results
owen-mc
committed
f76a0e4
View commit details
Copy full SHA for f76a0e4
Browse repository at this point
Restore data flow through pointer assignment targets
Show description for 2c36cb9
owen-mc
committed
2c36cb9
View commit details
Copy full SHA for 2c36cb9
Browse repository at this point
Fix go/whitespace-contradicts-precendence for ParenExpr removal
owen-mc
committed
c236b40
View commit details
Copy full SHA for c236b40
Browse repository at this point
Fix bad join order
owen-mc
committed
3d9f2f3
View commit details
Copy full SHA for 3d9f2f3
Browse repository at this point
(Performance) don't materialize ancestor relation
owen-mc
committed
79724e7
View commit details
Copy full SHA for 79724e7
Browse repository at this point
(Performance) speed up GVN calculations by using contracted graph
owen-mc
committed
2dd2c2d
View commit details
Copy full SHA for 2dd2c2d
Browse repository at this point
Shared CFG: Add `includeCallableEntry` hook
owen-mc
committed
eaf952d
View commit details
Copy full SHA for eaf952d
Browse repository at this point
Performance: Use `includeCallableEntry` hook
owen-mc
committed
948c032
View commit details
Copy full SHA for 948c032
Browse repository at this point
Minor refactor (don't use AstNode.getNumChild)
owen-mc
committed
f49ab92
View commit details
Copy full SHA for f49ab92
Browse repository at this point
Refactor: avoid transitive closures
owen-mc
committed
c5bd6ab
View commit details
Copy full SHA for c5bd6ab
Browse repository at this point
Limit Go build-constraint regex matching to initial comments
Show description for c875d32
owen-mc
committed
c875d32
View commit details
Copy full SHA for c875d32
Browse repository at this point
Fix bad join order
owen-mc
committed
1728570
View commit details
Copy full SHA for 1728570
Browse repository at this point
Cache Go CFG root lookup
Show description for e6bbfb2
owen-mc
committed
e6bbfb2
View commit details
Copy full SHA for e6bbfb2
Browse repository at this point
Use shared CFG leaf representation more for Go
Show description for aea3d94
owen-mc
committed
aea3d94
View commit details
Copy full SHA for aea3d94
Browse repository at this point
Use shared default sequencing for ordinary Go operations
Show description for 00b3005
owen-mc
committed
00b3005
View commit details
Copy full SHA for 00b3005
Browse repository at this point
Use shared CFG leaf nodes for Go function literals
Show description for efc650b
owen-mc
committed
efc650b
View commit details
Copy full SHA for efc650b
Browse repository at this point
Add QLDoc to `skipCfg`
owen-mc
committed
54329d6
View commit details
Copy full SHA for 54329d6
Browse repository at this point
Cache Go IR write-target construction
Show description for 48479b1
owen-mc
committed
48479b1
View commit details
Copy full SHA for 48479b1
Browse repository at this point
Limit Go explicit CFG child ranking to its consumers
Show description for 02a6899
owen-mc
committed
02a6899
View commit details
Copy full SHA for 02a6899
Browse repository at this point
Remove unnecessary `Instruction.getRoot` overrides
owen-mc
committed
861446c
View commit details
Copy full SHA for 861446c
Browse repository at this point
Cache `getEnclosingCallable`
owen-mc
committed
69ed945
View commit details
Copy full SHA for 69ed945
Browse repository at this point
Single node for function, import, type decls
Show description for 85f0fb5
owen-mc
committed
85f0fb5
View commit details
Copy full SHA for 85f0fb5
Browse repository at this point
Add missing QLDoc in shared library
owen-mc
committed
6727aba
View commit details
Copy full SHA for 6727aba
Browse repository at this point
You can’t perform that action at this time.