At the C level there's no check; if you ask for GL_VIEWPORT and pass a pointer with 0-3 values left, you get buffer overflow nastiness. At the Java levels we have 3 options:
a) Do no check at all, let the programmer figure out what happened when the VM crashes.
b) Add a big switch statement with all possible parameters (that's a LOT of params, many new ones are added with each GL version/extension), find the necessary space required, then check the buffer's remaining().
c) Do what we do now, require a 16-value buffer which covers all possible parameters.
I think c) offers the best balance between performance, safety and maintainability. You can also make LWJGL work like a), by passing the org.lwjgl.util.NoChecks=true VM parameter. Finally, we provide scalar versions of glGet functions which cover the majority of usages (e.g. int glGetInteger(int pname) in GL11).
Good point about the Javadoc though, I'll see if I can add comments to the appropriate methods.