parent
385b10d743
commit
d1ca9c46a5
|
@ -238,7 +238,7 @@ class Layout(ShapeCastable, metaclass=ABCMeta):
|
|||
"it casts to, {!r}, and not {!r}"
|
||||
.format(field.shape, cast_field_shape,
|
||||
key_value.shape()))
|
||||
else:
|
||||
elif not isinstance(key_value, Const):
|
||||
key_value = Const(key_value, cast_field_shape)
|
||||
int_value &= ~(((1 << cast_field_shape.width) - 1) << field.offset)
|
||||
int_value |= key_value.value << field.offset
|
||||
|
|
|
@ -424,6 +424,10 @@ class LayoutTestCase(FHDLTestCase):
|
|||
r"that it casts to, unsigned\(8\), and not unsigned\(1\)$"):
|
||||
sl.const({"f": "01"})
|
||||
|
||||
def test_const_field_const(self):
|
||||
sl = StructLayout({"f": unsigned(1)})
|
||||
self.assertRepr(sl.const({"f": Const(1)}), "(const 1'd1)")
|
||||
|
||||
def test_signal_reset(self):
|
||||
sl = StructLayout({
|
||||
"a": unsigned(1),
|
||||
|
|
Loading…
Reference in a new issue