diff --git a/internal/lsp/analysis/fillstruct/fillstruct.go b/internal/lsp/analysis/fillstruct/fillstruct.go
index 0727ad3..047458a 100644
--- a/internal/lsp/analysis/fillstruct/fillstruct.go
+++ b/internal/lsp/analysis/fillstruct/fillstruct.go
@@ -115,8 +115,8 @@
 		}
 		pass.Report(analysis.Diagnostic{
 			Message: fmt.Sprintf("Fill %s with default values", name),
-			Pos:     expr.Lbrace,
-			End:     expr.Rbrace,
+			Pos:     expr.Pos(),
+			End:     expr.End(),
 		})
 	})
 	return nil, nil
diff --git a/internal/lsp/code_action.go b/internal/lsp/code_action.go
index ade13f9..090567f 100644
--- a/internal/lsp/code_action.go
+++ b/internal/lsp/code_action.go
@@ -364,7 +364,8 @@
 		if d.URI != uri {
 			continue
 		}
-		if d.Range.Start.Line != rng.Start.Line {
+
+		if !protocol.Intersect(d.Range, rng) {
 			continue
 		}
 		action, err := diagnosticToCommandCodeAction(ctx, snapshot, d, nil, protocol.RefactorRewrite)
diff --git a/internal/lsp/protocol/span.go b/internal/lsp/protocol/span.go
index 8363d5c..51f6137 100644
--- a/internal/lsp/protocol/span.go
+++ b/internal/lsp/protocol/span.go
@@ -130,6 +130,14 @@
 	return 0
 }
 
+func Intersect(a, b Range) bool {
+	if a.Start.Line > b.End.Line || a.End.Line < b.Start.Line {
+		return false
+	}
+	return !((a.Start.Line == b.End.Line) && a.Start.Character > b.End.Character ||
+		(a.End.Line == b.Start.Line) && a.End.Character < b.Start.Character)
+}
+
 func (r Range) Format(f fmt.State, _ rune) {
 	fmt.Fprintf(f, "%v:%v-%v:%v", r.Start.Line, r.Start.Character, r.End.Line, r.End.Character)
 }
