C standard (e.g. C99) tells that malloc(0)
returns "a null pointer or a unique pointer that can be successfully passed to free()". Which of the two, is implementation-defined. (This has been asked on StackOverflow many times, e.g. 1, 2, 3, 4.)
My question is: how does GCC define it?