diff options
author | dcheng <dcheng@chromium.org> | 2015-12-18 00:29:16 -0800 |
---|---|---|
committer | Commit bot <commit-bot@chromium.org> | 2015-12-18 08:29:58 +0000 |
commit | cf95c12c6009790972136d54eb5caaab073ef201 (patch) | |
tree | dc270350a636c8f5668b17e3153e96c7335ad72b /PRESUBMIT.py | |
parent | d61d5afc206c66a2a096a7d839177f34664860b7 (diff) | |
download | chromium_src-cf95c12c6009790972136d54eb5caaab073ef201.zip chromium_src-cf95c12c6009790972136d54eb5caaab073ef201.tar.gz chromium_src-cf95c12c6009790972136d54eb5caaab073ef201.tar.bz2 |
Add PRESUBMIT check to catch new usages of Pass().
std::move() should be used instead of Pass().
BUG=557422
Review URL: https://codereview.chromium.org/1538783002
Cr-Commit-Position: refs/heads/master@{#366051}
Diffstat (limited to 'PRESUBMIT.py')
-rw-r--r-- | PRESUBMIT.py | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/PRESUBMIT.py b/PRESUBMIT.py index 9a7f4c3..4755771 100644 --- a/PRESUBMIT.py +++ b/PRESUBMIT.py @@ -1651,7 +1651,7 @@ def _CommonChecks(input_api, output_api): results.extend(_CheckForInvalidOSMacros(input_api, output_api)) results.extend(_CheckForInvalidIfDefinedMacros(input_api, output_api)) # TODO(danakj): Remove this when base/move.h is removed. - results.extend(_CheckForUsingSideEffectsOfPass(input_api, output_api)) + results.extend(_CheckForUsingPass(input_api, output_api)) results.extend(_CheckAddedDepsHaveTargetApprovals(input_api, output_api)) results.extend( input_api.canned_checks.CheckChangeHasNoTabs( @@ -1815,17 +1815,17 @@ def _CheckForInvalidIfDefinedMacros(input_api, output_api): bad_macros)] -def _CheckForUsingSideEffectsOfPass(input_api, output_api): +def _CheckForUsingPass(input_api, output_api): """Check all affected files for using side effects of Pass.""" errors = [] for f in input_api.AffectedFiles(): if f.LocalPath().endswith(('.h', '.c', '.cc', '.m', '.mm')): for lnum, line in f.ChangedContents(): - # Disallow Foo(*my_scoped_thing.Pass()); See crbug.com/418297. - if input_api.re.search(r'\*[a-zA-Z0-9_]+\.Pass\(\)', line): + # Warn on any use of foo.Pass(). + if input_api.re.search(r'[a-zA-Z0-9_]+\.Pass\(\)', line): errors.append(output_api.PresubmitError( - ('%s:%d uses *foo.Pass() to delete the contents of scoped_ptr. ' + - 'See crbug.com/418297.') % (f.LocalPath(), lnum))) + ('%s:%d uses Pass(); please use std::move() instead. ' + + 'See crbug.com/557422.') % (f.LocalPath(), lnum))) return errors |