This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
document convention for keys in %^H
[perl5.git] / mg_raw.h
index aebd777..7a45e6d 100644 (file)
--- a/mg_raw.h
+++ b/mg_raw.h
@@ -6,16 +6,28 @@
  * Any changes made here will be lost!
  */
 
-    { '\0', "want_vtbl_sv",
+    { '\0', "want_vtbl_sv | PERL_MAGIC_READONLY_ACCEPTABLE",
       "/* sv '\\0' Special scalar variable */" },
+    { '#', "want_vtbl_arylen | PERL_MAGIC_VALUE_MAGIC",
+      "/* arylen '#' Array length ($#ary) */" },
+    { '%', "magic_vtable_max | PERL_MAGIC_VALUE_MAGIC",
+      "/* rhash '%' extra data for restricted hashes */" },
+    { '.', "want_vtbl_pos | PERL_MAGIC_VALUE_MAGIC",
+      "/* pos '.' pos() lvalue */" },
+    { ':', "magic_vtable_max | PERL_MAGIC_VALUE_MAGIC",
+      "/* symtab ':' extra data for symbol tables */" },
+    { '<', "want_vtbl_backref | PERL_MAGIC_READONLY_ACCEPTABLE | PERL_MAGIC_VALUE_MAGIC",
+      "/* backref '<' for weak ref data */" },
+    { '@', "magic_vtable_max | PERL_MAGIC_VALUE_MAGIC",
+      "/* arylen_p '@' to move arylen out of XPVAV */" },
     { 'A', "want_vtbl_amagic",
       "/* overload 'A' %OVERLOAD hash */" },
     { 'a', "want_vtbl_amagicelem",
       "/* overload_elem 'a' %OVERLOAD hash element */" },
+    { 'B', "want_vtbl_regexp | PERL_MAGIC_READONLY_ACCEPTABLE | PERL_MAGIC_VALUE_MAGIC",
+      "/* bm 'B' Boyer-Moore (fast string search) */" },
     { 'c', "want_vtbl_ovrld",
       "/* overload_table 'c' Holds overload table (AMT) on stash */" },
-    { 'B', "want_vtbl_regexp | PERL_MAGIC_VALUE_MAGIC",
-      "/* bm 'B' Boyer-Moore (fast string search) */" },
     { 'D', "want_vtbl_regdata",
       "/* regdata 'D' Regex match position data (@+ and @- vars) */" },
     { 'd', "want_vtbl_regdatum",
       "/* env 'E' %ENV hash */" },
     { 'e', "want_vtbl_envelem",
       "/* envelem 'e' %ENV hash element */" },
-    { 'f', "want_vtbl_regdata | PERL_MAGIC_VALUE_MAGIC",
+    { 'f', "want_vtbl_regdata | PERL_MAGIC_READONLY_ACCEPTABLE | PERL_MAGIC_VALUE_MAGIC",
       "/* fm 'f' Formline ('compiled' format) */" },
-    { 'g', "want_vtbl_mglob | PERL_MAGIC_VALUE_MAGIC",
-      "/* regex_global 'g' m//g target / study()ed string */" },
+    { 'G', "want_vtbl_regexp | PERL_MAGIC_READONLY_ACCEPTABLE | PERL_MAGIC_VALUE_MAGIC",
+      "/* study 'G' study()ed string */" },
+    { 'g', "want_vtbl_mglob | PERL_MAGIC_READONLY_ACCEPTABLE | PERL_MAGIC_VALUE_MAGIC",
+      "/* regex_global 'g' m//g target */" },
     { 'H', "want_vtbl_hints",
       "/* hints 'H' %^H hash */" },
     { 'h', "want_vtbl_hintselem",
@@ -38,9 +52,9 @@
       "/* isaelem 'i' @ISA array element */" },
     { 'k', "want_vtbl_nkeys | PERL_MAGIC_VALUE_MAGIC",
       "/* nkeys 'k' scalar(keys()) lvalue */" },
-    { 'L', "want_vtbl_dbline",
+    { 'L', "magic_vtable_max",
       "/* dbfile 'L' Debugger %_<filename */" },
-    { 'l', "magic_vtable_max",
+    { 'l', "want_vtbl_dbline",
       "/* dbline 'l' Debugger %_<filename element */" },
     { 'o', "want_vtbl_collxfrm | PERL_MAGIC_VALUE_MAGIC",
       "/* collxfrm 'o' Locale transformation */" },
       "/* taint 't' Taintedness */" },
     { 'U', "want_vtbl_uvar",
       "/* uvar 'U' Available for use by extensions */" },
-    { 'v', "want_vtbl_vec | PERL_MAGIC_VALUE_MAGIC",
-      "/* vec 'v' vec() lvalue */" },
     { 'V', "magic_vtable_max | PERL_MAGIC_VALUE_MAGIC",
       "/* vstring 'V' SV was vstring literal */" },
+    { 'v', "want_vtbl_vec | PERL_MAGIC_VALUE_MAGIC",
+      "/* vec 'v' vec() lvalue */" },
     { 'w', "want_vtbl_utf8 | PERL_MAGIC_VALUE_MAGIC",
       "/* utf8 'w' Cached UTF-8 information */" },
     { 'x', "want_vtbl_substr | PERL_MAGIC_VALUE_MAGIC",
       "/* substr 'x' substr() lvalue */" },
     { 'y', "want_vtbl_defelem | PERL_MAGIC_VALUE_MAGIC",
       "/* defelem 'y' Shadow \"foreach\" iterator variable / smart parameter vivification */" },
-    { '#', "want_vtbl_arylen | PERL_MAGIC_VALUE_MAGIC",
-      "/* arylen '#' Array length ($#ary) */" },
-    { '.', "want_vtbl_pos | PERL_MAGIC_VALUE_MAGIC",
-      "/* pos '.' pos() lvalue */" },
-    { '<', "want_vtbl_backref | PERL_MAGIC_VALUE_MAGIC",
-      "/* backref '<' for weak ref data */" },
-    { ':', "magic_vtable_max | PERL_MAGIC_VALUE_MAGIC",
-      "/* symtab ':' extra data for symbol tables */" },
-    { '%', "magic_vtable_max | PERL_MAGIC_VALUE_MAGIC",
-      "/* rhash '%' extra data for restricted hashes */" },
-    { '@', "magic_vtable_max | PERL_MAGIC_VALUE_MAGIC",
-      "/* arylen_p '@' to move arylen out of XPVAV */" },
-    { '~', "magic_vtable_max",
-      "/* ext '~' Available for use by extensions */" },
     { ']', "magic_vtable_max | PERL_MAGIC_VALUE_MAGIC",
       "/* checkcall ']' inlining/mutation of call to this CV */" },
+    { '~', "magic_vtable_max",
+      "/* ext '~' Available for use by extensions */" },
 
 /* ex: set ro: */