summaryrefslogtreecommitdiff
path: root/chromium/v8/PRESUBMIT.py
diff options
context:
space:
mode:
authorAllan Sandfeld Jensen <allan.jensen@qt.io>2020-07-16 11:45:35 +0200
committerAllan Sandfeld Jensen <allan.jensen@qt.io>2020-07-17 08:59:23 +0000
commit552906b0f222c5d5dd11b9fd73829d510980461a (patch)
tree3a11e6ed0538a81dd83b20cf3a4783e297f26d91 /chromium/v8/PRESUBMIT.py
parent1b05827804eaf047779b597718c03e7d38344261 (diff)
downloadqtwebengine-chromium-552906b0f222c5d5dd11b9fd73829d510980461a.tar.gz
BASELINE: Update Chromium to 83.0.4103.122
Change-Id: Ie3a82f5bb0076eec2a7c6a6162326b4301ee291e Reviewed-by: Michael BrĂ¼ning <michael.bruning@qt.io>
Diffstat (limited to 'chromium/v8/PRESUBMIT.py')
-rw-r--r--chromium/v8/PRESUBMIT.py65
1 files changed, 0 insertions, 65 deletions
diff --git a/chromium/v8/PRESUBMIT.py b/chromium/v8/PRESUBMIT.py
index 67986d83031..9b03f631c59 100644
--- a/chromium/v8/PRESUBMIT.py
+++ b/chromium/v8/PRESUBMIT.py
@@ -285,8 +285,6 @@ def _CheckHeadersHaveIncludeGuards(input_api, output_api):
return []
-# TODO(mstarzinger): Similar checking should be made available as part of
-# tools/presubmit.py (note that tools/check-inline-includes.sh exists).
def _CheckNoInlineHeaderIncludesInNormalHeaders(input_api, output_api):
"""Attempts to prevent inclusion of inline headers into normal header
files. This tries to establish a layering where inline headers can be
@@ -393,7 +391,6 @@ def _CommonChecks(input_api, output_api):
_CheckHeadersHaveIncludeGuards,
_CheckNoInlineHeaderIncludesInNormalHeaders,
_CheckJSONFiles,
- _CheckMacroUndefs,
_CheckNoexceptAnnotations,
_RunTestsWithVPythonSpec,
]
@@ -456,68 +453,6 @@ def _CheckJSONFiles(input_api, output_api):
return [output_api.PresubmitError(r) for r in results]
-def _CheckMacroUndefs(input_api, output_api):
- """
- Checks that each #define in a .cc file is eventually followed by an #undef.
-
- TODO(clemensb): This check should eventually be enabled for all cc files via
- tools/presubmit.py (https://crbug.com/v8/6811).
- """
- def FilterFile(affected_file):
- # Skip header files, as they often define type lists which are used in
- # other files.
- white_list = (r'.+\.cc',r'.+\.cpp',r'.+\.c')
- return input_api.FilterSourceFile(affected_file, white_list=white_list)
-
- def Touches(line):
- return line.startswith('+') or line.startswith('-')
-
- def InvolvesMacros(text):
- return define_pattern.match(text) or undef_pattern.match(text)
-
- def TouchesMacros(f):
- return any(Touches(line) and InvolvesMacros(line[1:])
- for line in f.GenerateScmDiff().splitlines())
-
- def CollectUndefsWithNoDef(defined_macros, errors, f, line, line_nr):
- define_match = define_pattern.match(line)
- if define_match:
- name = define_match.group(1)
- defined_macros[name] = line_nr
- undef_match = undef_pattern.match(line)
- if undef_match and not "// NOLINT" in line:
- name = undef_match.group(1)
- if name in defined_macros:
- del defined_macros[name]
- else:
- errors.append('{}:{}: Macro named \'{}\' was not defined before.'
- .format(f.LocalPath(), line_nr, name))
-
- define_pattern = input_api.re.compile(r'#define (\w+)')
- undef_pattern = input_api.re.compile(r'#undef (\w+)')
- errors = []
- for f in input_api.AffectedFiles(
- file_filter=FilterFile, include_deletes=False):
- if not TouchesMacros(f):
- continue
-
- defined_macros = dict()
- with open(f.LocalPath()) as fh:
- for line_nr, line in enumerate(fh, start=1):
- CollectUndefsWithNoDef(defined_macros, errors, f, line, line_nr)
-
- for name, line_nr in sorted(defined_macros.items(), key=lambda e: e[1]):
- errors.append('{}:{}: Macro missing #undef: {}'
- .format(f.LocalPath(), line_nr, name))
-
- if errors:
- return [output_api.PresubmitPromptOrNotify(
- 'Detected mismatches in #define / #undef in the file(s) where you '
- 'modified preprocessor macros.',
- errors)]
- return []
-
-
def _CheckNoexceptAnnotations(input_api, output_api):
"""
Checks that all user-defined constructors and assignment operators are marked