1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-22 10:42:39 +01:00

[lit] Fix bug when using Python3 where a failing test would not show

the script when running a ShTest with an external or internal shell.

This bug is caused by use of the ``map`` function in Python 3 which
returns an iterable (rather than a list in Python 2). After the iterable
is exhausted it won't return any more output and consequently when
``_runShTest()`` tries to access the ``script`` which has already been
iterated over it is empty. Converting to a list immediatley after
calling ``map()`` fixes this.

This fixes the ``tests/shtest-format.py`` test when running under
Python3 which was previously failing.

llvm-svn: 253556
This commit is contained in:
Dan Liew 2015-11-19 11:35:42 +00:00
parent ce69d484e2
commit db929f853a

View File

@ -469,7 +469,9 @@ def applySubstitutions(script, substitutions):
# Strip the trailing newline and any extra whitespace.
return ln.strip()
return map(processLine, script)
# Note Python 3 map() gives an iterator rather than a list so explicitly
# convert to list before returning.
return list(map(processLine, script))
def parseIntegratedTestScript(test, require_script=True):
"""parseIntegratedTestScript - Scan an LLVM/Clang style integrated test