]> granicus.if.org Git - llvm/commitdiff
[opt-viewer] Listify `dict_items` for Py3 indexing
authorBrian Gesiak <modocache@gmail.com>
Mon, 14 Aug 2017 04:16:43 +0000 (04:16 +0000)
committerBrian Gesiak <modocache@gmail.com>
Mon, 14 Aug 2017 04:16:43 +0000 (04:16 +0000)
Summary:
In Python 2, calling `dict.items()` returns an indexable `list`, whereas
on Python 3 it returns a set-like `dict_items` object, which cannot be
indexed. Explicitly onvert the `dict_items` object so that it can be
indexed when using Python 3.

In combination with D36622, D36623, and D36624, this change allows
`opt-viewer.py` to exit successfully when run with Python 3.4.

Test Plan:
Run `opt-viewer.py` using Python 3.4 and confirm it does not encounter a
runtime error when when indexing into `dict.items()`.

Reviewers: anemet

Reviewed By: anemet

Subscribers: llvm-commits

Differential Revision: https://reviews.llvm.org/D36630

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@310810 91177308-0d34-0410-b5e6-96231b3b80d8

tools/opt-viewer/optrecord.py

index e84c83e2ce9e53873762cdfbfb09bcb26bef9332..a16763821ed8abcf1cc9e2247fdd552539d115f6 100644 (file)
@@ -146,7 +146,7 @@ class Remark(yaml.YAMLObject):
             del mapping['DebugLoc']
 
         assert(len(mapping) == 1)
-        (key, value) = mapping.items()[0]
+        (key, value) = list(mapping.items())[0]
 
         if key == 'Caller' or key == 'Callee':
             value = cgi.escape(demangle(value))