Get regcomp.c to compile under EBCDIC
authorJohn Goodyear <johngood@us.ibm.com>
Mon, 25 Feb 2013 21:44:44 +0000 (14:44 -0700)
committerKarl Williamson <public@khwilliamson.com>
Mon, 25 Feb 2013 21:57:50 +0000 (14:57 -0700)
There were a couple of syntax errors here.

The committer modified the patch slightly based on a p5p exchange.

regcomp.c

index 141ce91..e7ad7c3 100644 (file)
--- a/regcomp.c
+++ b/regcomp.c
@@ -12874,7 +12874,7 @@ parseit:
 #ifndef EBCDIC
             cp_list = _add_range_to_invlist(cp_list, prevvalue, value);
 #else
-            UV* this_range = _new_invlist(1);
+            SV* this_range = _new_invlist(1);
             _append_range_to_invlist(this_range, prevvalue, value);
 
             /* In EBCDIC, the ranges 'A-Z' and 'a-z' are each not contiguous.
@@ -12889,8 +12889,8 @@ parseit:
                 && (prevvalue >= 'a' && value <= 'z')
                     || (prevvalue >= 'A' && value <= 'Z'))
             {
-                _invlist_intersection(this_range, PL_ASCII, &this_range, );
-                _invlist_intersection(this_range, PL_Alpha, &this_range, );
+                _invlist_intersection(this_range, PL_Posix_ptrs[_CC_ALPHA],
+                                      &this_range);
             }
             _invlist_union(cp_list, this_range, &cp_list);
             literal_endpoint = 0;