In versions of the desktop OpenGL spec prior to glspec45.core.20141030.pdf, section 10.3.6 (Primitive Restart) said:
"When one of the Draw* commands transfers..."
Starting with the 20141030 version, it says:
"When one of the DrawElements* commands transfers...."
This was a fix for Khronos bug #12893, and it was intended to be a retroactive change.
tests/general/primitive-restart.c checks that glDrawArrays respects primitive restart. This should be changed to check that glDrawArrays igores primitive restart.
tests/spec/gl-3.1/primitive-restart-xfb.c also needs some sort of updates. At the very least the test should document which behavior it expects. The only comment in the whole test is, "Test if primitive restart works with glDrawArraysIndirect."
tests/spec/arb_es3_compatibility/es3-drawarrays-primrestart-fixedindex.c needs the same verification.
As of 70e7af15b75eb911d2c03c133418a39de0fad0d0 all Piglit primitive restart tests for non indexed draw calls should expect the GL to ignore the primitive restart index.