Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description
I enabled a few new clang-tidy checks to harden the code bases. First, misc-definition-in-headers complains about headers issues that are likely to cause ODR problems when included from multiple translation units. The main one is forgetting to ensure that functions are all inline in headers. The 2nd check tries to use modernized for each loops. Luckily, we were already using these in pybind11 except for one test case which has been fixed in this PR. Finally, I changed a default setting for inefficient-string-concatenation to strict mode. We are already following strict mode, so this mainly will just prevent new issues from cropping up.
Suggested changelog entry: