MLBEDSW-3685 Fix dangerous default value usage
Pylint W0102:
When a mutable value as list or dictionary is detected in a
default value for an argument.
Replace detected instances with None, and upon checking for None, sets
the default accordingly
Signed-off-by: Michael McGeagh <michael.mcgeagh@arm.com>
Change-Id: I4eb73d07d01d4cdefa586eb71b9c76746eee3b11
diff --git a/ethosu/vela/tflite_mapping.py b/ethosu/vela/tflite_mapping.py
index 20521e4..fe58261 100644
--- a/ethosu/vela/tflite_mapping.py
+++ b/ethosu/vela/tflite_mapping.py
@@ -333,28 +333,29 @@
class OptionsSerializer:
- def __init__(self, name, members=[]):
+ def __init__(self, name, members=None):
self.name = name
self.module = globals()[self.name]
self.cls = getattr(self.module, self.name)
self.builtin_opt_type = builtin_options_inv_map[self.cls]
self.members = []
- for mem in members:
- deserialize = identity
- serialize = identity_serialize
- is_vector = False
- if isinstance(mem, tuple):
- if len(mem) == 3:
- mem, deserialize, serialize = mem
- elif len(mem) == 2:
- mem, is_vector = mem
- deserialize = tuple
- serialize = write_int_vector
- else:
- assert 0
- underscore_mem = mem
- camelcase_mem = underscore_to_camel_case(mem)
- self.members.append((underscore_mem, camelcase_mem, deserialize, serialize, is_vector))
+ if members is not None:
+ for mem in members:
+ deserialize = identity
+ serialize = identity_serialize
+ is_vector = False
+ if isinstance(mem, tuple):
+ if len(mem) == 3:
+ mem, deserialize, serialize = mem
+ elif len(mem) == 2:
+ mem, is_vector = mem
+ deserialize = tuple
+ serialize = write_int_vector
+ else:
+ assert 0
+ underscore_mem = mem
+ camelcase_mem = underscore_to_camel_case(mem)
+ self.members.append((underscore_mem, camelcase_mem, deserialize, serialize, is_vector))
def deserialize(self, op_data):
builtin_options = op_data.BuiltinOptions()