aboutsummaryrefslogtreecommitdiffstats
path: root/scripts/gmock_doctor.py
diff options
context:
space:
mode:
Diffstat (limited to 'scripts/gmock_doctor.py')
-rwxr-xr-xscripts/gmock_doctor.py18
1 files changed, 17 insertions, 1 deletions
diff --git a/scripts/gmock_doctor.py b/scripts/gmock_doctor.py
index 18c117fb..15e2433c 100755
--- a/scripts/gmock_doctor.py
+++ b/scripts/gmock_doctor.py
@@ -459,6 +459,20 @@ def _TypeInTemplatedBaseDiagnoser(msg):
r'error: \'(?P<type>.+)\' was not declared in this scope\n'
r'.*error: template argument 1 is invalid\n'
r'.*error: \'.+\' was not declared in this scope')
+ clang_regex_type_of_retval_or_sole_param = (
+ _CLANG_FILE_LINE_RE +
+ r'error: use of undeclared identifier \'(?P<type>.*)\'\n'
+ r'(.*\n)*?'
+ r'(?P=file):(?P=line):(?P=column): error: '
+ r'non-friend class member \'Result\' cannot have a qualified name'
+ )
+ clang_regex_type_of_a_param = (
+ _CLANG_FILE_LINE_RE +
+ r'error: C\+\+ requires a type specifier for all declarations\n'
+ r'(.*\n)*?'
+ r'(?P=file):(?P=line):(?P=column): error: '
+ r'C\+\+ requires a type specifier for all declarations'
+ )
diagnosis = """
In a mock class template, types or typedefs defined in the base class
@@ -473,7 +487,9 @@ need to make it visible. One way to do it is:
[(gcc_4_3_1_regex_type_in_retval, diagnosis % {'type': 'Foo'}),
(gcc_4_4_0_regex_type_in_retval, diagnosis % {'type': 'Foo'}),
(gcc_regex_type_of_sole_param, diagnosis),
- (gcc_regex_type_of_a_param, diagnosis)],
+ (gcc_regex_type_of_a_param, diagnosis),
+ (clang_regex_type_of_retval_or_sole_param, diagnosis),
+ (clang_regex_type_of_a_param, diagnosis % {'type': 'Foo'})],
msg)