This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Fix up LC_NUMERIC wrap macros
authorKarl Williamson <khw@cpan.org>
Mon, 2 Jun 2014 01:40:12 +0000 (19:40 -0600)
committerKarl Williamson <khw@cpan.org>
Thu, 5 Jun 2014 17:23:00 +0000 (11:23 -0600)
commitaaaeb2977e88223f68d9f7a7009ef4cf1f735c72
treec09d4d7bbb7ee1a26ab088595795a572b7be4626
parent4c28b29c7a1549f173177cdf69e91cc1acaa0969
Fix up LC_NUMERIC wrap macros

perl.h has some macros used to manipulate the locale exposed for the
category LC_NUMERIC.  These are currently undocumented, but will need to
be documented as the development of 5.21 progresses.  This fixes these
up in several ways:

The tests for if we are in the correct state are made into macros.  This
is in preparation for the next commit, which will make one of them more
complicated, and so that complication will only have to be in one place.

The variable declared by them is renamed to be preceded by an
underscore.  It is dangerous practice to have a name used in a macro, as
it could conflict with a name used by outside code.  This alleviates it
somewhat by making it even less likely to conflict.  This will have to
be revisited when some of these macros are made part of the public API.

The tests to see if things need to change are reversed.  Previously we
said we need to change to standard, for example, if the variable for
'local' is set.  But both can be true at the same time if the underlying
locale is C.  In this case, we only need to change if we aren't in
standard.  Whether that is also local is irrelevant.
locale.c
perl.h