This is a product type introduced by defprod.
See Section 9.7.7 of the Verilog-2005 standard. These are used to represent special intra-assignment delays, where the assignment should not occur until some number of occurrences of an event. For instance:
a = repeat(3) @(posedge clk) <-- repeat expr ctrl b; <-- statement to repeat
BOZO Consider consolidating all of these different kinds of controls into a single, unified representation. E.g., you could at least extend eventcontrol with a maybe-expr that is its count, and get rid of repeateventcontrol.