mattbeardsley created this revision.
mattbeardsley added a reviewer: kbobyrev.
Herald added a subscriber: xazax.hun.
mattbeardsley requested review of this revision.
Herald added a project: clang-tools-extra.
Herald added a subscriber: cfe-commits.
Previously, the code in add_new_check.py that looks for fixit keywords in check
source files when generating list.rst assumed that the script would only be
called from its own path. That means it doesn't find any source files for the
checks it's attempting to scan for, and it defaults to writing out nothing in
the "Offers fixes" column for all checks. Other parts of add_new_check.py work
from other paths, just not this part.
After this fix, add_new_check.py's "offers fixes" column generation for
list.rst will be consistent regardless of what path it's called from by using
the caller path that's deduced elsewhere already from sys.argv[0].
Repository:
rG LLVM Github Monorepo
https://reviews.llvm.org/D110600
Files:
clang-tools-extra/clang-tidy/add_new_check.py
Index: clang-tools-extra/clang-tidy/add_new_check.py
===================================================================
--- clang-tools-extra/clang-tidy/add_new_check.py
+++ clang-tools-extra/clang-tidy/add_new_check.py
@@ -323,13 +323,13 @@
def has_auto_fix(check_name):
dirname, _, check_name = check_name.partition("-")
- checkerCode = get_actual_filename(dirname,
- get_camel_name(check_name) + '.cpp')
+ checker_code = get_actual_filename(os.path.join(clang_tidy_path, dirname),
+ get_camel_name(check_name) + '.cpp')
- if not os.path.isfile(checkerCode):
+ if not os.path.isfile(checker_code):
return ""
- with io.open(checkerCode, encoding='utf8') as f:
+ with io.open(checker_code, encoding='utf8') as f:
code = f.read()
if 'FixItHint' in code or "ReplacementText" in code or "fixit" in code:
# Some simple heuristics to figure out if a checker has an autofix or
not.
Index: clang-tools-extra/clang-tidy/add_new_check.py
===================================================================
--- clang-tools-extra/clang-tidy/add_new_check.py
+++ clang-tools-extra/clang-tidy/add_new_check.py
@@ -323,13 +323,13 @@
def has_auto_fix(check_name):
dirname, _, check_name = check_name.partition("-")
- checkerCode = get_actual_filename(dirname,
- get_camel_name(check_name) + '.cpp')
+ checker_code = get_actual_filename(os.path.join(clang_tidy_path, dirname),
+ get_camel_name(check_name) + '.cpp')
- if not os.path.isfile(checkerCode):
+ if not os.path.isfile(checker_code):
return ""
- with io.open(checkerCode, encoding='utf8') as f:
+ with io.open(checker_code, encoding='utf8') as f:
code = f.read()
if 'FixItHint' in code or "ReplacementText" in code or "fixit" in code:
# Some simple heuristics to figure out if a checker has an autofix or not.
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits