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 62d4031..e5316aa 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);