Note that below, the indented descriptions of what the issue is about are just intended as a guide to allow readers of this message to decide which Austin Group bug issues are worth looking at. They're just my paraphrase of what it is all about, and aren't guaranteed to be even very close to correct - if it matters to you, visit the URL that precedes the description in question and examine that, not just my words.
Also note that I am omitting lots of changes that no-one here is likely to really are about (spelling variations within a page being fixed, missing newlines in ... and more of that kind) plus some others that are very unlikely to matter to anyone here. https://austingroupbugs.net/view.php?id=1324#c6058 Changes to sem_open() sem_close() - not really my thing, so see the URL if you care about these things. I have no idea how these changes impact NetBSD (if at all). https://austingroupbugs.net/view.php?id=1617#c6098 The tsort change mentioned in an earlier message, I think I forgot to give the URL for the change in that one. https://austingroupbugs.net/view.php?id=1618#c6063 pax -s option, flags after /re/subst/ change (mentioned on this list some time ago). For NetBSD we will need to alter the 'S' flag to do nothing (if I recall properly) rather than being a synonym for 's'. https://austingroupbugs.net/view.php?id=1619#c6076 That's really about mktime (but mostly ignore that part, a later bug report is likely to almost entirely replace the mktime page - if accepted (in any case something will certainly happen - the description of mktime is hopeless). But thrown in as a by product is that Olson style TZ identifiers are now in the standard (which affects neither us, nor just about anyone else, at all, as we've accepted them since before NetBSD). The text changes for that should be at that URL I think. https://austingroupbugs.net/view.php?id=561#c6085 This one just cleans up text about nul-terminted strings, and affects nothing for anyone who already knows what that is, and could interpret the various ways the standard used to refer to them. https://austingroupbugs.net/view.php?id=243#c6110 This adds \0 delimited I/O for path names to find (-print0) xargs (-0) and the sh read builtin (-d '') all of which we support already (the last one only in -10 and beyond). They were all separate bug reports initially, but all got rolled into the one for find. This also adds xargs -r (which we already support, as a no-op, as it is our default behaviour) but continues to require (as it did before, and we ignored) that if -r is not given, the xargs command always be executed at least once, even if stdin is (effectively) /dev/null. ie: xargs echo foo </dev/null is supposed to write "foo" (Of course, redirecting from /dev/null isn't where this really matters, that's lunacy, but where "find ... | xargs" finds nothing to write into the pipe ... a bunch of examples have had -r added to make them more rational.) https://austingroupbugs.net/view.php?id=351#c943 That's a change to the spec for the shell, which adds a new kind of utility (a "declaration utility") for things like export readonly ... (which by itself is just new terminology and harmless) but then alters the way the args are parsed when the command name is such a thing, which completely breaks the way that things are supposed to work, where the args are all processed, expanded, ... and once all that's done the shell works out what the command is, and executes it. Nice and regular, and the same for all commands. Since this one is right in my area, I will say that I am planning on simply ignoring it, it adds nothing that can't already be done, and is absurd (IMO). https://austingroupbugs.net/view.php?id=1436#c5496 Adds the -j option to make. I doubt there's anything in this which is different than what we do, but someone familiar with make should take a look and make sure. https://austingroupbugs.net/view.php?id=1437#c5489 More make ... I think this just adds mention of .NOTPARALLEL and .WAIT in the Rationale section, but once again ... https://austingroupbugs.net/view.php?id=1471#c5440 More make ... adds :::= and +:= (or something like that). https://austingroupbugs.net/view.php?id=1479 More make - should be just a clarification ... https://austingroupbugs.net/view.php?id=1513 More make, things missed in earlier changes. https://austingroupbugs.net/view.php?id=1520#c5556 Even more make ... adds $^ https://austingroupbugs.net/view.php?id=1505#c5616 And yet more make (will this never end?) -- deals with expanding unset macros. https://austingroupbugs.net/view.php?id=1549#c5754 And we continue, more make, this one relating to escaped newlines in macro expansions. I really don't want to know! https://austingroupbugs.net/view.php?id=1455 readv() and writev() should be async-signal-safe but were not previously in the list (note: this one has no note added with the text that was changed, the two functions simply get added to the list of async-signal-safe functions). https://austingroupbugs.net/view.php?id=713#c5527 When remquo() returns a NaN what is put in "quo" is unspecified. https://austingroupbugs.net/view.php?id=1461 The text that specifies what happens (or can happen) when tgamma() is passed a negative arg has been changed to align better with C. https://austingroupbugs.net/view.php?id=1462 time_t must be at least 64 bits... https://austingroupbugs.net/view.php?id=1477 Changes to what is specified (and not) when locale categories set specify locales that use different character sets. https://austingroupbugs.net/view.php?id=1468 The definition of FS in awk has been fixed. https://austingroupbugs.net/view.php?id=1452 The prs utility (yes, sccs is still in posix) is no longer required to support KV (Keyword Validation) (because no-one did, or rather, one implementation did, but always said "None"). https://austingroupbugs.net/view.php?id=1495 Changes the spec for when at(1) should exit(0) https://austingroupbugs.net/view.php?id=1497 Changes the spec for when dd(1) should exit(0) https://austingroupbugs.net/view.php?id=1498 The exit status to use when diff(1) gets an error writing the diffs https://austingroupbugs.net/view.php?id=1499 If an error occurs, a standard utility must exit with a status that indicates an error occurred, not just non-zero (so test(1) cannot exit(1) on error, as that indicates success with a false value, similarly for grep, diff, ...) https://austingroupbugs.net/view.php?id=1500 expr https://austingroupbugs.net/view.php?id=1501 find https://austingroupbugs.net/view.php?id=1502 grep https://austingroupbugs.net/view.php?id=1504 kill https://austingroupbugs.net/view.php?id=1506 ln https://austingroupbugs.net/view.php?id=1507 mailx https://austingroupbugs.net/view.php?id=1508 stty https://austingroupbugs.net/view.php?id=1509 tty https://austingroupbugs.net/view.php?id=1512 what Changes to EXIT STATUS spec for: expr find grep kill ln mailx stty tty what resp. https://austingroupbugs.net/view.php?id=1440 system() and popen() need to run sh with "--" so that if the arg (command to run) starts with '-' it isn't interpreted as sh options. This was fixed in NetBSD back when the issue was under discussion (a year or so ago). https://austingroupbugs.net/view.php?id=1528 The same for mailx (no idea if we need a change here or not). https://austingroupbugs.net/view.php?id=1529 https://austingroupbugs.net/view.php?id=1530 https://austingroupbugs.net/view.php?id=1531 And again for ex nohup & time (ditto) https://austingroupbugs.net/view.php?id=1496#c5543 asprintf() and vasprintf() are added (NetBSD has had them a long time). https://austingroupbugs.net/view.php?id=1503 Add M_1_SQRTPI M_SQRT3 M_SQRT1_3 M_EGAMMA & M_PHI to <math.h> See the URL for more precise info, but as a rough idea for this message: M_1_SQRTPI 1/sqrt(pi) M_SQRT3 sqrt(3) M_SQRT1_3 1/sqrt(3) M_EGAMMA [lower-case gamma], Euler-Mascheroni constant M_PHI [lower-case phi], ( (1 + sqrt(5))/2 ), golden ratio constant NetBSD has none of those, someone who can calculate them properly (or look them up in a book, or something) should probably add them. https://austingroupbugs.net/view.php?id=1036#c5561 Clarifications to the definition of how shell "here documents" are specified and processed (at least, to where they should be put, and what triggers them) making a whole set of potential bizarre cases become unspecified (ie: don't do that). https://austingroupbugs.net/view.php?id=1522 Specify that the "sticky" bit (S_ISVTX) can be set with mkdir(2). https://austingroupbugs.net/view.php?id=1525 clarify that only the final close of an fd for a socket destroys the socket, not just any close(). https://austingroupbugs.net/view.php?id=1524#c5582 Specify more precisely what open() flags should be used for fopen() with various options (including 'e' (close on exec) and 'x' (O_EXCL).) Without an implementation defined extra fopen() flag char, no additional open() mode bits, not specified, can be randomly added. https://austingroupbugs.net/view.php?id=1526 similar for fdopen() https://austingroupbugs.net/view.php?id=1302 Lots of changes (mostly relatively minor I think) to align POSIX Issue 8 with C17. https://austingroupbugs.net/view.php?id=1532 On the output format of stty -g https://austingroupbugs.net/view.php?id=729#c5723 Addition of posix_devctl() - intended to be a portable ioctl() (and specified so it cam more or less just be a wrapper around ioctl()). I suspect we're going to need to add this one to libc https://austingroupbugs.net/view.php?id=1544 In uudecode, '-' can mean stdout (I believe we do all this already). https://austingroupbugs.net/view.php?id=1546#c5755 In BREs (Basic Regular Expressions) reserve \? \+ and \| (so implementations can make those mean something if they want, I assume). Enough for today. Note to self (this is meaningless to everyone else): 11404 kre ps: I am by no means sure that all of the make changes are included above.
