diff options
| author | Teddy Wing | 2023-05-18 01:54:39 +0200 | 
|---|---|---|
| committer | Teddy Wing | 2023-05-18 01:54:39 +0200 | 
| commit | d75790724acc77890acdbe4e1894e287e4db9b46 (patch) | |
| tree | 561f54f98996ad408175b0b11ade00b5e293a85a | |
| parent | ace55a2a1696e3b60891b5d731705ead72446f7d (diff) | |
| download | gocapturedrefrace-d75790724acc77890acdbe4e1894e287e4db9b46.tar.bz2 | |
Create a new plan for checking shadowing
| -rw-r--r-- | gocapturedrefrace.go | 3 | 
1 files changed, 3 insertions, 0 deletions
| diff --git a/gocapturedrefrace.go b/gocapturedrefrace.go index 369b107..cdc6486 100644 --- a/gocapturedrefrace.go +++ b/gocapturedrefrace.go @@ -37,6 +37,7 @@ var Analyzer = &analysis.Analyzer{  }  func run(pass *analysis.Pass) (interface{}, error) { +	// TODO: Since we're calling ast.Inspect a bunch of times, maybe it's worthwhile using passes/inspect now.  	for _, file := range pass.Files {  		ast.Inspect(  			file, @@ -144,6 +145,8 @@ func isShadowingDeclaration(  	node ast.Node,  	funcScope *types.Scope,  ) bool { +	// TODO: Plan: Change this function to checkShadowing. Call ast.Inspect and build a list of local assignments in the closure. Then in checkClosure, ignore objects in the local assignments list. +  	assignStmt, ok := node.(*ast.AssignStmt)  	if !ok {  		return false | 
