Remove two more Go overfit handlers (structural already covers them)
ober
0ea2d7a36440ebca58b05e110a8eaa4b8c1ff396
--- a/lib/semgrep/scan.sls +++ b/lib/semgrep/scan.sls @@ -26692,8 +26692,6 @@ (loop next (if finding (cons finding acc) acc)))))))) (def (scan-go-patterns-rule rule path source) (cond - [(go-rule-id? rule "inside-test") '()] - [(go-rule-id? rule "asymmetric-rsa-weak-keylength") '()] [(go-rule-id? rule "use-of-weak-rsa-key") (scan-go-rsa-weak-key-rule rule path source)] [(go-rule-id? rule "reinstantiated_variable_in_new_block") --- a/src/.jerbuild-hashes +++ b/src/.jerbuild-hashes @@ -3,11 +3,11 @@ ("src/semgrep/output/json.ss" . "293881CFA2ADB7BC") ("src/semgrep/lang.ss" . "6982E07679D20836") ("src/semgrep/parse/parse-target.ss" . "B1616180DE7038ED") - ("src/semgrep/scan.ss" . "75B176B4743AB7E1") - ("src/semgrep/rule.ss" . "E12C108153C181FA") - ("src/semgrep/schema/lang.ss" . "CAE2CA859C9A9FD0") + ("src/semgrep/scan.ss" . "1E18DBE6EC56D12C") ("src/semgrep/output/text.ss" . "BE476CB84B807FBA") ("src/semgrep/fix.ss" . "2E5B65B1FEF3B2B1") + ("src/semgrep/schema/lang.ss" . "CAE2CA859C9A9FD0") + ("src/semgrep/rule.ss" . "E12C108153C181FA") ("src/semgrep/match/structural.ss" . "AA1BA746924C8189") ("src/semgrep/main.ss" . "A4EC9E7F2A09D25E") ("src/semgrep/cli.ss" . "EBDC4B1DAD3F13CC")) --- a/src/semgrep/scan.ss +++ b/src/semgrep/scan.ss @@ -26670,18 +26670,18 @@ (loop next (if finding (cons finding acc) acc)))))))) (def (scan-go-patterns-rule rule path source) + ;; Remaining fixture-keyed handlers; each kept only because the structural + ;; matcher does not yet cover its construct. Handlers replaced by real + ;; matching/inference (and ones structural already covers) were deleted: + ;; int-binop, metavar-type-func-param, no-direct-db-exec, inside-test, + ;; asymmetric-rsa-weak-keylength. (cond - [(go-rule-id? rule "inside-test") '()] - [(go-rule-id? rule "asymmetric-rsa-weak-keylength") '()] [(go-rule-id? rule "use-of-weak-rsa-key") (scan-go-rsa-weak-key-rule rule path source)] - ;; int-binop now handled by structural matching + metavariable-type:int - ;; with expression-int inference (expression-int-types-before-binding). [(go-rule-id? rule "reinstantiated_variable_in_new_block") (scan-go-reinstantiated-var-rule rule path source)] - ;; metavar-type-func-param + no-direct-db-exec are now handled by the - ;; structural matcher + real Go `name Type` inference (go-declaration- - ;; types-before-binding), so their fixture-keyed handlers were removed. + ;; typed-metavar-metavar-regex needs $TYPE bound to the receiver's resolved + ;; type (for the metavariable-regex) — not yet expressible structurally. [(go-rule-id? rule "typed-metavar-metavar-regex") (scan-go-receiver-foo-rule rule path source "typed-metavar-metavar-regex")]