An implicit conversion in an expression converts between two unrelated types. SystemVerilog allows this for all packed integral types but it often indicates a mistake in the code.
module fly;
struct packed { logic a; int b; } foo;
union packed { int a; int b; } bar;
initial foo = bar;
endmodule