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
|
||||
"""
|
||||
|
||||
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):
|
||||
super().__init__(src_loc_at=src_loc_at)
|
||||
|
||||
|
|
|
@ -582,12 +582,6 @@ class SignalTestCase(FHDLTestCase):
|
|||
s2 = Signal(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):
|
||||
s1 = Signal(4, reset=0b111, reset_less=True)
|
||||
self.assertEqual(s1.reset, 0b111)
|
||||
|
|
Loading…
Reference in a new issue