Skip to content

Commit

Permalink
Revert "Fix the cpplint.py build/endif_comment check."
Browse files Browse the repository at this point in the history
  • Loading branch information
eglaysher authored Sep 30, 2016
1 parent aa8ccb4 commit ae11811
Show file tree
Hide file tree
Showing 2 changed files with 8 additions and 30 deletions.
9 changes: 4 additions & 5 deletions cpplint/cpplint.py
Original file line number Diff line number Diff line change
Expand Up @@ -2710,11 +2710,6 @@ def CheckForNonStandardConstructs(filename, clean_lines, linenum,
filename, line number, error level, and message
"""

line = clean_lines.lines_without_raw_strings[linenum]
if Match(r'\s*#\s*endif\s*([^/\s]|/[^/]|$)', line):
error(filename, linenum, 'build/endif_comment', 5,
'Uncommented text after #endif is non-standard. Use a comment.')

# Remove comments from the line, but leave in strings for now.
line = clean_lines.lines[linenum]

Expand Down Expand Up @@ -2745,6 +2740,10 @@ def CheckForNonStandardConstructs(filename, clean_lines, linenum,
'Storage-class specifier (static, extern, typedef, etc) should be '
'at the beginning of the declaration.')

if Match(r'\s*#\s*endif\s*[^/\s]+', line):
error(filename, linenum, 'build/endif_comment', 5,
'Uncommented text after #endif is non-standard. Use a comment.')

if Match(r'\s*class\s+(\w+\s*::\s*)+\w+\s*;', line):
error(filename, linenum, 'build/forward_decl', 5,
'Inner-style forward declarations are invalid. Remove this line.')
Expand Down
29 changes: 4 additions & 25 deletions cpplint/cpplint_unittest.py
Original file line number Diff line number Diff line change
Expand Up @@ -3754,7 +3754,7 @@ def testConditionals(self):
#else
baz;
qux;
#endif // foo""",
#endif""",
'')
self.TestMultiLineLint(
"""void F() {
Expand Down Expand Up @@ -3920,7 +3920,7 @@ def testDuplicateHeader(self):
'#include "path/unique.h"',
'#else',
'#include "path/unique.h"',
'#endif // MACRO',
'#endif',
''],
error_collector)
self.assertEquals(
Expand Down Expand Up @@ -3969,7 +3969,7 @@ def testBuildClass(self):
struct Foo : public Goo {
#else
struct Foo : public Hoo {
#endif // DERIVE_FROM_GOO
#endif
};""",
'')
self.TestMultiLineLint(
Expand All @@ -3979,7 +3979,7 @@ class Foo
: public Goo {
#else
: public Hoo {
#endif // DERIVE_FROM_GOO
#endif
};""",
'')
# Test incomplete class
Expand All @@ -3997,27 +3997,6 @@ def testBuildEndComment(self):
'Uncommented text after #endif is non-standard. Use a comment.'
' [build/endif_comment] [5]')

correct_lines = [
'#endif // text',
'#endif //'
]

for line in correct_lines:
self.TestLint(line, '')

incorrect_lines = [
'#endif',
'#endif Not a comment',
'#endif / One `/` is not enough to start a comment'
]

for line in incorrect_lines:
self.TestLint(
line,
'Uncommented text after #endif is non-standard. Use a comment.'
' [build/endif_comment] [5]')


def testBuildForwardDecl(self):
# The crosstool compiler we currently use will fail to compile the
# code in this test, so we might consider removing the lint check.
Expand Down

0 comments on commit ae11811

Please sign in to comment.