code: def CheckDefaultLambdaCaptures(filename, clean_lines, linenum, error):
    
    line = clean_lines.elided[linenum]
  
    # A lambda introducer specifies a default capture if it starts with "[="
    # or if it starts with "[&" _not_ followed by an identifier.
    match = Match(r'^(.*)\[\s*(?:=|&[^\w])', line)
    if match:
      # Found a potential error, check what comes after the lambda-introducer.
      # If it's not open parenthesis (for lambda-declarator) or open brace
      # (for compound-statement), it's not a lambda.
      line, _, pos = CloseExpression(clean_lines, linenum, len(match.group(1)))
      if pos >= 0 and Match(r'^\s*[{(]', line[pos:]):
        error(filename, linenum, 'build/c++11',
              4,  # 4 = high confidence
              'Default lambda captures are an unapproved C++ feature.')
docs: Check that default lambda captures are not used.
  
    Args:
      filename: The name of the current file.
      clean_lines: A CleansedLines instance containing the file.
      linenum: The number of the line to check.
      error: The function to call with any errors found.