summaryrefslogtreecommitdiff
path: root/contrib
diff options
context:
space:
mode:
authordnovillo <dnovillo@138bc75d-0d04-0410-961f-82ee72b054a4>2012-03-02 20:43:29 +0000
committerdnovillo <dnovillo@138bc75d-0d04-0410-961f-82ee72b054a4>2012-03-02 20:43:29 +0000
commit6d0c6e19686cee23bb37495b52eb6d675a253fe2 (patch)
treec65fd9c27f000abf9a2a529ade16da05eb84d385 /contrib
parentfa2f697a74101cc0c2402d2cab9bf57023f8c057 (diff)
downloadgcc-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-xcontrib/testsuite-management/validate_failures.py12
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()