The attached patch (against devscripts master) fixes this bug:

* the ". "$(...)" carve-out now also matches a quoted command
  substitution whose contents contain nested quotes, e.g.
  . "$(realpath "${config_file}")";
* the check no longer fires when the token in the script-name
  slot is a shell operator — that is a case pattern list such as
      "" | . | .. | */)
  not a sourced file (a separate report covers that shape).

It adds test/bashisms/870309.sh (test_870309), which keeps a real
case firing:

    . ./config.sh "$@"

Verified: the new test and the full test/test_checkbashisms suite
pass with the patch; the added cases fail without it. Genuine
"sourced script with arguments" uses still fire, including
. "$(cmd)" realarg.

Disclosure, encouraged by Debian GR 2026-002: this patch was
prepared with AI assistance; it was verified by me against the
reproducers and the devscripts test suite.

Attachment: fp2-sourced-script-870309.patch
Description: Binary data

Reply via email to