From 6193ecd77907dafa83235dd1386354613ecafcdf Mon Sep 17 00:00:00 2001 From: Victor Stinner Date: Fri, 25 Nov 2016 11:59:52 +0100 Subject: Fix a ResourceWarning in generate_opcode_h.py Use a context manager to close the Python file. Replace also open() with tokenize.open() to handle coding cookie if any in Lib/opcode.py. --- Tools/scripts/generate_opcode_h.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/Tools/scripts/generate_opcode_h.py b/Tools/scripts/generate_opcode_h.py index 948b56f..bbc3aab 100644 --- a/Tools/scripts/generate_opcode_h.py +++ b/Tools/scripts/generate_opcode_h.py @@ -32,10 +32,14 @@ enum cmp_op {PyCmp_LT=Py_LT, PyCmp_LE=Py_LE, PyCmp_EQ=Py_EQ, PyCmp_NE=Py_NE, #endif /* !Py_OPCODE_H */ """ +import tokenize + def main(opcode_py, outfile='Include/opcode.h'): opcode = {} - exec(open(opcode_py).read(), opcode) + with tokenize.open(opcode_py) as fp: + code = fp.read() + exec(code, opcode) opmap = opcode['opmap'] with open(outfile, 'w') as fobj: fobj.write(header) -- cgit v0.12