Bug or undefined behaviour in passing zero-sized arrays as optional argument?

Please see the thread An unallocated variable passed as an argument is not PRESENT .