crux.py: Simplify regex for checking lack of overrides
See
for context.
import benchexec.tools.template
import benchexec.result as result
-import re
from benchexec.tools.sv_benchmarks_util import get_data_model_from_task, ILP32, LP64
@@ -39,22 +38,14 @@ class Tool(benchexec.tools.template.BaseTool2):
return s[s.find("version:") :]
def determine_result(self, run):
- override_pat = re.compile(
- 'No implementation or override found for pointer: "(.+?)"'
- )
-
for line in run.output:
# There are still a good number of functions for which Crux lacks
# overrides (see, for example, issue #187). Rather than reporting
# FALSIFIED for such programs (which will dock us points), we will
# instead conservatively return UNKNOWN, which doesn't lose (or
- # gain) points. To make it more obvious which programs are UNKNOWN
- # due to failing overrides versus incomplete goals, we include the
- # name of the failing override in parentheses after UNKNOWN, which
- # will show up in benchexec's reports.
- m = override_pat.search(line)
- if m:
- return result.RESULT_UNKNOWN + "(no override: " + m.group(1) + ")"
+ # gain) points.
+ if "No implementation or override found for pointer" in line:
+ return result.RESULT_UNKNOWN + "(no override)"
# Crucible does not currently support inline assembly
elif "unsupported LLVM value: ValAsm" in line:
return result.RESULT_UNKNOWN + "(inline assembly)"
