f{() => println("2")}
calls f with a value that is a function.
Scala has a special case where expressions with a return type of Unit discard any value that might otherwise be returned.
In this case, the expression is() => println("2")
. The resultant Unit matches the signature of f, which explains why the compiler does not complain.