Hey all! Newcomer here. I'm absolutely loving the language. I have a question though. The following code synthesizes without problems: ```py from amaranth import * from amaranth_boards.arty_s7 import ArtyS7_50Platform class Top(Elaboratable): def elaborate(self, platform): m = Module() button_a = platform.request("button", 0).i button_b = platform.request("button", 1).i m.domains.cd = cd = ClockDomain() counter = Signal(4) m.d.cd += counter.eq(counter + 1) m.d.comb += cd.clk.eq(button_a & button_b) # Here for n in range(4): led = platform.request("led", n) m.d.comb += led.o.eq(counter[n]) return m ArtyS7_50Platform().build(Top(), do_program = True) ``` Yet if I replace line 16 with either `m.d.comb += cd.clk.eq(button_a)` or `m.d.comb += cd.clk.eq(button_b)` then Vivado refuses to go past placement. It seems so bizarre... does someone have a clue on why this might be happening? Board is an Arty S7, based on the Spartan 7.