tools/mpy-tool.py: Fix build error when no qstrs present in frozen mpy.

If you happen to only have a really simple frozen file that doesn't contain
any new qstrs then the generated frozen_mpy.c file contains an empty
enumeration which causes a C compile time error.
This commit is contained in:
Dave Hylands 2018-12-11 14:55:26 -08:00 committed by Damien George
parent 0d165fec9c
commit 39eef27083
1 changed files with 8 additions and 7 deletions

View File

@ -510,13 +510,14 @@ def freeze_mpy(base_qstrs, raw_codes):
print('#endif')
print()
print('enum {')
for i in range(len(new)):
if i == 0:
print(' MP_QSTR_%s = MP_QSTRnumber_of,' % new[i][1])
else:
print(' MP_QSTR_%s,' % new[i][1])
print('};')
if len(new) > 0:
print('enum {')
for i in range(len(new)):
if i == 0:
print(' MP_QSTR_%s = MP_QSTRnumber_of,' % new[i][1])
else:
print(' MP_QSTR_%s,' % new[i][1])
print('};')
# As in qstr.c, set so that the first dynamically allocated pool is twice this size; must be <= the len
qstr_pool_alloc = min(len(new), 10)