mirror of
https://github.com/NixOS/nix
synced 2025-06-24 22:11:15 +02:00
Merge 1460f9f52c
into f9afc1e68c
This commit is contained in:
commit
1c9b5ee989
4 changed files with 28 additions and 2 deletions
|
@ -1,3 +1,5 @@
|
||||||
# We use pointers to aggregates in a couple of places, intentionally.
|
# We use pointers to aggregates in a couple of places, intentionally.
|
||||||
# void * would look weird.
|
# void * would look weird.
|
||||||
Checks: '-bugprone-sizeof-expression'
|
Checks: '
|
||||||
|
-bugprone-sizeof-expression
|
||||||
|
'
|
|
@ -291,6 +291,16 @@ To refresh pre-commit hook's config file, do the following:
|
||||||
1. Exit the development shell and start it again by running `nix develop`.
|
1. Exit the development shell and start it again by running `nix develop`.
|
||||||
2. If you also use the pre-commit hook, also run `pre-commit-hooks-install` again.
|
2. If you also use the pre-commit hook, also run `pre-commit-hooks-install` again.
|
||||||
|
|
||||||
|
#### Hooks
|
||||||
|
|
||||||
|
##### clang-tidy
|
||||||
|
|
||||||
|
Portions of the codebase are checked with [clang-tidy](https://clang.llvm.org/extra/clang-tidy/).
|
||||||
|
|
||||||
|
> clang-tidy is a clang-based C++ “linter” tool.
|
||||||
|
|
||||||
|
The current build system, Meson, by default outputs a `compile_commands.json` file which is used by all Clang tooling (clang-tidy, clangd etc..).
|
||||||
|
|
||||||
### VSCode
|
### VSCode
|
||||||
|
|
||||||
Insert the following json into your `.vscode/settings.json` file to configure `nixfmt`.
|
Insert the following json into your `.vscode/settings.json` file to configure `nixfmt`.
|
||||||
|
|
|
@ -177,6 +177,20 @@
|
||||||
''^tests/functional/lang/eval-fail-set\.nix$''
|
''^tests/functional/lang/eval-fail-set\.nix$''
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
clang-tidy = {
|
||||||
|
enable = true;
|
||||||
|
# TODO: this requires meson to have been configured
|
||||||
|
# we could optionally wrap this in a script that runs meson first
|
||||||
|
# but for now let us keep it simple
|
||||||
|
#
|
||||||
|
# clang-tidy doesn't work well running it on multiple files
|
||||||
|
# TODO: change this to use run-clang-tidy.py
|
||||||
|
entry = "${pkgs.writeShellScript "clang-tidy-wrapper" ''
|
||||||
|
for file in "$@"; do
|
||||||
|
"${pkgs.clang-tools}/bin/clang-tidy" --fix -p ./build "$file"
|
||||||
|
done
|
||||||
|
''}";
|
||||||
|
};
|
||||||
clang-format = {
|
clang-format = {
|
||||||
enable = true;
|
enable = true;
|
||||||
# https://github.com/cachix/git-hooks.nix/pull/532
|
# https://github.com/cachix/git-hooks.nix/pull/532
|
||||||
|
|
|
@ -11,7 +11,7 @@ struct AbstractNixRepl
|
||||||
Bindings * autoArgs;
|
Bindings * autoArgs;
|
||||||
|
|
||||||
AbstractNixRepl(ref<EvalState> state)
|
AbstractNixRepl(ref<EvalState> state)
|
||||||
: state(state)
|
: state(state), autoArgs(nullptr)
|
||||||
{ }
|
{ }
|
||||||
|
|
||||||
virtual ~AbstractNixRepl()
|
virtual ~AbstractNixRepl()
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue