If one side has no rows, there are no pairs to output.
empty side means no pairs
Read empty product
2 left rows and 0 right rows produce 0 output rows.
output rows=0
CROSS JOIN examples are tiny finite-table transforms; SQL dialect completeness, type coercion, optimizer behavior, execution cost, indexing, and database-product claims are out of scope.