I went back and read all the stuff in that deleted "bug report." Marc was predictably/unnecessarily abusive, but he was right. You are wrong. If you really want C89 support, you could fork and make JSON::XS_C89, but you didn't, you chose to whine and cry and complain on perlmonks (utterly inexplicable). What is wrong with you?
Re^3: Shouldn't JSON be faster?
Replies are listed 'Best First'.
It is not my demand, but it is what perl itself requires. I'm just guarding the innocent users that are stuck with old machines.
If you think requiring C89 is historic and stupid, please make that clear to the perl5 porters and try to convince them to update the documentation.
Personally I don't think it is worth quarreling about. The differences are too small to not try to comply to C89. You're just ruling yourself out for older systems. No harm in doing so, but then state so in the docs.
My personal grief extends not to the quality of this particular code, but the complete absence of courtesy. You do not delete RT requests that you don't agree with. You can reject them, and even say in a polite tone that you're not willing to comply to lower standards. Fine with decisions like that, but not the way it went.
I'm competent enough to fix C code to match old compilers I encounter, but I find it so pointless.
I'm just guarding the innocent users that are stuck with old machines.
Ask yourself this question: How many "innocent users" are there out there still using C89 only compilers?
And now consider why the hundreds (or thousands) of Perl module authors should cater to the laziness of those few, by sticking to the limitations of a standard that for many of them came into being before they were born? Especially as it was superseded over 10 years ago.
Examine what is said, not who speaks -- Silence betokens consent -- Love the truth but pardon error.
"Science is about questioning the status quo. Questioning authority".
In the absence of evidence, opinion is indistinguishable from prejudice.
I can use some hard figures: HP-UX 10.20, considered dead, abandoned by HP years ago. I still make perl available in software depots for this OS on my website for users of this OS. Let's call these "innocent users". They probably have to maintain this old OS for whatevere obnoxious reason, but apparently they do. Only this year, perl has been downloaded for HP-UX 10.20 602 times. Of those, there were 5 for 5.12, 25 for 5.10.1, 19 for 5.10.0 and 34 for 5.8.9, so these people are still interested in recent versions of our favorite scripting language.
There is no C99 compliant version of HP C-ANSI-C available for HP-UX 10.20, and there never will be. You need HP C-ANSI-C to build GNU gcc on HP-UX (or a pretty recent version of gcc that someone else built for you). That is why I also make builds for gcc available. Building gcc-4 is absolutely impossible on HP-UX 10.20.
If these people want to install a CPAN module that uses XS code, they need to have a C-compiler installed. No C99 available for HP-UX 10.20, so end-of-story.
Now back to your claim: of those hundreds (or thousands) of Perl module authors, how many use XS code? And of those (which is in my guess way below 30%) how many use (or want to use) specific C99 features?</P.
In that perspective, isn't it reasonable to ask politely to consider using C89, and not beyond? How many limitations are you aware of that would make your XS coding less fun? (besides the silly // comments that should never have been added to ANSI-C: C is neither java nor C++)