Re: [PATCH] build: Avoid length() GNU awk extension

Mike Frysinger <[email protected]>
Newsgroups gmane.comp.lib.newlib
Message-ID <Yihu+fA/bJ2TVNLO@vapier>
On 09 Mar 2022 03:54, Mike Frysinger wrote:
> On 09 Mar 2022 08:31, Sebastian Huber wrote:
> > Other awk implementations such as mawk do not support the length() function.
> 
> those awk implementations are not POSIX compliant.  length() is
> *not* a GNU extension.  you can see it clearly defined in POSIX:
> https://pubs.opengroup.org/onlinepubs/9699919799/utilities/awk.html#tag_20_06_13_13

sorry, i quoted length() as used to count bytes in a string, not elements
in an array.  POSIX doesn't support that.  i would still argue that, while
gawk supports it, it isn't a GNU extension.  bwk supported it back in 2002,
and gawk didn't implement it until ~2005.

> that said, mawk does support length(), and has since at least 2008 in
> the 1.3.3 release.  i stopped looking back further in the history.

the original mawk has been dead for over a decade.  i hope you're not trying
to use such vintage tools.  Thomas E. Dickey picked up maintenance and has
produced a series of fixes & improvements, and every distro i'm aware of is
using his fork.
https://invisible-island.net/mawk/

i mention this because he implemented length() to count array elements back
in 2012.  so if you still haven't updated to a version that supports that,
you should really get on top of that.

all that said, the patch you propose is a simple alternative that is POSIX
compliant, so i'm fine with it too.
-mike
signature.asc (application/pgp-signature, 833 B)
-----BEGIN PGP SIGNATURE-----

iQIzBAABCAAdFiEEuQK1JxMl+JKsJRrUQWM7n+g39YEFAmIobvkACgkQQWM7n+g3
9YFlEA//YmfhdBTrEDafMiFviEKUAXZ6Q9K5EWesSUSUGR3n4jLoKXTXcQbTcSZG
IJp7Pbq/JY7G/hG9PrUUHh7oue440zKK2M+P6Lbsq383z/p32kTht8COuM/OLFha
B0p3/ZRdaLJSBQPuxuSb19+pNju/J/GmnL/63hhKKzttocm5FBBsaEtX9PMxvF+8
7D7oCD0ooz9tuTaESdWbyD0oDg57ywpikKa+tGgN0P9GIolIZBfgjlINUDTze2hA
+FuLQjzbdzaXF9EAZYLhdvYvBcgjZ5S+xqOATGEki3Ot7MYMZ0CK4b9NgNazNrOw
oUzdp3/TPeBXGTmh0Bw0qmaVKKiUzX0olwcCiEerDsm+0dHCrVlV4HtmyxmdCsyY
pRRp/jWjM1bvD9R3J26Yj25RS3VqOYSY9BnnewfVURmjL3XCfIkLO8UQlB7h8uSh
rnPrDpLNgYRRHDPBr1V2APrlXqnqst9GzAOfAz49BrgkP6JOamvBAuuI/G6VpYdv
9OhiGQcdWIqhxWOw1yu54VEui5sPVV2z5vWNkM+cUZZGn+7sH5u9c75Mz8jz7AAT
xajex9uYT7LSy9WxGzU0f/UGUe7uQruvx6pOLSmnAkvm8zE1+i8mPnTMInvOQnv/
KIMyjDS/E6DLNa7qmYo8yEpy2mvukoVXtT09T7GHhEfa2mJN7J8=
=XF4L
-----END PGP SIGNATURE-----
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.