do not emit parameter name for functions taking no arguments

otherwise GCC rightfully reports error:

    error: parameter 1 (‘x1’) has incomplete type
     ... foo(void x1)

`void` is indeed incomplete type and this is not a parameter list anyways (its a way to explicitly say that function takes no arguments)