Found this in my tree. Our version of getsubopt matches NetBSD's up to some DIAGASSERTs and they do mention POSIX in their manual, so I suspect we inherited the specified behavior. I copied the phrasing used for other functions, but haven't checked in detail.
Index: stdlib/getsubopt.3 =================================================================== RCS file: /cvs/src/lib/libc/stdlib/getsubopt.3,v retrieving revision 1.14 diff -u -p -r1.14 getsubopt.3 --- stdlib/getsubopt.3 15 Nov 2014 14:41:02 -0000 1.14 +++ stdlib/getsubopt.3 20 May 2021 04:11:54 -0000 @@ -138,6 +138,11 @@ while ((ch = getopt(argc, argv, "ab:")) .Sh SEE ALSO .Xr getopt 3 , .Xr strsep 3 +.Sh STANDARDS +The +.Fn getsubopt +function conforms to +.St -p1003.1-2008 . .Sh HISTORY The .Fn getsubopt