mktables: Default those tables whose names begin with '_' to internal
authorKarl Williamson <public@khwilliamson.com>
Tue, 3 Dec 2013 05:44:36 +0000 (22:44 -0700)
committerKarl Williamson <public@khwilliamson.com>
Thu, 5 Dec 2013 02:52:38 +0000 (19:52 -0700)
Some tables that mktables generates are for specialized internal core
use, and should not be accessible through Unicode::UCD nor listed in
perluniprops.  The creation code for _Perl_Any_Folds was moved by commit
8d88896d10ee81fb95a9494ca771f9d2b14f5fc7, but it wasn't a clean move and
the line that caused it to be marked as internal was accidentally removed.
This commit changes things to default to internal-only if the name
begins with an underscore, overridable by an explicit setting.  Thus the
line that got omitted is no longer necessary, and future mistakes like
this won't have any effect.  This is the only property currently
affected by this change.

lib/unicore/mktables

index 62d40313f6eac874a29b9e97b11ddf193dea0e93..e5316aaac399d22b45899478a8b74d5a02506a0a 100644 (file)
@@ -8091,8 +8091,12 @@ sub trace { return main::trace(@_) if main::DEBUG && $to_trace }
                                 _Alias_Hash => $table_ref{$addr},
                                 _Property => $self,
 
-                                # gets property's fate and status by default
-                                Fate => $self->fate,
+                                # gets property's fate and status by default,
+                                # except if the name begind with an
+                                # underscore, default it to internal
+                                Fate => ($name =~ /^_/)
+                                         ? $INTERNAL_ONLY
+                                         : $self->fate,
                                 Status => $self->status,
                                 _Status_Info => $self->status_info,
                                 %args);