INNER CODE UNIT · Python

_NeedToReturnReferenceDiagnoser

hongliuliao/ehttp · deps/googletest/googlemock/scripts/gmock_doctor.py:166

def _NeedToReturnReferenceDiagnoser(msg):
  """Diagnoses the NRR disease, given the error messages by the compiler."""

  gcc_regex = (r'In member function \'testing::internal::ReturnAction<R>.*\n'
               + _GCC_FILE_LINE_RE + r'instantiated from here\n'
               r'.*gmock-actions\.h.*error: creating array with negative size')
  clang_regex = (r'error:.*array.*negative.*\r?\n'
                 r'(.*\n)*?' +
                 _CLANG_NON_GMOCK_FILE_LINE_RE +
                 r'note: in instantiation of function template specialization '
                 r'\'testing::internal::ReturnAction<(?P<type>.*)>'
                 r'::operator Action<.*>\' requested here')
  clang11_re = (r'use_ReturnRef_instead_of_Return_to_return_a_reference.*'
                r'(.*\n)*?' + _CLANG_NON_GMOCK_FILE_LINE_RE)

  diagnosis = """
You are using a Return() action in a function that returns a reference to
%(type)s.  Please use ReturnRef() instead."""

View source record →

📰 Research Paper
Loading…
⏳ Fetching content…