Commit 1bc86df7 authored by Martin Spiessl's avatar Martin Spiessl

Workaround benchexec has no support of /dev/stderr

When running MetaVal with benchexec, accessing streams via
/dev/std{out,err} seems to be broken, so this commit replaces access
to /dev/stderr by a perl equivalent that works without accessing
these special device files.
parent 3aea9492
......@@ -2,7 +2,7 @@
set -e
count=0
name=""
VERSION="0.1.6"
VERSION="0.1.7"
if [ "$1" == "--version" ]
then
......@@ -78,7 +78,7 @@ TRANSFORMERCMD="CPAchecker/scripts/cpa.sh -witness2reach -spec $witness $name -s
ARCHITECTUREWARNING="Cannot parse witness: The architecture assumed for the given verification-task differs from the architecture assumed by the witness."
# temporary workaround for the architecture (it is irrelevant for the transformation step, but CPAchecker still complains if it does not match).
if eval $TRANSFORMERCMD 2>&1 1>/dev/null | tee /dev/stderr | grep -q "$ARCHITECTUREWARNING" ; then
if eval $TRANSFORMERCMD 2>&1 1>/dev/null | perl -pe "print STDERR $_;" | grep -q "$ARCHITECTUREWARNING" ; then
echo "architecture mismatch detected. This is irrelevant for program transformation, retrying with 64 bit:"
$TRANSFORMERCMD -64 1>/dev/null
fi
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment