This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Only use home-rolled prototypes on VMS when really necessary.
The prototypes removed here, while in some ways superior to those
provided in the system-supplied headers, in other ways conflict
with them. The conflicts were masked in the default build by the
fact that the macros mapping lower case names to upper case were
undefined, so at compile time there were really two different
prototypes even though at link time the symbols were the same.
But the conflict broke the build when compiling with /NAMES=AS_IS
to preserve symbol name case. Overall, whatever modest benefit
maintaining our own prototypes might provide, it's just not worth
the risk of conflict. A better approach would be to define
__NEW_STARLET and work through whatever the compiler complains
about.
For sys$sigprc and lib$initialize, we do continue to provide our
own prototypes (and add lower case to upper case mapping macros)
because there are no system-supplied prototypes for them.