| # Copyright 2025 Free Software Foundation, Inc. |
| # |
| # This program is free software; you can redistribute it and/or modify |
| # it under the terms of the GNU General Public License as published by |
| # the Free Software Foundation; either version 3 of the License, or |
| # (at your option) any later version. |
| # |
| # This program is distributed in the hope that it will be useful, |
| # but WITHOUT ANY WARRANTY; without even the implied warranty of |
| # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
| # GNU General Public License for more details. |
| # |
| # You should have received a copy of the GNU General Public License |
| # along with this program. If not, see <http://www.gnu.org/licenses/>. |
| |
| # Configuration file for the tclint and tclfmt tools from the tclint package |
| # ( https://github.com/nmoroze/tclint ). |
| # |
| # Eventually we'd like to move these settings to pyproject.toml, but currently |
| # that's not possible. See this tclint issue ( |
| # https://github.com/nmoroze/tclint/issues/120 ). |
| # |
| # Issues related to using the tclint tool in the gdb testsuite: |
| # - tclint does not support expect. |
| # https://github.com/nmoroze/tclint/issues/118 |
| # - tclint doesn't inspect code passed as arguments to gdb testsuite specific |
| # commands like with_test_prefix. |
| # https://github.com/nmoroze/tclint/issues/121 |
| # - tclint ignores splat ({*}$foo) when checking number of arguments |
| # https://github.com/nmoroze/tclint/issues/122 |
| |
| exclude = [ |
| # TODO: |
| "gdb/testsuite/boards", |
| "gdb/testsuite/config", |
| "gdb/testsuite/lib/aarch64.exp", |
| "gdb/testsuite/lib/aarch64-scalable.exp", |
| "gdb/testsuite/lib/ada.exp", |
| "gdb/testsuite/lib/cache.exp", |
| "gdb/testsuite/lib/check-test-names.exp", |
| "gdb/testsuite/lib/completion-support.exp", |
| "gdb/testsuite/lib/cp-support.exp", |
| "gdb/testsuite/lib/debuginfod-support.exp", |
| "gdb/testsuite/lib/d-support.exp", |
| "gdb/testsuite/lib/dtrace.exp", |
| "gdb/testsuite/lib/dwarf.exp", |
| "gdb/testsuite/lib/fortran.exp", |
| "gdb/testsuite/lib/future.exp", |
| "gdb/testsuite/lib/gdb.exp", |
| "gdb/testsuite/lib/gdb-guile.exp", |
| "gdb/testsuite/lib/gdbreplay-support.exp", |
| "gdb/testsuite/lib/gdbserver-support.exp", |
| "gdb/testsuite/lib/gdb-utils.exp", |
| "gdb/testsuite/lib/gen-perf-test.exp", |
| "gdb/testsuite/lib/go.exp", |
| "gdb/testsuite/lib/jit-elf-helpers.exp", |
| "gdb/testsuite/lib/mi-support.exp", |
| "gdb/testsuite/lib/objc.exp", |
| "gdb/testsuite/lib/pascal.exp", |
| "gdb/testsuite/lib/perftest.exp", |
| "gdb/testsuite/lib/prelink-support.exp", |
| "gdb/testsuite/lib/prompt.exp", |
| "gdb/testsuite/lib/rust-support.exp", |
| "gdb/testsuite/lib/selftest-support.exp", |
| "gdb/testsuite/lib/trace-support.exp", |
| # IGNORE (document reason in trailing comment): |
| "gdb/testsuite/gdb.stabs", # To be removed. |
| "gdb/testsuite/lib/ton.tcl", # Imported. |
| ] |
| |
| # A maximum line length of 80 is current policy, but it hasn't been too |
| # strictly enforced. It's the most frequent and least harmful violation. |
| # Ignore this for now. |
| ignore = ["line-length"] |
| |
| extensions = ["exp", "tcl"] |
| |
| [style] |
| # Used by tclfmt. Doesn't support the mixed TAB and spaces style we use. See |
| # this tclint issue ( https://github.com/nmoroze/tclint/issues/109 ). |
| indent = 4 |
| |
| # Used by both tclint and tclfmt. Current policy is 80. |
| line-length = 80 |
| |
| # Used by tclfmt. |
| max-blank-lines = 1 |
| |
| # Used by tclfmt. False conflicts with emacs tcl mode. |
| indent-namespace-eval = true |
| |
| # Used by tclfmt. |
| spaces-in-braces = false |