Issue while binding structs

In reply to rexjohn4u:

The problem is when you declare an output port using a data type, it is implicitly declared as a variable, not net type, and variables are only allowed a signal continuous assignment to them. There is already a continuous assignment from the output of MY_CHILD_MODULE, and the bind statement adds another from the output of my_interface.

To make this work, you need to change the output of MY_MODULE to a wire.

module MY_MODULE(
output wire my_struct SIGNAL_NAME
);
MY_CHILD_MODULE my_child_module_inst(.SIGNAL_NAME (SIGNAL_NAME)); 
endmodule : MY_MODULE