There was a detailed discussion of this topic, including a comparison with several languages/compilers and the ISO standard in: https://github.com/JuliaLang/julia/issues/22983
TLDR: Julia’s behavior seems to be consistent with the ISO standard, and with the viewpoint that 0.0 + 0.0im represents a limit of x + iy as x,y \to 0^+ but in which the order of the limits is undefined (hence giving NaN from division in which the resultt cannot be determined). It’s also consistent with gfortran, but other languages make different choices.