diff options
author | dnovillo <dnovillo@138bc75d-0d04-0410-961f-82ee72b054a4> | 2012-03-02 20:43:29 +0000 |
---|---|---|
committer | dnovillo <dnovillo@138bc75d-0d04-0410-961f-82ee72b054a4> | 2012-03-02 20:43:29 +0000 |
commit | 6d0c6e19686cee23bb37495b52eb6d675a253fe2 (patch) | |
tree | c65fd9c27f000abf9a2a529ade16da05eb84d385 /contrib | |
parent | fa2f697a74101cc0c2402d2cab9bf57023f8c057 (diff) | |
download | gcc-6d0c6e19686cee23bb37495b52eb6d675a253fe2.tar.gz |
This fixes an edge case in parsing summary lines. Some times, the
description field is missing (e.g., 'FAIL: libstdc++/abi_check'), so
the space that the pattern was looking for does not exist.
I've changed it to match any whitespace, which includes '\n'. I also
made it print the line that it fails to parse, in case there are other
problems like this in the future.
2012-03-02 Diego Novillo <dnovillo@google.com>
* testsuite-management/validate_failures.py (class TestResult): Fix
match pattern for the summary line. If there is a parsing failure,
show the line we failed to parse.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@184822 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'contrib')
-rwxr-xr-x | contrib/testsuite-management/validate_failures.py | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/contrib/testsuite-management/validate_failures.py b/contrib/testsuite-management/validate_failures.py index 072de796aa0..7bc50896a66 100755 --- a/contrib/testsuite-management/validate_failures.py +++ b/contrib/testsuite-management/validate_failures.py @@ -97,10 +97,14 @@ class TestResult(object): self.attrs = '' if '|' in summary_line: (self.attrs, summary_line) = summary_line.split('|', 1) - (self.state, - self.name, - self.description) = re.match(r' *([A-Z]+): ([^ ]+) (.*)', - summary_line).groups() + try: + (self.state, + self.name, + self.description) = re.match(r' *([A-Z]+): (\S+)\s(.*)', + summary_line).groups() + except: + print 'Failed to parse summary line: "%s"' % summary_line + raise self.attrs = self.attrs.strip() self.state = self.state.strip() self.description = self.description.strip() |