diff options
author | Tom de Vries <tdevries@suse.de> | 2025-10-16 12:09:57 +0200 |
---|---|---|
committer | Tom de Vries <tdevries@suse.de> | 2025-10-16 12:09:57 +0200 |
commit | 284ca193a908f223a2d4e5e7e4bc27f1389a7996 (patch) | |
tree | 188301f66876fc7f903ec48484c5fbf9f4f30cf8 /gdb/python/py-frame.c | |
parent | fb81c8c1a6d51ff98d035c0c44efe606033b7c64 (diff) | |
download | binutils-284ca193a908f223a2d4e5e7e4bc27f1389a7996.zip binutils-284ca193a908f223a2d4e5e7e4bc27f1389a7996.tar.gz binutils-284ca193a908f223a2d4e5e7e4bc27f1389a7996.tar.bz2 |
[pre-commit] Add check-gnu-style
I got a review comment [1] because I forgot to do "space before paren".
I realized I forgot to run check_GNU_style.py, a script from the GCC repo,
which warns about things like this.
[ The python script has been around since 2017 (and an earlier version written
in shell script since 2010). ]
So for this change in gdb/gdb.c:
...
- return gdb_main (&args);
+ return gdb_main(&args);
...
we get:
...
$ ./contrib/check_GNU_style.py <(git diff)
=== ERROR type #1: there should be exactly one space between function name \
and parenthesis (1 error(s)) ===
gdb/gdb.c:38:17: return gdb_main(&args);
...
Add a pre-commit hook to do this automatically.
This copies two files from the GCC repo to root-level contrib, and adds a
wrapper script gdb/contrib/check-gnu-style-pre-commit.sh (checked with
shellcheck).
The wrapper script is setup to not fail on violations, so the messages are
informational at this point. I'm not sure all checks are 100% applicable to
our coding style.
The python script check_GNU_style.py has two dependencies: unidiff and
termcolor, which users need to install themselves.
The check is added at the pre-commit stage. I also considered post-commit,
and I'm still not sure what is the better choice.
As with all pre-commit checks, if the check is not to your liking, you can
use SKIP=check-gnu-style to skip it.
In summary, with the new pre-commit check we get:
...
$ git commit -a -m "style error"
black...............................................(no files to check)Skipped
flake8..............................................(no files to check)Skipped
isort...............................................(no files to check)Skipped
codespell...........................................(no files to check)Skipped
check-include-guards................................(no files to check)Skipped
check-gnu-style.........................................................Passed
- hook id: check-gnu-style
- duration: 0.04s
=== ERROR type #1: there should be exactly one space between function name \
and parenthesis (1 error(s)) ===
gdb/gdb.c:38:17: return gdb_main(&args);
tclint..............................................(no files to check)Skipped
black...............................................(no files to check)Skipped
flake8..............................................(no files to check)Skipped
codespell...........................................(no files to check)Skipped
check-include-guards................................(no files to check)Skipped
codespell-log...........................................................Passed
- hook id: codespell-log
- duration: 0.19s
tclint...............................................(no files to check)Skipped
[master $hex] style error
...
Approved-By: Simon Marchi <simon.marchi@efficios.com>
[1] https://sourceware.org/pipermail/gdb-patches/2025-September/220983.html
Diffstat (limited to 'gdb/python/py-frame.c')
0 files changed, 0 insertions, 0 deletions