hdl.ast: make Signal(name=) a keyword-only argument.
Almost no code would specify Signal(_, name) as a positional argument on purpose, but forgetting parens and accidentally placing signedness into the name position is so common that we had a test for it.
This commit is contained in:
parent
2da0133d52
commit
649444449d
|
@ -729,7 +729,7 @@ class Signal(Value, DUID):
|
||||||
attrs : dict
|
attrs : dict
|
||||||
"""
|
"""
|
||||||
|
|
||||||
def __init__(self, shape=None, name=None, *, reset=0, reset_less=False, min=None, max=None,
|
def __init__(self, shape=None, *, name=None, reset=0, reset_less=False, min=None, max=None,
|
||||||
attrs=None, decoder=None, src_loc_at=0):
|
attrs=None, decoder=None, src_loc_at=0):
|
||||||
super().__init__(src_loc_at=src_loc_at)
|
super().__init__(src_loc_at=src_loc_at)
|
||||||
|
|
||||||
|
|
|
@ -582,12 +582,6 @@ class SignalTestCase(FHDLTestCase):
|
||||||
s2 = Signal(name="sig")
|
s2 = Signal(name="sig")
|
||||||
self.assertEqual(s2.name, "sig")
|
self.assertEqual(s2.name, "sig")
|
||||||
|
|
||||||
def test_name_bad(self):
|
|
||||||
with self.assertRaises(TypeError,
|
|
||||||
msg="Name must be a string, not 'True'"):
|
|
||||||
# A common typo: forgetting to put parens around width and signedness
|
|
||||||
Signal(1, True)
|
|
||||||
|
|
||||||
def test_reset(self):
|
def test_reset(self):
|
||||||
s1 = Signal(4, reset=0b111, reset_less=True)
|
s1 = Signal(4, reset=0b111, reset_less=True)
|
||||||
self.assertEqual(s1.reset, 0b111)
|
self.assertEqual(s1.reset, 0b111)
|
||||||
|
|
Loading…
Reference in a new issue