Z
Zeljko Vrba
-----BEGIN PGP SIGNED MESSAGE-----
Hash: RIPEMD160
Can somebody explain why the () function argument list with the semantics
"any number of arguments of any type" has been obsoleted in C99? Is there a
suitable replacements with the same semantics (something like: void f(...))?
This was a _very_ useful thing (although, rarely, but it was). It is used
in some parts of POSIX, e.g. the makecontext function (which is also now
obsoleted because of C99). With the suggestion "use threads" instead of
*context functions. Nonsense! For example, look at my coroutine library for
C: http://www.core-dump.com.hr/index.pl?node_id=422
It makes extensive use of these functions. And can somebody find an
_efficient_ way to translate this into threads?!
Bah, I could just rewrite it to use GNU Pth, it has functions similar
to *context, but with no () declarators.
I was _very_ dissapointed to see this feature removed in C99. In the next
std. they'll probably declare implicit void* conversion obsolete too.. Those
two things are among the 3 things[1] That made possible to use C as a
dynamic typeless language. Now one of them is gone.
[1] The 3rd being the struct address guarantee, i.e. the address of a struct
equals the address of its first member.
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.0.6 (GNU/Linux)
Comment: For info see http://www.gnupg.org
iD8DBQFCR6ihFtofFpCIfhMRA1mIAKCH46kLdH7T8/DDCEVfOCPv8GdBugCfVDiJ
3RRmUh70zn+h3Fqx5gQX5Mw=
=02ho
-----END PGP SIGNATURE-----
Hash: RIPEMD160
Can somebody explain why the () function argument list with the semantics
"any number of arguments of any type" has been obsoleted in C99? Is there a
suitable replacements with the same semantics (something like: void f(...))?
This was a _very_ useful thing (although, rarely, but it was). It is used
in some parts of POSIX, e.g. the makecontext function (which is also now
obsoleted because of C99). With the suggestion "use threads" instead of
*context functions. Nonsense! For example, look at my coroutine library for
C: http://www.core-dump.com.hr/index.pl?node_id=422
It makes extensive use of these functions. And can somebody find an
_efficient_ way to translate this into threads?!
Bah, I could just rewrite it to use GNU Pth, it has functions similar
to *context, but with no () declarators.
I was _very_ dissapointed to see this feature removed in C99. In the next
std. they'll probably declare implicit void* conversion obsolete too.. Those
two things are among the 3 things[1] That made possible to use C as a
dynamic typeless language. Now one of them is gone.
[1] The 3rd being the struct address guarantee, i.e. the address of a struct
equals the address of its first member.
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.0.6 (GNU/Linux)
Comment: For info see http://www.gnupg.org
iD8DBQFCR6ihFtofFpCIfhMRA1mIAKCH46kLdH7T8/DDCEVfOCPv8GdBugCfVDiJ
3RRmUh70zn+h3Fqx5gQX5Mw=
=02ho
-----END PGP SIGNATURE-----