[PATCH] D126134: [clang-tidy] Improve add_new_check.py to recognize more checks
Richard via Phabricator via cfe-commits
cfe-commits at lists.llvm.org
Mon May 23 07:40:40 PDT 2022
LegalizeAdulthood marked 2 inline comments as done.
LegalizeAdulthood added inline comments.
================
Comment at: clang-tools-extra/clang-tidy/add_new_check.py:335-336
+ module_file = get_module_filename(module_path, module_name)
+ if not os.path.isfile(module_file):
+ return ''
+ with io.open(module_file, 'r') as f:
----------------
aaron.ballman wrote:
> Do we have to check this or can we rely on open failing because it's not a file? (It tripped my psychic TOCTOU sensor.)
If we don't check here, then it throws an exception when attempting to open the file.
================
Comment at: clang-tools-extra/clang-tidy/add_new_check.py:352
+ stmt = code[stmt_start_pos+1:stmt_end_pos]
+ matches = re.search('registerCheck<([^>:]*)>\(\s*"([^"]*)"\s*\)', stmt)
+ if matches and matches[2] == full_check_name:
----------------
aaron.ballman wrote:
> It's a bit early for me to fully grok regex, but: is this going to handle line continuations/newlines okay? I don't know if those show up in cases that matter right now, but I wanted to make sure it was being thought about.
`\s` matches any single whitespace character and `\s*` matches zero or more whitespace characters. I could sprinkle some more in between tokens, but this catches the existing code correctly.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D126134/new/
https://reviews.llvm.org/D126134
More information about the cfe-commits
mailing list