In reply to kitanisi:
The LRM has no restrictions based on data type
Values of all data types on variables and nets can be passed through ports.\
Ports do have restrictions based on signal kind, like only nets can be used for inout ports, and only variables can be used for ref ports. An event can only be used as a variable data type.