В вашем коде есть несколько синтаксических ошибок.Вот MCVE с исправленными ими:
module M;
//| |
//V V
`define ZERO_INIT2D(VECT,SD_WIDTH) for(integer i=0;i<(SD_WIDTH);i=i+1) VECT[i]=0;
reg [31:0] rrr [7:0];
always @*
begin
// |
// V
`ZERO_INIT2D(rrr,8)
end
endmodule
https://www.edaplayground.com/x/3Db3
Когда задаете вопрос, лучше подготовить MCVE самостоятельно, чеможидая тех, кто помогает вам сделать это.Мало того, что это спасает других от какой-то работы, это поможет более четко объяснить вашу проблему, и вы можете сами найти ответ во время его подготовки.