check-webkit-style should recommend using nullptr instead of recommending using 0...
authorclopez@igalia.com <clopez@igalia.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Fri, 5 Jun 2015 11:06:49 +0000 (11:06 +0000)
committerclopez@igalia.com <clopez@igalia.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Fri, 5 Jun 2015 11:06:49 +0000 (11:06 +0000)
https://bugs.webkit.org/show_bug.cgi?id=145680

Reviewed by Brent Fulgham.

* Scripts/webkitpy/style/checkers/cpp.py:
(check_for_null):
* Scripts/webkitpy/style/checkers/cpp_unittest.py:
(WebKitStyleTest.test_null_false_zero):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@185245 268f45cc-cd09-0410-ab3c-d52691b4dbfc

Tools/ChangeLog
Tools/Scripts/webkitpy/style/checkers/cpp.py
Tools/Scripts/webkitpy/style/checkers/cpp_unittest.py

index 1a28235..a41adaa 100644 (file)
@@ -1,3 +1,15 @@
+2015-06-04  Carlos Alberto Lopez Perez  <clopez@igalia.com>
+
+        check-webkit-style should recommend using nullptr instead of recommending using 0 for the null pointer in C++ code.
+        https://bugs.webkit.org/show_bug.cgi?id=145680
+
+        Reviewed by Brent Fulgham.
+
+        * Scripts/webkitpy/style/checkers/cpp.py:
+        (check_for_null):
+        * Scripts/webkitpy/style/checkers/cpp_unittest.py:
+        (WebKitStyleTest.test_null_false_zero):
+
 2015-06-05  Stephanie Lewis  <slewis@apple.com>
 
         Make the web server more robust to timing issues..
index 0154225..a7569ec 100644 (file)
@@ -2722,7 +2722,7 @@ def check_for_null(clean_lines, line_number, file_state, error):
     if search(r'\bNULL\b', line):
         # FIXME: We should recommend using nullptr instead of NULL in C++ code per
         # <http://www.webkit.org/coding/coding-style.html#zero-null>.
-        error(line_number, 'readability/null', 5, 'Use 0 instead of NULL.')
+        error(line_number, 'readability/null', 5, 'Use nullptr instead of NULL.')
         return
 
     line = clean_lines.raw_lines[line_number]
@@ -2730,9 +2730,7 @@ def check_for_null(clean_lines, line_number, file_state, error):
     # matches, then do the check with strings collapsed to avoid giving errors for
     # NULLs occurring in strings.
     if search(r'\bNULL\b', line) and search(r'\bNULL\b', CleansedLines.collapse_strings(line)):
-        # FIXME: We should recommend using nullptr instead of 0 or null in C++ code per
-        # <http://www.webkit.org/coding/coding-style.html#zero-null>.
-        error(line_number, 'readability/null', 4, 'Use 0 or null instead of NULL (even in *comments*).')
+        error(line_number, 'readability/null', 4, 'Use nullptr instead of NULL (even in *comments*).')
 
 def get_line_width(line):
     """Determines the width of the line in column positions.
index 202acd3..7a168a2 100644 (file)
@@ -4599,23 +4599,23 @@ class WebKitStyleTest(CppStyleTestBase):
             '')
 
     def test_null_false_zero(self):
-        # 1. In C++, the null pointer value should be written as 0. In C,
+        # 1. In C++, the null pointer value should be written as nullptr. In C,
         #    it should be written as NULL. In Objective-C and Objective-C++,
         #    follow the guideline for C or C++, respectively, but use nil to
         #    represent a null Objective-C object.
         self.assert_lint(
             'functionCall(NULL)',
-            'Use 0 instead of NULL.'
+            'Use nullptr instead of NULL.'
             '  [readability/null] [5]',
             'foo.cpp')
         self.assert_lint(
             "// Don't use NULL in comments since it isn't in code.",
-            'Use 0 or null instead of NULL (even in *comments*).'
+            'Use nullptr instead of NULL (even in *comments*).'
             '  [readability/null] [4]',
             'foo.cpp')
         self.assert_lint(
             '"A string with NULL" // and a comment with NULL is tricky to flag correctly in cpp_style.',
-            'Use 0 or null instead of NULL (even in *comments*).'
+            'Use nullptr instead of NULL (even in *comments*).'
             '  [readability/null] [4]',
             'foo.cpp')
         self.assert_lint(
@@ -4726,11 +4726,11 @@ class WebKitStyleTest(CppStyleTestBase):
             '')
         self.assert_lint(
             'gtk_widget_style_get_property(style, NULL, NULL);',
-            'Use 0 instead of NULL.  [readability/null] [5]',
+            'Use nullptr instead of NULL.  [readability/null] [5]',
             'foo.cpp')
         self.assert_lint(
             'gtk_widget_style_get_valist(style, NULL, NULL);',
-            'Use 0 instead of NULL.  [readability/null] [5]',
+            'Use nullptr instead of NULL.  [readability/null] [5]',
             'foo.cpp')
 
         # 2. C++ and C bool values should be written as true and
@@ -4791,10 +4791,10 @@ class WebKitStyleTest(CppStyleTestBase):
             '')
         self.assert_lint(
             'if (LIKELY(foo == NULL))',
-            'Use 0 instead of NULL.  [readability/null] [5]')
+            'Use nullptr instead of NULL.  [readability/null] [5]')
         self.assert_lint(
             'if (UNLIKELY(foo == NULL))',
-            'Use 0 instead of NULL.  [readability/null] [5]')
+            'Use nullptr instead of NULL.  [readability/null] [5]')
 
     def test_directive_indentation(self):
         self.assert_lint(