Betrachten Sie einen Ausdruck wie:
assign x = func(A) ^ func(B);
Dabei ist der Ausgang der Funktion 32 Bit breit und x ist ein Draht mit 16 Bit. Ich möchte nur die niedrigsten 16 Bits des resultierenden xor zuweisen.
Ich weiß, dass der obige Code das bereits tut, aber er generiert auch eine Warnung. Der "offensichtliche" Ansatz funktioniert nicht:
assign x = (func(A) ^ func(B))[15:0]; // error: '[' is unexpected