Python 3's filter and map functions returns an iterator which you can't call len() on. Since we'll want to use len() later, we put the filter results into a tuple.
Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Jordan Justen <[email protected]> Cc: Yonghong Zhu <[email protected]> Cc: Liming Gao <[email protected]> --- BaseTools/Scripts/ConvertMasmToNasm.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/BaseTools/Scripts/ConvertMasmToNasm.py b/BaseTools/Scripts/ConvertMasmToNasm.py index 8b08a88..6343fbd 100755 --- a/BaseTools/Scripts/ConvertMasmToNasm.py +++ b/BaseTools/Scripts/ConvertMasmToNasm.py @@ -473,7 +473,7 @@ class ConvertAsmFile(CommonUtils): self.EmitAsmWithComment(oldAsm, newAsm, endOfLine) uses = self.mo.group(3) if uses is not None: - uses = filter(None, uses.split()) + uses = tuple(filter(None, uses.split())) else: uses = tuple() self.uses = uses @@ -484,7 +484,7 @@ class ConvertAsmFile(CommonUtils): self.EmitAsmWithComment(oldAsm, newAsm, endOfLine) elif self.MatchAndSetMo(self.publicRe, oldAsm): publics = re.findall(self.varAndTypeSubRe, self.mo.group(1)) - publics = map(lambda p: p.split(':')[0].strip(), publics) + publics = tuple(map(lambda p: p.split(':')[0].strip(), publics)) for i in range(len(publics) - 1): name = publics[i] self.EmitNewContent('global ASM_PFX(%s)' % publics[i]) -- 2.8.1 _______________________________________________ edk2-devel mailing list [email protected] https://lists.01.org/mailman/listinfo/edk2-devel

