I changed the documentation and the input validation for the 4input form of the function to work (https://hg.savannah.gnu.org/hgweb/octave/rev/677764865056). The input validation needs to be improved because it is simple to confuse the _quiver_.m function right now. The following code uses a 3input form which is invalid, but the message is obtuse.

Priority 1: Update documentation to refer to the 4argument input form, and remove the 3input form. Update the text to more accurately describe what is going on.
Priority 2: Update input validation to handle 4argument input form. Test code which must pass.
Currently this fails with
Changed the Release to refer to the development branch. Although, as a documentation and bug fix it can be backported to stable.

Doug  as I mentioned, the Z argument should be required, refer to the Matlab documentation.

I have a version that now works, but!
Because it has to make up the x,y and z numbers,
the x and y are easy but what to do with the z?
at the moment my version draws the 3d arrows on a flat surface in the z. the arrows can point at any direction in 3d but are all starting on a flat surface in z. I don't know of any other way to make this work.
withe the 4th input being the z height then it would not be on a flat surface.
This could never have worked in the past ( and we had no complaints !)
Any Thoughts?

the doc says that
If X, Y, and Z are not given they are assumed to be '(1:M, 1:N,
1:P)' where '[M, N] = size (U)' and 'P = max (size (W))'.
and when I was single stepping through, I saw it create the x,y,z
with integer numbers. so I still thing it will work.
I will keep looking, but it is not very important for this release

I don't think the 3argument form is Matlab compatible, however, after looking at https://www.mathworks.com/help/matlab/ref/quiver3.html.
The Octave documentation seems like it is simply describing the interface incorrectly. There is no 3argument form, and the 6argument form requires x,y,z to have the same dimensions as u,v,w, so they cannot be the output of a 3nargout call to meshgrid.
There is a 4argument form that is not documented in Octave's doc string at all, where X and Y are implied and Z defines the surface on which the vector field is plotted.
So going back to the example in Octave's doc string, this should not be expected to work:
But this should work, and currently fails in Octave:

Confirmed with 5.0.90, and this does not seem to be a regression, just a bug that is never exercised. All of the help and demo examples for quiver3 use the 6argument form.
This error occurs with both the 3argument form, when passing in x,y,z as vectors, or as a meshgrid.

The help screen says that it can take 3 inputs
: quiver3 (u, v, w)
but it does not work.
If we take the example from the help documentation
it works. But now to test the three input mode try:
h = quiver3 (u, v, w);
this errors with a very unusual error message:
stopped in /usr/local/share/octave/5.0.1/m/plot/draw/quiver3.m at line 81
81: oldfig = [];
debug>
error: _quiver_: operator +: nonconformant arguments (op1 is 15625x1, op2 is 625x1)
error: called from
_quiver_ at line 197 column 10
quiver3 at line 87 column 10
testquiver3 at line 5 column 3
