They don't really, they tried to glue IEEE semantics onto their complex numbers, so they're largely broken in the modern era of auto-vectorizing compilers.
The gist is that you can get Nan+jNan for some operations where you wanted "infinity", so to do things their way, you have to insert a NaN check after multiplication for example. This isn't too bad by itself (it's just a bit mask), but it completely borks the vectorizer.