plone / bobtemplates.plone

Python Code Templates for Plone Projects with mr.bob
https://pypi.org/project/bobtemplates.plone/
GNU General Public License v2.0
24 stars 31 forks source link

pip install fails with latest Regex 2022.1.18 #495

Open sidharthramesh opened 2 years ago

sidharthramesh commented 2 years ago

Description

Describe what you were trying to get done. Tell us what happened, what went wrong, and what you expected to happen.

What I Did

pip install bobtemplates.plone

Errors out due to latest regex dropping support for Python 2 . Full output below.

Fix

First fix the version of regex

pip install "regex<2022.1.18"

Then install:

pip install bobtemplates.plone

Full Output

DEPRECATION: Python 2.7 reached the end of its life on January 1st, 2020. Please upgrade your Python as Python 2.7 is no longer maintained. pip 21.0 will drop support for Python 2.7 in January 2021. More details about Python 2 support in pip can be found at https://pip.pypa.io/en/latest/development/release-process/#python-2-support pip 21.0 will remove support for this functionality.
Requirement already satisfied: bobtemplates.plone in ./venv/lib/python2.7/site-packages (5.2.1)
Requirement already satisfied: lxml in ./venv/lib/python2.7/site-packages (from bobtemplates.plone) (4.7.1)
Requirement already satisfied: tox in ./venv/lib/python2.7/site-packages (from bobtemplates.plone) (3.24.5)
Requirement already satisfied: case-conversion in ./venv/lib/python2.7/site-packages (from bobtemplates.plone) (2.1.0)
Requirement already satisfied: mr.bob in ./venv/lib/python2.7/site-packages (from bobtemplates.plone) (0.1.2)
Requirement already satisfied: isort in ./venv/lib/python2.7/site-packages (from bobtemplates.plone) (4.3.21)
Requirement already satisfied: colorama in ./venv/lib/python2.7/site-packages (from bobtemplates.plone) (0.4.4)
Requirement already satisfied: setuptools in ./venv/lib/python2.7/site-packages (from bobtemplates.plone) (42.0.2)
Requirement already satisfied: virtualenv!=20.0.0,!=20.0.1,!=20.0.2,!=20.0.3,!=20.0.4,!=20.0.5,!=20.0.6,!=20.0.7,>=16.0.0 in ./venv/lib/python2.7/site-packages (from tox->bobtemplates.plone) (20.13.0)
Requirement already satisfied: py>=1.4.17 in ./venv/lib/python2.7/site-packages (from tox->bobtemplates.plone) (1.11.0)
Requirement already satisfied: pluggy>=0.12.0 in ./venv/lib/python2.7/site-packages (from tox->bobtemplates.plone) (0.13.1)
Requirement already satisfied: importlib-metadata>=0.12; python_version < "3.8" in ./venv/lib/python2.7/site-packages (from tox->bobtemplates.plone) (2.1.3)
Requirement already satisfied: six>=1.14.0 in ./venv/lib/python2.7/site-packages (from tox->bobtemplates.plone) (1.16.0)
Requirement already satisfied: filelock>=3.0.0 in ./venv/lib/python2.7/site-packages (from tox->bobtemplates.plone) (3.2.1)
Requirement already satisfied: toml>=0.9.4 in ./venv/lib/python2.7/site-packages (from tox->bobtemplates.plone) (0.10.2)
Requirement already satisfied: packaging>=14 in ./venv/lib/python2.7/site-packages (from tox->bobtemplates.plone) (20.9)
Collecting regex>=2016.2.25
  Using cached regex-2022.1.18.tar.gz (382 kB)
Requirement already satisfied: Jinja2>=2.5.0 in ./venv/lib/python2.7/site-packages (from mr.bob->bobtemplates.plone) (2.11.3)
Requirement already satisfied: backports.functools-lru-cache; python_version < "3.2" in ./venv/lib/python2.7/site-packages (from isort->bobtemplates.plone) (1.6.4)
Requirement already satisfied: futures; python_version < "3.2" in ./venv/lib/python2.7/site-packages (from isort->bobtemplates.plone) (3.3.0)
Requirement already satisfied: distlib<1,>=0.3.1 in ./venv/lib/python2.7/site-packages (from virtualenv!=20.0.0,!=20.0.1,!=20.0.2,!=20.0.3,!=20.0.4,!=20.0.5,!=20.0.6,!=20.0.7,>=16.0.0->tox->bobtemplates.plone) (0.3.4)
Requirement already satisfied: pathlib2<3,>=2.3.3; python_version < "3.4" and sys_platform != "win32" in ./venv/lib/python2.7/site-packages (from virtualenv!=20.0.0,!=20.0.1,!=20.0.2,!=20.0.3,!=20.0.4,!=20.0.5,!=20.0.6,!=20.0.7,>=16.0.0->tox->bobtemplates.plone) (2.3.6)
Requirement already satisfied: importlib-resources>=1.0; python_version < "3.7" in ./venv/lib/python2.7/site-packages (from virtualenv!=20.0.0,!=20.0.1,!=20.0.2,!=20.0.3,!=20.0.4,!=20.0.5,!=20.0.6,!=20.0.7,>=16.0.0->tox->bobtemplates.plone) (3.3.1)
Requirement already satisfied: platformdirs<3,>=2 in ./venv/lib/python2.7/site-packages (from virtualenv!=20.0.0,!=20.0.1,!=20.0.2,!=20.0.3,!=20.0.4,!=20.0.5,!=20.0.6,!=20.0.7,>=16.0.0->tox->bobtemplates.plone) (2.0.2)
Requirement already satisfied: contextlib2; python_version < "3" in ./venv/lib/python2.7/site-packages (from importlib-metadata>=0.12; python_version < "3.8"->tox->bobtemplates.plone) (0.6.0.post1)
Requirement already satisfied: zipp>=0.5 in ./venv/lib/python2.7/site-packages (from importlib-metadata>=0.12; python_version < "3.8"->tox->bobtemplates.plone) (1.2.0)
Requirement already satisfied: configparser>=3.5; python_version < "3" in ./venv/lib/python2.7/site-packages (from importlib-metadata>=0.12; python_version < "3.8"->tox->bobtemplates.plone) (4.0.2)
Requirement already satisfied: pyparsing>=2.0.2 in ./venv/lib/python2.7/site-packages (from packaging>=14->tox->bobtemplates.plone) (2.4.7)
Requirement already satisfied: MarkupSafe>=0.23 in ./venv/lib/python2.7/site-packages (from Jinja2>=2.5.0->mr.bob->bobtemplates.plone) (1.1.1)
Requirement already satisfied: scandir; python_version < "3.5" in ./venv/lib/python2.7/site-packages (from pathlib2<3,>=2.3.3; python_version < "3.4" and sys_platform != "win32"->virtualenv!=20.0.0,!=20.0.1,!=20.0.2,!=20.0.3,!=20.0.4,!=20.0.5,!=20.0.6,!=20.0.7,>=16.0.0->tox->bobtemplates.plone) (1.10.0)
Requirement already satisfied: typing; python_version < "3.5" in ./venv/lib/python2.7/site-packages (from importlib-resources>=1.0; python_version < "3.7"->virtualenv!=20.0.0,!=20.0.1,!=20.0.2,!=20.0.3,!=20.0.4,!=20.0.5,!=20.0.6,!=20.0.7,>=16.0.0->tox->bobtemplates.plone) (3.10.0.0)
Requirement already satisfied: singledispatch; python_version < "3.4" in ./venv/lib/python2.7/site-packages (from importlib-resources>=1.0; python_version < "3.7"->virtualenv!=20.0.0,!=20.0.1,!=20.0.2,!=20.0.3,!=20.0.4,!=20.0.5,!=20.0.6,!=20.0.7,>=16.0.0->tox->bobtemplates.plone) (3.7.0)
Building wheels for collected packages: regex
  Building wheel for regex (setup.py): started
  Building wheel for regex (setup.py): finished with status 'error'
  ERROR: Command errored out with exit status 1:
   command: /workspace/lims/venv/bin/python -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-wRqfdU/regex/setup.py'"'"'; __file__='"'"'/tmp/pip-install-wRqfdU/regex/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' bdist_wheel -d /tmp/pip-wheel-_HPyC5
       cwd: /tmp/pip-install-wRqfdU/regex/
  Complete output (1469 lines):
  running bdist_wheel
  running build
  running build_py
  creating build
  creating build/lib.linux-x86_64-2.7
  creating build/lib.linux-x86_64-2.7/regex
  copying regex_3/__init__.py -> build/lib.linux-x86_64-2.7/regex
  copying regex_3/regex.py -> build/lib.linux-x86_64-2.7/regex
  copying regex_3/_regex_core.py -> build/lib.linux-x86_64-2.7/regex
  copying regex_3/test_regex.py -> build/lib.linux-x86_64-2.7/regex
  running build_ext
  building 'regex._regex' extension
  creating build/temp.linux-x86_64-2.7
  creating build/temp.linux-x86_64-2.7/regex_3
  x86_64-linux-gnu-gcc -pthread -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fno-strict-aliasing -Wdate-time -D_FORTIFY_SOURCE=2 -g -fdebug-prefix-map=/build/python2.7-2.7.16=. -fstack-protector-strong -Wformat -Werror=format-security -fPIC -I/usr/include/python2.7 -c regex_3/_regex.c -o build/temp.linux-x86_64-2.7/regex_3/_regex.o
  regex_3/_regex.c: In function ‘bytes1_char_at’:
  regex_3/_regex.c:755:15: error: ‘Py_UCS1’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
       return *((Py_UCS1*)text + pos);
                 ^~~~~~~
                 Py_UCS4
  regex_3/_regex.c:755:15: note: each undeclared identifier is reported only once for each function it appears in
  regex_3/_regex.c:755:23: error: expected expression before ‘)’ token
       return *((Py_UCS1*)text + pos);
                         ^
  regex_3/_regex.c: In function ‘bytes1_set_char_at’:
  regex_3/_regex.c:760:8: error: ‘Py_UCS1’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
       *((Py_UCS1*)text + pos) = (Py_UCS1)ch;
          ^~~~~~~
          Py_UCS4
  regex_3/_regex.c:760:16: error: expected expression before ‘)’ token
       *((Py_UCS1*)text + pos) = (Py_UCS1)ch;
                  ^
  regex_3/_regex.c:760:40: error: expected ‘;’ before ‘ch’
       *((Py_UCS1*)text + pos) = (Py_UCS1)ch;
                                          ^~
                                          ;
  regex_3/_regex.c: In function ‘bytes1_point_to’:
  regex_3/_regex.c:765:13: error: ‘Py_UCS1’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
       return (Py_UCS1*)text + pos;
               ^~~~~~~
               Py_UCS4
  regex_3/_regex.c:765:21: error: expected expression before ‘)’ token
       return (Py_UCS1*)text + pos;
                       ^
  regex_3/_regex.c: In function ‘bytes2_char_at’:
  regex_3/_regex.c:770:15: error: ‘Py_UCS2’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
       return *((Py_UCS2*)text + pos);
                 ^~~~~~~
                 Py_UCS4
  regex_3/_regex.c:770:23: error: expected expression before ‘)’ token
       return *((Py_UCS2*)text + pos);
                         ^
  regex_3/_regex.c: In function ‘bytes2_set_char_at’:
  regex_3/_regex.c:775:8: error: ‘Py_UCS2’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
       *((Py_UCS2*)text + pos) = (Py_UCS2)ch;
          ^~~~~~~
          Py_UCS4
  regex_3/_regex.c:775:16: error: expected expression before ‘)’ token
       *((Py_UCS2*)text + pos) = (Py_UCS2)ch;
                  ^
  regex_3/_regex.c:775:40: error: expected ‘;’ before ‘ch’
       *((Py_UCS2*)text + pos) = (Py_UCS2)ch;
                                          ^~
                                          ;
  regex_3/_regex.c: In function ‘bytes2_point_to’:
  regex_3/_regex.c:780:13: error: ‘Py_UCS2’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
       return (Py_UCS2*)text + pos;
               ^~~~~~~
               Py_UCS4
  regex_3/_regex.c:780:21: error: expected expression before ‘)’ token
       return (Py_UCS2*)text + pos;
                       ^
  regex_3/_regex.c: In function ‘set_error’:
  regex_3/_regex.c:2103:25: error: ‘PyExc_TimeoutError’ undeclared (first use in this function); did you mean ‘PyExc_ImportError’?
           PyErr_SetString(PyExc_TimeoutError, "regex timed out");
                           ^~~~~~~~~~~~~~~~~~
                           PyExc_ImportError
  regex_3/_regex.c: In function ‘match_many_ANY’:
  regex_3/_regex.c:3468:9: error: unknown type name ‘Py_UCS1’; did you mean ‘Py_UCS4’?
           Py_UCS1* text_ptr;
           ^~~~~~~
           Py_UCS4
  regex_3/_regex.c:3469:9: error: unknown type name ‘Py_UCS1’; did you mean ‘Py_UCS4’?
           Py_UCS1* limit_ptr;
           ^~~~~~~
           Py_UCS4
  regex_3/_regex.c:3471:21: error: ‘Py_UCS1’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
           text_ptr = (Py_UCS1*)text + text_pos;
                       ^~~~~~~
                       Py_UCS4
  regex_3/_regex.c:3471:29: error: expected expression before ‘)’ token
           text_ptr = (Py_UCS1*)text + text_pos;
                               ^
  regex_3/_regex.c:3472:30: error: expected expression before ‘)’ token
           limit_ptr = (Py_UCS1*)text + limit;
                                ^
  regex_3/_regex.c:3477:40: error: expected expression before ‘)’ token
           text_pos = text_ptr - (Py_UCS1*)text;
                                          ^
  regex_3/_regex.c:3482:9: error: unknown type name ‘Py_UCS2’; did you mean ‘Py_UCS4’?
           Py_UCS2* text_ptr;
           ^~~~~~~
           Py_UCS4
  regex_3/_regex.c:3483:9: error: unknown type name ‘Py_UCS2’; did you mean ‘Py_UCS4’?
           Py_UCS2* limit_ptr;
           ^~~~~~~
           Py_UCS4
  regex_3/_regex.c:3485:21: error: ‘Py_UCS2’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
           text_ptr = (Py_UCS2*)text + text_pos;
                       ^~~~~~~
                       Py_UCS4
  regex_3/_regex.c:3485:29: error: expected expression before ‘)’ token
           text_ptr = (Py_UCS2*)text + text_pos;
                               ^
  regex_3/_regex.c:3486:30: error: expected expression before ‘)’ token
           limit_ptr = (Py_UCS2*)text + limit;
                                ^
  regex_3/_regex.c:3491:40: error: expected expression before ‘)’ token
           text_pos = text_ptr - (Py_UCS2*)text;
                                          ^
  regex_3/_regex.c: In function ‘match_many_ANY_REV’:
  regex_3/_regex.c:3523:9: error: unknown type name ‘Py_UCS1’; did you mean ‘Py_UCS4’?
           Py_UCS1* text_ptr;
           ^~~~~~~
           Py_UCS4
  regex_3/_regex.c:3524:9: error: unknown type name ‘Py_UCS1’; did you mean ‘Py_UCS4’?
           Py_UCS1* limit_ptr;
           ^~~~~~~
           Py_UCS4
  regex_3/_regex.c:3526:21: error: ‘Py_UCS1’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
           text_ptr = (Py_UCS1*)text + text_pos;
                       ^~~~~~~
                       Py_UCS4
  regex_3/_regex.c:3526:29: error: expected expression before ‘)’ token
           text_ptr = (Py_UCS1*)text + text_pos;
                               ^
  regex_3/_regex.c:3527:30: error: expected expression before ‘)’ token
           limit_ptr = (Py_UCS1*)text + limit;
                                ^
  regex_3/_regex.c:3532:40: error: expected expression before ‘)’ token
           text_pos = text_ptr - (Py_UCS1*)text;
                                          ^
  regex_3/_regex.c:3537:9: error: unknown type name ‘Py_UCS2’; did you mean ‘Py_UCS4’?
           Py_UCS2* text_ptr;
           ^~~~~~~
           Py_UCS4
  regex_3/_regex.c:3538:9: error: unknown type name ‘Py_UCS2’; did you mean ‘Py_UCS4’?
           Py_UCS2* limit_ptr;
           ^~~~~~~
           Py_UCS4
  regex_3/_regex.c:3540:21: error: ‘Py_UCS2’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
           text_ptr = (Py_UCS2*)text + text_pos;
                       ^~~~~~~
                       Py_UCS4
  regex_3/_regex.c:3540:29: error: expected expression before ‘)’ token
           text_ptr = (Py_UCS2*)text + text_pos;
                               ^
  regex_3/_regex.c:3541:30: error: expected expression before ‘)’ token
           limit_ptr = (Py_UCS2*)text + limit;
                                ^
  regex_3/_regex.c:3546:40: error: expected expression before ‘)’ token
           text_pos = text_ptr - (Py_UCS2*)text;
                                          ^
  regex_3/_regex.c: In function ‘match_many_ANY_U’:
  regex_3/_regex.c:3580:9: error: unknown type name ‘Py_UCS1’; did you mean ‘Py_UCS4’?
           Py_UCS1* text_ptr;
           ^~~~~~~
           Py_UCS4
  regex_3/_regex.c:3581:9: error: unknown type name ‘Py_UCS1’; did you mean ‘Py_UCS4’?
           Py_UCS1* limit_ptr;
           ^~~~~~~
           Py_UCS4
  regex_3/_regex.c:3583:21: error: ‘Py_UCS1’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
           text_ptr = (Py_UCS1*)text + text_pos;
                       ^~~~~~~
                       Py_UCS4
  regex_3/_regex.c:3583:29: error: expected expression before ‘)’ token
           text_ptr = (Py_UCS1*)text + text_pos;
                               ^
  regex_3/_regex.c:3584:30: error: expected expression before ‘)’ token
           limit_ptr = (Py_UCS1*)text + limit;
                                ^
  regex_3/_regex.c:3596:40: error: expected expression before ‘)’ token
           text_pos = text_ptr - (Py_UCS1*)text;
                                          ^
  regex_3/_regex.c:3601:9: error: unknown type name ‘Py_UCS2’; did you mean ‘Py_UCS4’?
           Py_UCS2* text_ptr;
           ^~~~~~~
           Py_UCS4
  regex_3/_regex.c:3602:9: error: unknown type name ‘Py_UCS2’; did you mean ‘Py_UCS4’?
           Py_UCS2* limit_ptr;
           ^~~~~~~
           Py_UCS4
  regex_3/_regex.c:3604:21: error: ‘Py_UCS2’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
           text_ptr = (Py_UCS2*)text + text_pos;
                       ^~~~~~~
                       Py_UCS4
  regex_3/_regex.c:3604:29: error: expected expression before ‘)’ token
           text_ptr = (Py_UCS2*)text + text_pos;
                               ^
  regex_3/_regex.c:3605:30: error: expected expression before ‘)’ token
           limit_ptr = (Py_UCS2*)text + limit;
                                ^
  regex_3/_regex.c:3617:40: error: expected expression before ‘)’ token
           text_pos = text_ptr - (Py_UCS2*)text;
                                          ^
  regex_3/_regex.c: In function ‘match_many_ANY_U_REV’:
  regex_3/_regex.c:3658:9: error: unknown type name ‘Py_UCS1’; did you mean ‘Py_UCS4’?
           Py_UCS1* text_ptr;
           ^~~~~~~
           Py_UCS4
  regex_3/_regex.c:3659:9: error: unknown type name ‘Py_UCS1’; did you mean ‘Py_UCS4’?
           Py_UCS1* limit_ptr;
           ^~~~~~~
           Py_UCS4
  regex_3/_regex.c:3661:21: error: ‘Py_UCS1’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
           text_ptr = (Py_UCS1*)text + text_pos;
                       ^~~~~~~
                       Py_UCS4
  regex_3/_regex.c:3661:29: error: expected expression before ‘)’ token
           text_ptr = (Py_UCS1*)text + text_pos;
                               ^
  regex_3/_regex.c:3662:30: error: expected expression before ‘)’ token
           limit_ptr = (Py_UCS1*)text + limit;
                                ^
  regex_3/_regex.c:3674:40: error: expected expression before ‘)’ token
           text_pos = text_ptr - (Py_UCS1*)text;
                                          ^
  regex_3/_regex.c:3679:9: error: unknown type name ‘Py_UCS2’; did you mean ‘Py_UCS4’?
           Py_UCS2* text_ptr;
           ^~~~~~~
           Py_UCS4
  regex_3/_regex.c:3680:9: error: unknown type name ‘Py_UCS2’; did you mean ‘Py_UCS4’?
           Py_UCS2* limit_ptr;
           ^~~~~~~
           Py_UCS4
  regex_3/_regex.c:3682:21: error: ‘Py_UCS2’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
           text_ptr = (Py_UCS2*)text + text_pos;
                       ^~~~~~~
                       Py_UCS4
  regex_3/_regex.c:3682:29: error: expected expression before ‘)’ token
           text_ptr = (Py_UCS2*)text + text_pos;
                               ^
  regex_3/_regex.c:3683:30: error: expected expression before ‘)’ token
           limit_ptr = (Py_UCS2*)text + limit;
                                ^
  regex_3/_regex.c:3695:40: error: expected expression before ‘)’ token
           text_pos = text_ptr - (Py_UCS2*)text;
                                          ^
  regex_3/_regex.c: In function ‘match_many_CHARACTER’:
  regex_3/_regex.c:3737:9: error: unknown type name ‘Py_UCS1’; did you mean ‘Py_UCS4’?
           Py_UCS1* text_ptr;
           ^~~~~~~
           Py_UCS4
  regex_3/_regex.c:3738:9: error: unknown type name ‘Py_UCS1’; did you mean ‘Py_UCS4’?
           Py_UCS1* limit_ptr;
           ^~~~~~~
           Py_UCS4
  regex_3/_regex.c:3740:21: error: ‘Py_UCS1’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
           text_ptr = (Py_UCS1*)text + text_pos;
                       ^~~~~~~
                       Py_UCS4
  regex_3/_regex.c:3740:29: error: expected expression before ‘)’ token
           text_ptr = (Py_UCS1*)text + text_pos;
                               ^
  regex_3/_regex.c:3741:30: error: expected expression before ‘)’ token
           limit_ptr = (Py_UCS1*)text + limit;
                                ^
  regex_3/_regex.c:3746:40: error: expected expression before ‘)’ token
           text_pos = text_ptr - (Py_UCS1*)text;
                                          ^
  regex_3/_regex.c:3751:9: error: unknown type name ‘Py_UCS2’; did you mean ‘Py_UCS4’?
           Py_UCS2* text_ptr;
           ^~~~~~~
           Py_UCS4
  regex_3/_regex.c:3752:9: error: unknown type name ‘Py_UCS2’; did you mean ‘Py_UCS4’?
           Py_UCS2* limit_ptr;
           ^~~~~~~
           Py_UCS4
  regex_3/_regex.c:3754:21: error: ‘Py_UCS2’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
           text_ptr = (Py_UCS2*)text + text_pos;
                       ^~~~~~~
                       Py_UCS4
  regex_3/_regex.c:3754:29: error: expected expression before ‘)’ token
           text_ptr = (Py_UCS2*)text + text_pos;
                               ^
  regex_3/_regex.c:3755:30: error: expected expression before ‘)’ token
           limit_ptr = (Py_UCS2*)text + limit;
                                ^
  regex_3/_regex.c:3760:40: error: expected expression before ‘)’ token
           text_pos = text_ptr - (Py_UCS2*)text;
                                          ^
  regex_3/_regex.c: In function ‘match_many_CHARACTER_IGN’:
  regex_3/_regex.c:3797:9: error: unknown type name ‘Py_UCS1’; did you mean ‘Py_UCS4’?
           Py_UCS1* text_ptr;
           ^~~~~~~
           Py_UCS4
  regex_3/_regex.c:3798:9: error: unknown type name ‘Py_UCS1’; did you mean ‘Py_UCS4’?
           Py_UCS1* limit_ptr;
           ^~~~~~~
           Py_UCS4
  regex_3/_regex.c:3800:21: error: ‘Py_UCS1’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
           text_ptr = (Py_UCS1*)text + text_pos;
                       ^~~~~~~
                       Py_UCS4
  regex_3/_regex.c:3800:29: error: expected expression before ‘)’ token
           text_ptr = (Py_UCS1*)text + text_pos;
                               ^
  regex_3/_regex.c:3801:30: error: expected expression before ‘)’ token
           limit_ptr = (Py_UCS1*)text + limit;
                                ^
  regex_3/_regex.c:3807:40: error: expected expression before ‘)’ token
           text_pos = text_ptr - (Py_UCS1*)text;
                                          ^
  regex_3/_regex.c:3812:9: error: unknown type name ‘Py_UCS2’; did you mean ‘Py_UCS4’?
           Py_UCS2* text_ptr;
           ^~~~~~~
           Py_UCS4
  regex_3/_regex.c:3813:9: error: unknown type name ‘Py_UCS2’; did you mean ‘Py_UCS4’?
           Py_UCS2* limit_ptr;
           ^~~~~~~
           Py_UCS4
  regex_3/_regex.c:3815:21: error: ‘Py_UCS2’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
           text_ptr = (Py_UCS2*)text + text_pos;
                       ^~~~~~~
                       Py_UCS4
  regex_3/_regex.c:3815:29: error: expected expression before ‘)’ token
           text_ptr = (Py_UCS2*)text + text_pos;
                               ^
  regex_3/_regex.c:3816:30: error: expected expression before ‘)’ token
           limit_ptr = (Py_UCS2*)text + limit;
                                ^
  regex_3/_regex.c:3822:40: error: expected expression before ‘)’ token
           text_pos = text_ptr - (Py_UCS2*)text;
                                          ^
  regex_3/_regex.c: In function ‘match_many_CHARACTER_IGN_REV’:
  regex_3/_regex.c:3860:9: error: unknown type name ‘Py_UCS1’; did you mean ‘Py_UCS4’?
           Py_UCS1* text_ptr;
           ^~~~~~~
           Py_UCS4
  regex_3/_regex.c:3861:9: error: unknown type name ‘Py_UCS1’; did you mean ‘Py_UCS4’?
           Py_UCS1* limit_ptr;
           ^~~~~~~
           Py_UCS4
  regex_3/_regex.c:3863:21: error: ‘Py_UCS1’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
           text_ptr = (Py_UCS1*)text + text_pos;
                       ^~~~~~~
                       Py_UCS4
  regex_3/_regex.c:3863:29: error: expected expression before ‘)’ token
           text_ptr = (Py_UCS1*)text + text_pos;
                               ^
  regex_3/_regex.c:3864:30: error: expected expression before ‘)’ token
           limit_ptr = (Py_UCS1*)text + limit;
                                ^
  regex_3/_regex.c:3870:40: error: expected expression before ‘)’ token
           text_pos = text_ptr - (Py_UCS1*)text;
                                          ^
  regex_3/_regex.c:3875:9: error: unknown type name ‘Py_UCS2’; did you mean ‘Py_UCS4’?
           Py_UCS2* text_ptr;
           ^~~~~~~
           Py_UCS4
  regex_3/_regex.c:3876:9: error: unknown type name ‘Py_UCS2’; did you mean ‘Py_UCS4’?
           Py_UCS2* limit_ptr;
           ^~~~~~~
           Py_UCS4
  regex_3/_regex.c:3878:21: error: ‘Py_UCS2’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
           text_ptr = (Py_UCS2*)text + text_pos;
                       ^~~~~~~
                       Py_UCS4
  regex_3/_regex.c:3878:29: error: expected expression before ‘)’ token
           text_ptr = (Py_UCS2*)text + text_pos;
                               ^
  regex_3/_regex.c:3879:30: error: expected expression before ‘)’ token
           limit_ptr = (Py_UCS2*)text + limit;
                                ^
  regex_3/_regex.c:3885:40: error: expected expression before ‘)’ token
           text_pos = text_ptr - (Py_UCS2*)text;
                                          ^
  regex_3/_regex.c: In function ‘match_many_CHARACTER_REV’:
  regex_3/_regex.c:3921:9: error: unknown type name ‘Py_UCS1’; did you mean ‘Py_UCS4’?
           Py_UCS1* text_ptr;
           ^~~~~~~
           Py_UCS4
  regex_3/_regex.c:3922:9: error: unknown type name ‘Py_UCS1’; did you mean ‘Py_UCS4’?
           Py_UCS1* limit_ptr;
           ^~~~~~~
           Py_UCS4
  regex_3/_regex.c:3924:21: error: ‘Py_UCS1’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
           text_ptr = (Py_UCS1*)text + text_pos;
                       ^~~~~~~
                       Py_UCS4
  regex_3/_regex.c:3924:29: error: expected expression before ‘)’ token
           text_ptr = (Py_UCS1*)text + text_pos;
                               ^
  regex_3/_regex.c:3925:30: error: expected expression before ‘)’ token
           limit_ptr = (Py_UCS1*)text + limit;
                                ^
  regex_3/_regex.c:3930:40: error: expected expression before ‘)’ token
           text_pos = text_ptr - (Py_UCS1*)text;
                                          ^
  regex_3/_regex.c:3935:9: error: unknown type name ‘Py_UCS2’; did you mean ‘Py_UCS4’?
           Py_UCS2* text_ptr;
           ^~~~~~~
           Py_UCS4
  regex_3/_regex.c:3936:9: error: unknown type name ‘Py_UCS2’; did you mean ‘Py_UCS4’?
           Py_UCS2* limit_ptr;
           ^~~~~~~
           Py_UCS4
  regex_3/_regex.c:3938:21: error: ‘Py_UCS2’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
           text_ptr = (Py_UCS2*)text + text_pos;
                       ^~~~~~~
                       Py_UCS4
  regex_3/_regex.c:3938:29: error: expected expression before ‘)’ token
           text_ptr = (Py_UCS2*)text + text_pos;
                               ^
  regex_3/_regex.c:3939:30: error: expected expression before ‘)’ token
           limit_ptr = (Py_UCS2*)text + limit;
                                ^
  regex_3/_regex.c:3944:40: error: expected expression before ‘)’ token
           text_pos = text_ptr - (Py_UCS2*)text;
                                          ^
  regex_3/_regex.c: In function ‘match_many_PROPERTY’:
  regex_3/_regex.c:3983:9: error: unknown type name ‘Py_UCS1’; did you mean ‘Py_UCS4’?
           Py_UCS1* text_ptr;
           ^~~~~~~
           Py_UCS4
  regex_3/_regex.c:3984:9: error: unknown type name ‘Py_UCS1’; did you mean ‘Py_UCS4’?
           Py_UCS1* limit_ptr;
           ^~~~~~~
           Py_UCS4
  regex_3/_regex.c:3986:21: error: ‘Py_UCS1’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
           text_ptr = (Py_UCS1*)text + text_pos;
                       ^~~~~~~
                       Py_UCS4
  regex_3/_regex.c:3986:29: error: expected expression before ‘)’ token
           text_ptr = (Py_UCS1*)text + text_pos;
                               ^
  regex_3/_regex.c:3987:30: error: expected expression before ‘)’ token
           limit_ptr = (Py_UCS1*)text + limit;
                                ^
  regex_3/_regex.c:4004:40: error: expected expression before ‘)’ token
           text_pos = text_ptr - (Py_UCS1*)text;
                                          ^
  regex_3/_regex.c:4009:9: error: unknown type name ‘Py_UCS2’; did you mean ‘Py_UCS4’?
           Py_UCS2* text_ptr;
           ^~~~~~~
           Py_UCS4
  regex_3/_regex.c:4010:9: error: unknown type name ‘Py_UCS2’; did you mean ‘Py_UCS4’?
           Py_UCS2* limit_ptr;
           ^~~~~~~
           Py_UCS4
  regex_3/_regex.c:4012:21: error: ‘Py_UCS2’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
           text_ptr = (Py_UCS2*)text + text_pos;
                       ^~~~~~~
                       Py_UCS4
  regex_3/_regex.c:4012:29: error: expected expression before ‘)’ token
           text_ptr = (Py_UCS2*)text + text_pos;
                               ^
  regex_3/_regex.c:4013:30: error: expected expression before ‘)’ token
           limit_ptr = (Py_UCS2*)text + limit;
                                ^
  regex_3/_regex.c:4030:40: error: expected expression before ‘)’ token
           text_pos = text_ptr - (Py_UCS2*)text;
                                          ^
  regex_3/_regex.c: In function ‘match_many_PROPERTY_IGN’:
  regex_3/_regex.c:4081:9: error: unknown type name ‘Py_UCS1’; did you mean ‘Py_UCS4’?
           Py_UCS1* text_ptr;
           ^~~~~~~
           Py_UCS4
  regex_3/_regex.c:4082:9: error: unknown type name ‘Py_UCS1’; did you mean ‘Py_UCS4’?
           Py_UCS1* limit_ptr;
           ^~~~~~~
           Py_UCS4
  regex_3/_regex.c:4084:21: error: ‘Py_UCS1’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
           text_ptr = (Py_UCS1*)text + text_pos;
                       ^~~~~~~
                       Py_UCS4
  regex_3/_regex.c:4084:29: error: expected expression before ‘)’ token
           text_ptr = (Py_UCS1*)text + text_pos;
                               ^
  regex_3/_regex.c:4085:30: error: expected expression before ‘)’ token
           limit_ptr = (Py_UCS1*)text + limit;
                                ^
  regex_3/_regex.c:4102:40: error: expected expression before ‘)’ token
           text_pos = text_ptr - (Py_UCS1*)text;
                                          ^
  regex_3/_regex.c:4107:9: error: unknown type name ‘Py_UCS2’; did you mean ‘Py_UCS4’?
           Py_UCS2* text_ptr;
           ^~~~~~~
           Py_UCS4
  regex_3/_regex.c:4108:9: error: unknown type name ‘Py_UCS2’; did you mean ‘Py_UCS4’?
           Py_UCS2* limit_ptr;
           ^~~~~~~
           Py_UCS4
  regex_3/_regex.c:4110:21: error: ‘Py_UCS2’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
           text_ptr = (Py_UCS2*)text + text_pos;
                       ^~~~~~~
                       Py_UCS4
  regex_3/_regex.c:4110:29: error: expected expression before ‘)’ token
           text_ptr = (Py_UCS2*)text + text_pos;
                               ^
  regex_3/_regex.c:4111:30: error: expected expression before ‘)’ token
           limit_ptr = (Py_UCS2*)text + limit;
                                ^
  regex_3/_regex.c:4128:40: error: expected expression before ‘)’ token
           text_pos = text_ptr - (Py_UCS2*)text;
                                          ^
  regex_3/_regex.c: In function ‘match_many_PROPERTY_IGN_REV’:
  regex_3/_regex.c:4179:9: error: unknown type name ‘Py_UCS1’; did you mean ‘Py_UCS4’?
           Py_UCS1* text_ptr;
           ^~~~~~~
           Py_UCS4
  regex_3/_regex.c:4180:9: error: unknown type name ‘Py_UCS1’; did you mean ‘Py_UCS4’?
           Py_UCS1* limit_ptr;
           ^~~~~~~
           Py_UCS4
  regex_3/_regex.c:4182:21: error: ‘Py_UCS1’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
           text_ptr = (Py_UCS1*)text + text_pos;
                       ^~~~~~~
                       Py_UCS4
  regex_3/_regex.c:4182:29: error: expected expression before ‘)’ token
           text_ptr = (Py_UCS1*)text + text_pos;
                               ^
  regex_3/_regex.c:4183:30: error: expected expression before ‘)’ token
           limit_ptr = (Py_UCS1*)text + limit;
                                ^
  regex_3/_regex.c:4200:40: error: expected expression before ‘)’ token
           text_pos = text_ptr - (Py_UCS1*)text;
                                          ^
  regex_3/_regex.c:4205:9: error: unknown type name ‘Py_UCS2’; did you mean ‘Py_UCS4’?
           Py_UCS2* text_ptr;
           ^~~~~~~
           Py_UCS4
  regex_3/_regex.c:4206:9: error: unknown type name ‘Py_UCS2’; did you mean ‘Py_UCS4’?
           Py_UCS2* limit_ptr;
           ^~~~~~~
           Py_UCS4
  regex_3/_regex.c:4208:21: error: ‘Py_UCS2’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
           text_ptr = (Py_UCS2*)text + text_pos;
                       ^~~~~~~
                       Py_UCS4
  regex_3/_regex.c:4208:29: error: expected expression before ‘)’ token
           text_ptr = (Py_UCS2*)text + text_pos;
                               ^
  regex_3/_regex.c:4209:30: error: expected expression before ‘)’ token
           limit_ptr = (Py_UCS2*)text + limit;
                                ^
  regex_3/_regex.c:4226:40: error: expected expression before ‘)’ token
           text_pos = text_ptr - (Py_UCS2*)text;
                                          ^
  regex_3/_regex.c: In function ‘match_many_PROPERTY_REV’:
  regex_3/_regex.c:4277:9: error: unknown type name ‘Py_UCS1’; did you mean ‘Py_UCS4’?
           Py_UCS1* text_ptr;
           ^~~~~~~
           Py_UCS4
  regex_3/_regex.c:4278:9: error: unknown type name ‘Py_UCS1’; did you mean ‘Py_UCS4’?
           Py_UCS1* limit_ptr;
           ^~~~~~~
           Py_UCS4
  regex_3/_regex.c:4280:21: error: ‘Py_UCS1’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
           text_ptr = (Py_UCS1*)text + text_pos;
                       ^~~~~~~
                       Py_UCS4
  regex_3/_regex.c:4280:29: error: expected expression before ‘)’ token
           text_ptr = (Py_UCS1*)text + text_pos;
                               ^
  regex_3/_regex.c:4281:30: error: expected expression before ‘)’ token
           limit_ptr = (Py_UCS1*)text + limit;
                                ^
  regex_3/_regex.c:4298:40: error: expected expression before ‘)’ token
           text_pos = text_ptr - (Py_UCS1*)text;
                                          ^
  regex_3/_regex.c:4303:9: error: unknown type name ‘Py_UCS2’; did you mean ‘Py_UCS4’?
           Py_UCS2* text_ptr;
           ^~~~~~~
           Py_UCS4
  regex_3/_regex.c:4304:9: error: unknown type name ‘Py_UCS2’; did you mean ‘Py_UCS4’?
           Py_UCS2* limit_ptr;
           ^~~~~~~
           Py_UCS4
  regex_3/_regex.c:4306:21: error: ‘Py_UCS2’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
           text_ptr = (Py_UCS2*)text + text_pos;
                       ^~~~~~~
                       Py_UCS4
  regex_3/_regex.c:4306:29: error: expected expression before ‘)’ token
           text_ptr = (Py_UCS2*)text + text_pos;
                               ^
  regex_3/_regex.c:4307:30: error: expected expression before ‘)’ token
           limit_ptr = (Py_UCS2*)text + limit;
                                ^
  regex_3/_regex.c:4324:40: error: expected expression before ‘)’ token
           text_pos = text_ptr - (Py_UCS2*)text;
                                          ^
  regex_3/_regex.c: In function ‘match_many_RANGE’:
  regex_3/_regex.c:4373:9: error: unknown type name ‘Py_UCS1’; did you mean ‘Py_UCS4’?
           Py_UCS1* text_ptr;
           ^~~~~~~
           Py_UCS4
  regex_3/_regex.c:4374:9: error: unknown type name ‘Py_UCS1’; did you mean ‘Py_UCS4’?
           Py_UCS1* limit_ptr;
           ^~~~~~~
           Py_UCS4
  regex_3/_regex.c:4376:21: error: ‘Py_UCS1’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
           text_ptr = (Py_UCS1*)text + text_pos;
                       ^~~~~~~
                       Py_UCS4
  regex_3/_regex.c:4376:29: error: expected expression before ‘)’ token
           text_ptr = (Py_UCS1*)text + text_pos;
                               ^
  regex_3/_regex.c:4377:30: error: expected expression before ‘)’ token
           limit_ptr = (Py_UCS1*)text + limit;
                                ^
  regex_3/_regex.c:4383:40: error: expected expression before ‘)’ token
           text_pos = text_ptr - (Py_UCS1*)text;
                                          ^
  regex_3/_regex.c:4388:9: error: unknown type name ‘Py_UCS2’; did you mean ‘Py_UCS4’?
           Py_UCS2* text_ptr;
           ^~~~~~~
           Py_UCS4
  regex_3/_regex.c:4389:9: error: unknown type name ‘Py_UCS2’; did you mean ‘Py_UCS4’?
           Py_UCS2* limit_ptr;
           ^~~~~~~
           Py_UCS4
  regex_3/_regex.c:4391:21: error: ‘Py_UCS2’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
           text_ptr = (Py_UCS2*)text + text_pos;
                       ^~~~~~~
                       Py_UCS4
  regex_3/_regex.c:4391:29: error: expected expression before ‘)’ token
           text_ptr = (Py_UCS2*)text + text_pos;
                               ^
  regex_3/_regex.c:4392:30: error: expected expression before ‘)’ token
           limit_ptr = (Py_UCS2*)text + limit;
                                ^
  regex_3/_regex.c:4398:40: error: expected expression before ‘)’ token
           text_pos = text_ptr - (Py_UCS2*)text;
                                          ^
  regex_3/_regex.c: In function ‘match_many_RANGE_IGN’:
  regex_3/_regex.c:4436:9: error: unknown type name ‘Py_UCS1’; did you mean ‘Py_UCS4’?
           Py_UCS1* text_ptr;
           ^~~~~~~
           Py_UCS4
  regex_3/_regex.c:4437:9: error: unknown type name ‘Py_UCS1’; did you mean ‘Py_UCS4’?
           Py_UCS1* limit_ptr;
           ^~~~~~~
           Py_UCS4
  regex_3/_regex.c:4439:21: error: ‘Py_UCS1’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
           text_ptr = (Py_UCS1*)text + text_pos;
                       ^~~~~~~
                       Py_UCS4
  regex_3/_regex.c:4439:29: error: expected expression before ‘)’ token
           text_ptr = (Py_UCS1*)text + text_pos;
                               ^
  regex_3/_regex.c:4440:30: error: expected expression before ‘)’ token
           limit_ptr = (Py_UCS1*)text + limit;
                                ^
  regex_3/_regex.c:4446:40: error: expected expression before ‘)’ token
           text_pos = text_ptr - (Py_UCS1*)text;
                                          ^
  regex_3/_regex.c:4451:9: error: unknown type name ‘Py_UCS2’; did you mean ‘Py_UCS4’?
           Py_UCS2* text_ptr;
           ^~~~~~~
           Py_UCS4
  regex_3/_regex.c:4452:9: error: unknown type name ‘Py_UCS2’; did you mean ‘Py_UCS4’?
           Py_UCS2* limit_ptr;
           ^~~~~~~
           Py_UCS4
  regex_3/_regex.c:4454:21: error: ‘Py_UCS2’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
           text_ptr = (Py_UCS2*)text + text_pos;
                       ^~~~~~~
                       Py_UCS4
  regex_3/_regex.c:4454:29: error: expected expression before ‘)’ token
           text_ptr = (Py_UCS2*)text + text_pos;
                               ^
  regex_3/_regex.c:4455:30: error: expected expression before ‘)’ token
           limit_ptr = (Py_UCS2*)text + limit;
                                ^
  regex_3/_regex.c:4461:40: error: expected expression before ‘)’ token
           text_pos = text_ptr - (Py_UCS2*)text;
                                          ^
  regex_3/_regex.c: In function ‘match_many_RANGE_IGN_REV’:
  regex_3/_regex.c:4499:9: error: unknown type name ‘Py_UCS1’; did you mean ‘Py_UCS4’?
           Py_UCS1* text_ptr;
           ^~~~~~~
           Py_UCS4
  regex_3/_regex.c:4500:9: error: unknown type name ‘Py_UCS1’; did you mean ‘Py_UCS4’?
           Py_UCS1* limit_ptr;
           ^~~~~~~
           Py_UCS4
  regex_3/_regex.c:4502:21: error: ‘Py_UCS1’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
           text_ptr = (Py_UCS1*)text + text_pos;
                       ^~~~~~~
                       Py_UCS4
  regex_3/_regex.c:4502:29: error: expected expression before ‘)’ token
           text_ptr = (Py_UCS1*)text + text_pos;
                               ^
  regex_3/_regex.c:4503:30: error: expected expression before ‘)’ token
           limit_ptr = (Py_UCS1*)text + limit;
                                ^
  regex_3/_regex.c:4509:40: error: expected expression before ‘)’ token
           text_pos = text_ptr - (Py_UCS1*)text;
                                          ^
  regex_3/_regex.c:4514:9: error: unknown type name ‘Py_UCS2’; did you mean ‘Py_UCS4’?
           Py_UCS2* text_ptr;
           ^~~~~~~
           Py_UCS4
  regex_3/_regex.c:4515:9: error: unknown type name ‘Py_UCS2’; did you mean ‘Py_UCS4’?
           Py_UCS2* limit_ptr;
           ^~~~~~~
           Py_UCS4
  regex_3/_regex.c:4517:21: error: ‘Py_UCS2’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
           text_ptr = (Py_UCS2*)text + text_pos;
                       ^~~~~~~
                       Py_UCS4
  regex_3/_regex.c:4517:29: error: expected expression before ‘)’ token
           text_ptr = (Py_UCS2*)text + text_pos;
                               ^
  regex_3/_regex.c:4518:30: error: expected expression before ‘)’ token
           limit_ptr = (Py_UCS2*)text + limit;
                                ^
  regex_3/_regex.c:4524:40: error: expected expression before ‘)’ token
           text_pos = text_ptr - (Py_UCS2*)text;
                                          ^
  regex_3/_regex.c: In function ‘match_many_RANGE_REV’:
  regex_3/_regex.c:4562:9: error: unknown type name ‘Py_UCS1’; did you mean ‘Py_UCS4’?
           Py_UCS1* text_ptr;
           ^~~~~~~
           Py_UCS4
  regex_3/_regex.c:4563:9: error: unknown type name ‘Py_UCS1’; did you mean ‘Py_UCS4’?
           Py_UCS1* limit_ptr;
           ^~~~~~~
           Py_UCS4
  regex_3/_regex.c:4565:21: error: ‘Py_UCS1’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
           text_ptr = (Py_UCS1*)text + text_pos;
                       ^~~~~~~
                       Py_UCS4
  regex_3/_regex.c:4565:29: error: expected expression before ‘)’ token
           text_ptr = (Py_UCS1*)text + text_pos;
                               ^
  regex_3/_regex.c:4566:30: error: expected expression before ‘)’ token
           limit_ptr = (Py_UCS1*)text + limit;
                                ^
  regex_3/_regex.c:4572:40: error: expected expression before ‘)’ token
           text_pos = text_ptr - (Py_UCS1*)text;
                                          ^
  regex_3/_regex.c:4577:9: error: unknown type name ‘Py_UCS2’; did you mean ‘Py_UCS4’?
           Py_UCS2* text_ptr;
           ^~~~~~~
           Py_UCS4
  regex_3/_regex.c:4578:9: error: unknown type name ‘Py_UCS2’; did you mean ‘Py_UCS4’?
           Py_UCS2* limit_ptr;
           ^~~~~~~
           Py_UCS4
  regex_3/_regex.c:4580:21: error: ‘Py_UCS2’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
           text_ptr = (Py_UCS2*)text + text_pos;
                       ^~~~~~~
                       Py_UCS4
  regex_3/_regex.c:4580:29: error: expected expression before ‘)’ token
           text_ptr = (Py_UCS2*)text + text_pos;
                               ^
  regex_3/_regex.c:4581:30: error: expected expression before ‘)’ token
           limit_ptr = (Py_UCS2*)text + limit;
                                ^
  regex_3/_regex.c:4587:40: error: expected expression before ‘)’ token
           text_pos = text_ptr - (Py_UCS2*)text;
                                          ^
  regex_3/_regex.c: In function ‘match_many_SET’:
  regex_3/_regex.c:4625:9: error: unknown type name ‘Py_UCS1’; did you mean ‘Py_UCS4’?
           Py_UCS1* text_ptr;
           ^~~~~~~
           Py_UCS4
  regex_3/_regex.c:4626:9: error: unknown type name ‘Py_UCS1’; did you mean ‘Py_UCS4’?
           Py_UCS1* limit_ptr;
           ^~~~~~~
           Py_UCS4
  regex_3/_regex.c:4628:21: error: ‘Py_UCS1’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
           text_ptr = (Py_UCS1*)text + text_pos;
                       ^~~~~~~
                       Py_UCS4
  regex_3/_regex.c:4628:29: error: expected expression before ‘)’ token
           text_ptr = (Py_UCS1*)text + text_pos;
                               ^
  regex_3/_regex.c:4629:30: error: expected expression before ‘)’ token
           limit_ptr = (Py_UCS1*)text + limit;
                                ^
  regex_3/_regex.c:4635:40: error: expected expression before ‘)’ token
           text_pos = text_ptr - (Py_UCS1*)text;
                                          ^
  regex_3/_regex.c:4640:9: error: unknown type name ‘Py_UCS2’; did you mean ‘Py_UCS4’?
           Py_UCS2* text_ptr;
           ^~~~~~~
           Py_UCS4
  regex_3/_regex.c:4641:9: error: unknown type name ‘Py_UCS2’; did you mean ‘Py_UCS4’?
           Py_UCS2* limit_ptr;
           ^~~~~~~
           Py_UCS4
  regex_3/_regex.c:4643:21: error: ‘Py_UCS2’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
           text_ptr = (Py_UCS2*)text + text_pos;
                       ^~~~~~~
                       Py_UCS4
  regex_3/_regex.c:4643:29: error: expected expression before ‘)’ token
           text_ptr = (Py_UCS2*)text + text_pos;
                               ^
  regex_3/_regex.c:4644:30: error: expected expression before ‘)’ token
           limit_ptr = (Py_UCS2*)text + limit;
                                ^
  regex_3/_regex.c:4650:40: error: expected expression before ‘)’ token
           text_pos = text_ptr - (Py_UCS2*)text;
                                          ^
  regex_3/_regex.c: In function ‘match_many_SET_IGN’:
  regex_3/_regex.c:4688:9: error: unknown type name ‘Py_UCS1’; did you mean ‘Py_UCS4’?
           Py_UCS1* text_ptr;
           ^~~~~~~
           Py_UCS4
  regex_3/_regex.c:4689:9: error: unknown type name ‘Py_UCS1’; did you mean ‘Py_UCS4’?
           Py_UCS1* limit_ptr;
           ^~~~~~~
           Py_UCS4
  regex_3/_regex.c:4691:21: error: ‘Py_UCS1’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
           text_ptr = (Py_UCS1*)text + text_pos;
                       ^~~~~~~
                       Py_UCS4
  regex_3/_regex.c:4691:29: error: expected expression before ‘)’ token
           text_ptr = (Py_UCS1*)text + text_pos;
                               ^
  regex_3/_regex.c:4692:30: error: expected expression before ‘)’ token
           limit_ptr = (Py_UCS1*)text + limit;
                                ^
  regex_3/_regex.c:4698:40: error: expected expression before ‘)’ token
           text_pos = text_ptr - (Py_UCS1*)text;
                                          ^
  regex_3/_regex.c:4703:9: error: unknown type name ‘Py_UCS2’; did you mean ‘Py_UCS4’?
           Py_UCS2* text_ptr;
           ^~~~~~~
           Py_UCS4
  regex_3/_regex.c:4704:9: error: unknown type name ‘Py_UCS2’; did you mean ‘Py_UCS4’?
           Py_UCS2* limit_ptr;
           ^~~~~~~
           Py_UCS4
  regex_3/_regex.c:4706:21: error: ‘Py_UCS2’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
           text_ptr = (Py_UCS2*)text + text_pos;
                       ^~~~~~~
                       Py_UCS4
  regex_3/_regex.c:4706:29: error: expected expression before ‘)’ token
           text_ptr = (Py_UCS2*)text + text_pos;
                               ^
  regex_3/_regex.c:4707:30: error: expected expression before ‘)’ token
           limit_ptr = (Py_UCS2*)text + limit;
                                ^
  regex_3/_regex.c:4713:40: error: expected expression before ‘)’ token
           text_pos = text_ptr - (Py_UCS2*)text;
                                          ^
  regex_3/_regex.c: In function ‘match_many_SET_IGN_REV’:
  regex_3/_regex.c:4751:9: error: unknown type name ‘Py_UCS1’; did you mean ‘Py_UCS4’?
           Py_UCS1* text_ptr;
           ^~~~~~~
           Py_UCS4
  regex_3/_regex.c:4752:9: error: unknown type name ‘Py_UCS1’; did you mean ‘Py_UCS4’?
           Py_UCS1* limit_ptr;
           ^~~~~~~
           Py_UCS4
  regex_3/_regex.c:4754:21: error: ‘Py_UCS1’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
           text_ptr = (Py_UCS1*)text + text_pos;
                       ^~~~~~~
                       Py_UCS4
  regex_3/_regex.c:4754:29: error: expected expression before ‘)’ token
           text_ptr = (Py_UCS1*)text + text_pos;
                               ^
  regex_3/_regex.c:4755:30: error: expected expression before ‘)’ token
           limit_ptr = (Py_UCS1*)text + limit;
                                ^
  regex_3/_regex.c:4761:40: error: expected expression before ‘)’ token
           text_pos = text_ptr - (Py_UCS1*)text;
                                          ^
  regex_3/_regex.c:4766:9: error: unknown type name ‘Py_UCS2’; did you mean ‘Py_UCS4’?
           Py_UCS2* text_ptr;
           ^~~~~~~
           Py_UCS4
  regex_3/_regex.c:4767:9: error: unknown type name ‘Py_UCS2’; did you mean ‘Py_UCS4’?
           Py_UCS2* limit_ptr;
           ^~~~~~~
           Py_UCS4
  regex_3/_regex.c:4769:21: error: ‘Py_UCS2’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
           text_ptr = (Py_UCS2*)text + text_pos;
                       ^~~~~~~
                       Py_UCS4
  regex_3/_regex.c:4769:29: error: expected expression before ‘)’ token
           text_ptr = (Py_UCS2*)text + text_pos;
                               ^
  regex_3/_regex.c:4770:30: error: expected expression before ‘)’ token
           limit_ptr = (Py_UCS2*)text + limit;
                                ^
  regex_3/_regex.c:4776:40: error: expected expression before ‘)’ token
           text_pos = text_ptr - (Py_UCS2*)text;
                                          ^
  regex_3/_regex.c: In function ‘match_many_SET_REV’:
  regex_3/_regex.c:4814:9: error: unknown type name ‘Py_UCS1’; did you mean ‘Py_UCS4’?
           Py_UCS1* text_ptr;
           ^~~~~~~
           Py_UCS4
  regex_3/_regex.c:4815:9: error: unknown type name ‘Py_UCS1’; did you mean ‘Py_UCS4’?
           Py_UCS1* limit_ptr;
           ^~~~~~~
           Py_UCS4
  regex_3/_regex.c:4817:21: error: ‘Py_UCS1’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
           text_ptr = (Py_UCS1*)text + text_pos;
                       ^~~~~~~
                       Py_UCS4
  regex_3/_regex.c:4817:29: error: expected expression before ‘)’ token
           text_ptr = (Py_UCS1*)text + text_pos;
                               ^
  regex_3/_regex.c:4818:30: error: expected expression before ‘)’ token
           limit_ptr = (Py_UCS1*)text + limit;
                                ^
  regex_3/_regex.c:4824:40: error: expected expression before ‘)’ token
           text_pos = text_ptr - (Py_UCS1*)text;
                                          ^
  regex_3/_regex.c:4829:9: error: unknown type name ‘Py_UCS2’; did you mean ‘Py_UCS4’?
           Py_UCS2* text_ptr;
           ^~~~~~~
           Py_UCS4
  regex_3/_regex.c:4830:9: error: unknown type name ‘Py_UCS2’; did you mean ‘Py_UCS4’?
           Py_UCS2* limit_ptr;
           ^~~~~~~
           Py_UCS4
  regex_3/_regex.c:4832:21: error: ‘Py_UCS2’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
           text_ptr = (Py_UCS2*)text + text_pos;
                       ^~~~~~~
                       Py_UCS4
  regex_3/_regex.c:4832:29: error: expected expression before ‘)’ token
           text_ptr = (Py_UCS2*)text + text_pos;
                               ^
  regex_3/_regex.c:4833:30: error: expected expression before ‘)’ token
           limit_ptr = (Py_UCS2*)text + limit;
                                ^
  regex_3/_regex.c:4839:40: error: expected expression before ‘)’ token
           text_pos = text_ptr - (Py_UCS2*)text;
                                          ^
  regex_3/_regex.c: In function ‘simple_string_search’:
  regex_3/_regex.c:5120:9: error: unknown type name ‘Py_UCS1’; did you mean ‘Py_UCS4’?
           Py_UCS1* text = (Py_UCS1*)state->text;
           ^~~~~~~
           Py_UCS4
  regex_3/_regex.c:5120:26: error: ‘Py_UCS1’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
           Py_UCS1* text = (Py_UCS1*)state->text;
                            ^~~~~~~
                            Py_UCS4
  regex_3/_regex.c:5120:34: error: expected expression before ‘)’ token
           Py_UCS1* text = (Py_UCS1*)state->text;
                                    ^
  regex_3/_regex.c:5121:18: error: ‘text_ptr’ undeclared (first use in this function); did you mean ‘text_pos’?
           Py_UCS1* text_ptr = text + text_pos;
                    ^~~~~~~~
                    text_pos
  regex_3/_regex.c:5122:18: error: ‘limit_ptr’ undeclared (first use in this function); did you mean ‘limit’?
           Py_UCS1* limit_ptr = text + limit;
                    ^~~~~~~~~
                    limit
  regex_3/_regex.c:5161:9: error: unknown type name ‘Py_UCS2’; did you mean ‘Py_UCS4’?
           Py_UCS2* text = (Py_UCS2*)state->text;
           ^~~~~~~
           Py_UCS4
  regex_3/_regex.c:5161:26: error: ‘Py_UCS2’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
           Py_UCS2* text = (Py_UCS2*)state->text;
                            ^~~~~~~
                            Py_UCS4
  regex_3/_regex.c:5161:34: error: expected expression before ‘)’ token
           Py_UCS2* text = (Py_UCS2*)state->text;
                                    ^
  regex_3/_regex.c: In function ‘simple_string_search_ign’:
  regex_3/_regex.c:5274:9: error: unknown type name ‘Py_UCS1’; did you mean ‘Py_UCS4’?
           Py_UCS1* text = (Py_UCS1*)state->text;
           ^~~~~~~
           Py_UCS4
  regex_3/_regex.c:5274:26: error: ‘Py_UCS1’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
           Py_UCS1* text = (Py_UCS1*)state->text;
                            ^~~~~~~
                            Py_UCS4
  regex_3/_regex.c:5274:34: error: expected expression before ‘)’ token
           Py_UCS1* text = (Py_UCS1*)state->text;
                                    ^
  regex_3/_regex.c:5275:18: error: ‘text_ptr’ undeclared (first use in this function); did you mean ‘text_pos’?
           Py_UCS1* text_ptr = text + text_pos;
                    ^~~~~~~~
                    text_pos
  regex_3/_regex.c:5276:18: error: ‘limit_ptr’ undeclared (first use in this function); did you mean ‘limit’?
           Py_UCS1* limit_ptr = text + limit;
                    ^~~~~~~~~
                    limit
  regex_3/_regex.c:5316:9: error: unknown type name ‘Py_UCS2’; did you mean ‘Py_UCS4’?
           Py_UCS2* text = (Py_UCS2*)state->text;
           ^~~~~~~
           Py_UCS4
  regex_3/_regex.c:5316:26: error: ‘Py_UCS2’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
           Py_UCS2* text = (Py_UCS2*)state->text;
                            ^~~~~~~
                            Py_UCS4
  regex_3/_regex.c:5316:34: error: expected expression before ‘)’ token
           Py_UCS2* text = (Py_UCS2*)state->text;
                                    ^
  regex_3/_regex.c: In function ‘simple_string_search_ign_rev’:
  regex_3/_regex.c:5431:9: error: unknown type name ‘Py_UCS1’; did you mean ‘Py_UCS4’?
           Py_UCS1* text = (Py_UCS1*)state->text;
           ^~~~~~~
           Py_UCS4
  regex_3/_regex.c:5431:26: error: ‘Py_UCS1’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
           Py_UCS1* text = (Py_UCS1*)state->text;
                            ^~~~~~~
                            Py_UCS4
  regex_3/_regex.c:5431:34: error: expected expression before ‘)’ token
           Py_UCS1* text = (Py_UCS1*)state->text;
                                    ^
  regex_3/_regex.c:5432:18: error: ‘text_ptr’ undeclared (first use in this function); did you mean ‘text_pos’?
           Py_UCS1* text_ptr = text + text_pos;
                    ^~~~~~~~
                    text_pos
  regex_3/_regex.c:5433:18: error: ‘limit_ptr’ undeclared (first use in this function); did you mean ‘limit’?
           Py_UCS1* limit_ptr = text + limit;
                    ^~~~~~~~~
                    limit
  regex_3/_regex.c:5473:9: error: unknown type name ‘Py_UCS2’; did you mean ‘Py_UCS4’?
           Py_UCS2* text = (Py_UCS2*)state->text;
           ^~~~~~~
           Py_UCS4
  regex_3/_regex.c:5473:26: error: ‘Py_UCS2’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
           Py_UCS2* text = (Py_UCS2*)state->text;
                            ^~~~~~~
                            Py_UCS4
  regex_3/_regex.c:5473:34: error: expected expression before ‘)’ token
           Py_UCS2* text = (Py_UCS2*)state->text;
                                    ^
  regex_3/_regex.c: In function ‘simple_string_search_rev’:
  regex_3/_regex.c:5583:9: error: unknown type name ‘Py_UCS1’; did you mean ‘Py_UCS4’?
           Py_UCS1* text = (Py_UCS1*)state->text;
           ^~~~~~~
           Py_UCS4
  regex_3/_regex.c:5583:26: error: ‘Py_UCS1’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
           Py_UCS1* text = (Py_UCS1*)state->text;
                            ^~~~~~~
                            Py_UCS4
  regex_3/_regex.c:5583:34: error: expected expression before ‘)’ token
           Py_UCS1* text = (Py_UCS1*)state->text;
                                    ^
  regex_3/_regex.c:5584:18: error: ‘text_ptr’ undeclared (first use in this function); did you mean ‘text_pos’?
           Py_UCS1* text_ptr = text + text_pos;
                    ^~~~~~~~
                    text_pos
  regex_3/_regex.c:5585:18: error: ‘limit_ptr’ undeclared (first use in this function); did you mean ‘limit’?
           Py_UCS1* limit_ptr = text + limit;
                    ^~~~~~~~~
                    limit
  regex_3/_regex.c:5625:9: error: unknown type name ‘Py_UCS2’; did you mean ‘Py_UCS4’?
           Py_UCS2* text = (Py_UCS2*)state->text;
           ^~~~~~~
           Py_UCS4
  regex_3/_regex.c:5625:26: error: ‘Py_UCS2’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
           Py_UCS2* text = (Py_UCS2*)state->text;
                            ^~~~~~~
                            Py_UCS4
  regex_3/_regex.c:5625:34: error: expected expression before ‘)’ token
           Py_UCS2* text = (Py_UCS2*)state->text;
                                    ^
  regex_3/_regex.c: In function ‘fast_string_search’:
  regex_3/_regex.c:5742:9: error: unknown type name ‘Py_UCS1’; did you mean ‘Py_UCS4’?
           Py_UCS1* text_ptr;
           ^~~~~~~
           Py_UCS4
  regex_3/_regex.c:5743:9: error: unknown type name ‘Py_UCS1’; did you mean ‘Py_UCS4’?
           Py_UCS1* limit_ptr;
           ^~~~~~~
           Py_UCS4
  regex_3/_regex.c:5745:21: error: ‘Py_UCS1’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
           text_ptr = (Py_UCS1*)text + text_pos;
                       ^~~~~~~
                       Py_UCS4
  regex_3/_regex.c:5745:29: error: expected expression before ‘)’ token
           text_ptr = (Py_UCS1*)text + text_pos;
                               ^
  regex_3/_regex.c:5746:30: error: expected expression before ‘)’ token
           limit_ptr = (Py_UCS1*)text + limit;
                                ^
  regex_3/_regex.c:5760:48: error: expected expression before ‘)’ token
                       return text_ptr - (Py_UCS1*)text;
                                                  ^
  regex_3/_regex.c:5770:9: error: unknown type name ‘Py_UCS2’; did you mean ‘Py_UCS4’?
           Py_UCS2* text_ptr;
           ^~~~~~~
           Py_UCS4
  regex_3/_regex.c:5771:9: error: unknown type name ‘Py_UCS2’; did you mean ‘Py_UCS4’?
           Py_UCS2* limit_ptr;
           ^~~~~~~
           Py_UCS4
  regex_3/_regex.c:5773:21: error: ‘Py_UCS2’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
           text_ptr = (Py_UCS2*)text + text_pos;
                       ^~~~~~~
                       Py_UCS4
  regex_3/_regex.c:5773:29: error: expected expression before ‘)’ token
           text_ptr = (Py_UCS2*)text + text_pos;
                               ^
  regex_3/_regex.c:5774:30: error: expected expression before ‘)’ token
           limit_ptr = (Py_UCS2*)text + limit;
                                ^
  regex_3/_regex.c:5788:48: error: expected expression before ‘)’ token
                       return text_ptr - (Py_UCS2*)text;
                                                  ^
  regex_3/_regex.c: In function ‘fast_string_search_ign’:
  regex_3/_regex.c:5857:9: error: unknown type name ‘Py_UCS1’; did you mean ‘Py_UCS4’?
           Py_UCS1* text_ptr;
           ^~~~~~~
           Py_UCS4
  regex_3/_regex.c:5858:9: error: unknown type name ‘Py_UCS1’; did you mean ‘Py_UCS4’?
           Py_UCS1* limit_ptr;
           ^~~~~~~
           Py_UCS4
  regex_3/_regex.c:5860:21: error: ‘Py_UCS1’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
           text_ptr = (Py_UCS1*)text + text_pos;
                       ^~~~~~~
                       Py_UCS4
  regex_3/_regex.c:5860:29: error: expected expression before ‘)’ token
           text_ptr = (Py_UCS1*)text + text_pos;
                               ^
  regex_3/_regex.c:5861:30: error: expected expression before ‘)’ token
           limit_ptr = (Py_UCS1*)text + limit;
                                ^
  regex_3/_regex.c:5876:48: error: expected expression before ‘)’ token
                       return text_ptr - (Py_UCS1*)text;
                                                  ^
  regex_3/_regex.c:5886:9: error: unknown type name ‘Py_UCS2’; did you mean ‘Py_UCS4’?
           Py_UCS2* text_ptr;
           ^~~~~~~
           Py_UCS4
  regex_3/_regex.c:5887:9: error: unknown type name ‘Py_UCS2’; did you mean ‘Py_UCS4’?
           Py_UCS2* limit_ptr;
           ^~~~~~~
           Py_UCS4
  regex_3/_regex.c:5889:21: error: ‘Py_UCS2’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
           text_ptr = (Py_UCS2*)text + text_pos;
                       ^~~~~~~
                       Py_UCS4
  regex_3/_regex.c:5889:29: error: expected expression before ‘)’ token
           text_ptr = (Py_UCS2*)text + text_pos;
                               ^
  regex_3/_regex.c:5890:30: error: expected expression before ‘)’ token
           limit_ptr = (Py_UCS2*)text + limit;
                                ^
  regex_3/_regex.c:5905:48: error: expected expression before ‘)’ token
                       return text_ptr - (Py_UCS2*)text;
                                                  ^
  regex_3/_regex.c: In function ‘fast_string_search_ign_rev’:
  regex_3/_regex.c:5973:9: error: unknown type name ‘Py_UCS1’; did you mean ‘Py_UCS4’?
           Py_UCS1* text_ptr;
           ^~~~~~~
           Py_UCS4
  regex_3/_regex.c:5974:9: error: unknown type name ‘Py_UCS1’; did you mean ‘Py_UCS4’?
           Py_UCS1* limit_ptr;
           ^~~~~~~
           Py_UCS4
  regex_3/_regex.c:5976:21: error: ‘Py_UCS1’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
           text_ptr = (Py_UCS1*)text + text_pos;
                       ^~~~~~~
                       Py_UCS4
  regex_3/_regex.c:5976:29: error: expected expression before ‘)’ token
           text_ptr = (Py_UCS1*)text + text_pos;
                               ^
  regex_3/_regex.c:5977:30: error: expected expression before ‘)’ token
           limit_ptr = (Py_UCS1*)text + limit;
                                ^
  regex_3/_regex.c:5992:48: error: expected expression before ‘)’ token
                       return text_ptr - (Py_UCS1*)text + length;
                                                  ^
  regex_3/_regex.c:6002:9: error: unknown type name ‘Py_UCS2’; did you mean ‘Py_UCS4’?
           Py_UCS2* text_ptr;
           ^~~~~~~
           Py_UCS4
  regex_3/_regex.c:6003:9: error: unknown type name ‘Py_UCS2’; did you mean ‘Py_UCS4’?
           Py_UCS2* limit_ptr;
           ^~~~~~~
           Py_UCS4
  regex_3/_regex.c:6005:21: error: ‘Py_UCS2’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
           text_ptr = (Py_UCS2*)text + text_pos;
                       ^~~~~~~
                       Py_UCS4
  regex_3/_regex.c:6005:29: error: expected expression before ‘)’ token
           text_ptr = (Py_UCS2*)text + text_pos;
                               ^
  regex_3/_regex.c:6006:30: error: expected expression before ‘)’ token
           limit_ptr = (Py_UCS2*)text + limit;
                                ^
  regex_3/_regex.c:6021:48: error: expected expression before ‘)’ token
                       return text_ptr - (Py_UCS2*)text + length;
                                                  ^
  regex_3/_regex.c: In function ‘fast_string_search_rev’:
  regex_3/_regex.c:6084:9: error: unknown type name ‘Py_UCS1’; did you mean ‘Py_UCS4’?
           Py_UCS1* text_ptr;
           ^~~~~~~
           Py_UCS4
  regex_3/_regex.c:6085:9: error: unknown type name ‘Py_UCS1’; did you mean ‘Py_UCS4’?
           Py_UCS1* limit_ptr;
           ^~~~~~~
           Py_UCS4
  regex_3/_regex.c:6087:21: error: ‘Py_UCS1’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
           text_ptr = (Py_UCS1*)text + text_pos;
                       ^~~~~~~
                       Py_UCS4
  regex_3/_regex.c:6087:29: error: expected expression before ‘)’ token
           text_ptr = (Py_UCS1*)text + text_pos;
                               ^
  regex_3/_regex.c:6088:30: error: expected expression before ‘)’ token
           limit_ptr = (Py_UCS1*)text + limit;
                                ^
  regex_3/_regex.c:6102:48: error: expected expression before ‘)’ token
                       return text_ptr - (Py_UCS1*)text + length;
                                                  ^
  regex_3/_regex.c:6112:9: error: unknown type name ‘Py_UCS2’; did you mean ‘Py_UCS4’?
           Py_UCS2* text_ptr;
           ^~~~~~~
           Py_UCS4
  regex_3/_regex.c:6113:9: error: unknown type name ‘Py_UCS2’; did you mean ‘Py_UCS4’?
           Py_UCS2* limit_ptr;
           ^~~~~~~
           Py_UCS4
  regex_3/_regex.c:6115:21: error: ‘Py_UCS2’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
           text_ptr = (Py_UCS2*)text + text_pos;
                       ^~~~~~~
                       Py_UCS4
  regex_3/_regex.c:6115:29: error: expected expression before ‘)’ token
           text_ptr = (Py_UCS2*)text + text_pos;
                               ^
  regex_3/_regex.c:6116:30: error: expected expression before ‘)’ token
           limit_ptr = (Py_UCS2*)text + limit;
                                ^
  regex_3/_regex.c:6130:48: error: expected expression before ‘)’ token
                       return text_ptr - (Py_UCS2*)text + length;
                                                  ^
  regex_3/_regex.c: In function ‘build_unicode_value’:
  regex_3/_regex.c:9478:16: error: ‘PyUnicode_1BYTE_KIND’ undeclared (first use in this function); did you mean ‘PyUnicode_GET_SIZE’?
           kind = PyUnicode_1BYTE_KIND;
                  ^~~~~~~~~~~~~~~~~~~~
                  PyUnicode_GET_SIZE
  regex_3/_regex.c:9481:16: error: ‘PyUnicode_2BYTE_KIND’ undeclared (first use in this function); did you mean ‘PyUnicode_GET_SIZE’?
           kind = PyUnicode_2BYTE_KIND;
                  ^~~~~~~~~~~~~~~~~~~~
                  PyUnicode_GET_SIZE
  regex_3/_regex.c:9484:16: error: ‘PyUnicode_4BYTE_KIND’ undeclared (first use in this function); did you mean ‘PyUnicode_GET_SIZE’?
           kind = PyUnicode_4BYTE_KIND;
                  ^~~~~~~~~~~~~~~~~~~~
                  PyUnicode_GET_SIZE
  regex_3/_regex.c:9491:12: warning: implicit declaration of function ‘PyUnicode_FromKindAndData’; did you mean ‘PyUnicode_FromOrdinal’? [-Wimplicit-function-declaration]
       return PyUnicode_FromKindAndData(kind, buffer, len);
              ^~~~~~~~~~~~~~~~~~~~~~~~~
              PyUnicode_FromOrdinal
  regex_3/_regex.c:9491:12: warning: returning ‘int’ from a function with return type ‘PyObject *’ {aka ‘struct _object *’} makes pointer from integer without a cast [-Wint-conversion]
       return PyUnicode_FromKindAndData(kind, buffer, len);
              ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  regex_3/_regex.c: In function ‘build_bytes_value’:
  regex_3/_regex.c:9499:5: error: unknown type name ‘Py_UCS1’; did you mean ‘Py_UCS4’?
       Py_UCS1* byte_buffer;
       ^~~~~~~
       Py_UCS4
  regex_3/_regex.c:9514:9: error: unknown type name ‘Py_UCS2’; did you mean ‘Py_UCS4’?
           Py_UCS2 c = ((Py_UCS2*)buffer)[i];
           ^~~~~~~
           Py_UCS4
  regex_3/_regex.c:9514:23: error: ‘Py_UCS2’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
           Py_UCS2 c = ((Py_UCS2*)buffer)[i];
                         ^~~~~~~
                         Py_UCS4
  regex_3/_regex.c:9514:31: error: expected expression before ‘)’ token
           Py_UCS2 c = ((Py_UCS2*)buffer)[i];
                                 ^
  regex_3/_regex.c:9518:27: error: ‘Py_UCS1’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
           byte_buffer[i] = (Py_UCS1)c;
                             ^~~~~~~
                             Py_UCS4
  regex_3/_regex.c:9518:35: error: expected ‘;’ before ‘c’
           byte_buffer[i] = (Py_UCS1)c;
                                     ^
                                     ;
  regex_3/_regex.c: In function ‘get_string’:
  regex_3/_regex.c:18037:13: warning: implicit declaration of function ‘PyUnicode_READY’; did you mean ‘PyUnicode_Check’? [-Wimplicit-function-declaration]
           if (PyUnicode_READY(string) == -1)
               ^~~~~~~~~~~~~~~
               PyUnicode_Check
  regex_3/_regex.c:18040:39: warning: implicit declaration of function ‘PyUnicode_DATA’; did you mean ‘PyUnicode_AS_DATA’? [-Wimplicit-function-declaration]
           str_info->characters = (void*)PyUnicode_DATA(string);
                                         ^~~~~~~~~~~~~~
                                         PyUnicode_AS_DATA
  regex_3/_regex.c:18040:32: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
           str_info->characters = (void*)PyUnicode_DATA(string);
                                  ^
  regex_3/_regex.c:18041:28: warning: implicit declaration of function ‘PyUnicode_GET_LENGTH’; did you mean ‘PyUnicode_GET_SIZE’? [-Wimplicit-function-declaration]
           str_info->length = PyUnicode_GET_LENGTH(string);
                              ^~~~~~~~~~~~~~~~~~~~
                              PyUnicode_GET_SIZE
  regex_3/_regex.c:18042:30: warning: implicit declaration of function ‘PyUnicode_KIND’; did you mean ‘PyUnicode_Join’? [-Wimplicit-function-declaration]
           str_info->charsize = PyUnicode_KIND(string);
                                ^~~~~~~~~~~~~~
                                PyUnicode_Join
  regex_3/_regex.c: In function ‘ensure_immutable’:
  regex_3/_regex.c:18557:22: warning: implicit declaration of function ‘PyBytes_FromObject’; did you mean ‘PyBuffer_FromObject’? [-Wimplicit-function-declaration]
           new_string = PyBytes_FromObject(string);
                        ^~~~~~~~~~~~~~~~~~
                        PyBuffer_FromObject
  regex_3/_regex.c:18557:20: warning: assignment to ‘PyObject *’ {aka ‘struct _object *’} from ‘int’ makes pointer from integer without a cast [-Wint-conversion]
           new_string = PyBytes_FromObject(string);
                      ^
  regex_3/_regex.c: In function ‘unicode_slice’:
  regex_3/_regex.c:18585:12: warning: implicit declaration of function ‘PyUnicode_Substring’; did you mean ‘PyUnicode_FromString’? [-Wimplicit-function-declaration]
       return PyUnicode_Substring(string, start, end);
              ^~~~~~~~~~~~~~~~~~~
              PyUnicode_FromString
  regex_3/_regex.c:18585:12: warning: returning ‘int’ from a function with return type ‘PyObject *’ {aka ‘struct _object *’} makes pointer from integer without a cast [-Wint-conversion]
       return PyUnicode_Substring(string, start, end);
              ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  regex_3/_regex.c: In function ‘add_to_join_list’:
  regex_3/_regex.c:19408:22: warning: assignment to ‘PyObject *’ {aka ‘struct _object *’} from ‘int’ makes pointer from integer without a cast [-Wint-conversion]
               new_item = PyBytes_FromObject(item);
                        ^
  regex_3/_regex.c: In function ‘join_list_info’:
  regex_3/_regex.c:19475:22: warning: implicit declaration of function ‘PyUnicode_New’; did you mean ‘PyCode_New’? [-Wimplicit-function-declaration]
               joiner = PyUnicode_New(0, 0);
                        ^~~~~~~~~~~~~
                        PyCode_New
  regex_3/_regex.c:19475:20: warning: assignment to ‘PyObject *’ {aka ‘struct _object *’} from ‘int’ makes pointer from integer without a cast [-Wint-conversion]
               joiner = PyUnicode_New(0, 0);
                      ^
  regex_3/_regex.c:19505:16: warning: returning ‘int’ from a function with return type ‘PyObject *’ {aka ‘struct _object *’} makes pointer from integer without a cast [-Wint-conversion]
           return PyUnicode_New(0, 0);
                  ^~~~~~~~~~~~~~~~~~~
  regex_3/_regex.c: In function ‘match_get_group_slice’:
  regex_3/_regex.c:19809:30: warning: passing argument 1 of ‘PySlice_GetIndicesEx’ from incompatible pointer type [-Wincompatible-pointer-types]
       if (PySlice_GetIndicesEx(slice, (Py_ssize_t)self->group_count + 1, &start,
                                ^~~~~
  In file included from /usr/include/python2.7/Python.h:115,
                   from regex_3/_regex.c:50:
  /usr/include/python2.7/sliceobject.h:37:53: note: expected ‘PySliceObject *’ {aka ‘struct <anonymous> *’} but argument is of type ‘PyObject *’ {aka ‘struct _object *’}
   PyAPI_FUNC(int) PySlice_GetIndicesEx(PySliceObject *r, Py_ssize_t length,
                                        ~~~~~~~~~~~~~~~^
  regex_3/_regex.c: In function ‘index_to_integer’:
  regex_3/_regex.c:21024:19: warning: implicit declaration of function ‘PyLong_FromUnicodeObject’; did you mean ‘PyLong_FromUnicode’? [-Wimplicit-function-declaration]
           int_obj = PyLong_FromUnicodeObject(item, 0);
                     ^~~~~~~~~~~~~~~~~~~~~~~~
                     PyLong_FromUnicode
  regex_3/_regex.c:21024:17: warning: assignment to ‘PyObject *’ {aka ‘struct _object *’} from ‘int’ makes pointer from integer without a cast [-Wint-conversion]
           int_obj = PyLong_FromUnicodeObject(item, 0);
                   ^
  regex_3/_regex.c: In function ‘pattern_sizeof’:
  regex_3/_regex.c:22280:13: warning: implicit declaration of function ‘PyLong_AsSize_t’; did you mean ‘PyLong_AsSsize_t’? [-Wimplicit-function-declaration]
       size += PyLong_AsSize_t(result);
               ^~~~~~~~~~~~~~~
               PyLong_AsSsize_t
  regex_3/_regex.c: At top level:
  regex_3/_regex.c:26217:15: error: variable ‘regex_module’ has initializer but incomplete type
   static struct PyModuleDef regex_module = {
                 ^~~~~~~~~~~
  regex_3/_regex.c:26218:5: error: ‘PyModuleDef_HEAD_INIT’ undeclared here (not in a function); did you mean ‘PyObject_HEAD_INIT’?
       PyModuleDef_HEAD_INIT,
       ^~~~~~~~~~~~~~~~~~~~~
       PyObject_HEAD_INIT
  regex_3/_regex.c:26218:5: warning: excess elements in struct initializer
  regex_3/_regex.c:26218:5: note: (near initialization for ‘regex_module’)
  regex_3/_regex.c:26219:5: warning: excess elements in struct initializer
       "_regex",
       ^~~~~~~~
  regex_3/_regex.c:26219:5: note: (near initialization for ‘regex_module’)
  regex_3/_regex.c:26220:5: warning: excess elements in struct initializer
       NULL,
       ^~~~
  regex_3/_regex.c:26220:5: note: (near initialization for ‘regex_module’)
  regex_3/_regex.c:26221:5: warning: excess elements in struct initializer
       -1,
       ^
  regex_3/_regex.c:26221:5: note: (near initialization for ‘regex_module’)
  regex_3/_regex.c:26222:5: warning: excess elements in struct initializer
       _functions,
       ^~~~~~~~~~
  regex_3/_regex.c:26222:5: note: (near initialization for ‘regex_module’)
  regex_3/_regex.c:26223:5: warning: excess elements in struct initializer
       NULL,
       ^~~~
  regex_3/_regex.c:26223:5: note: (near initialization for ‘regex_module’)
  regex_3/_regex.c:26224:5: warning: excess elements in struct initializer
       NULL,
       ^~~~
  regex_3/_regex.c:26224:5: note: (near initialization for ‘regex_module’)
  regex_3/_regex.c:26225:5: warning: excess elements in struct initializer
       NULL,
       ^~~~
  regex_3/_regex.c:26225:5: note: (near initialization for ‘regex_module’)
  regex_3/_regex.c:26226:5: warning: excess elements in struct initializer
       NULL
       ^~~~
  regex_3/_regex.c:26226:5: note: (near initialization for ‘regex_module’)
  regex_3/_regex.c: In function ‘PyInit__regex’:
  regex_3/_regex.c:26287:16: warning: ‘return’ with a value, in function returning void
           return NULL;
                  ^~~~
  regex_3/_regex.c:26230:16: note: declared here
   PyMODINIT_FUNC PyInit__regex(void) {
                  ^~~~~~~~~~~~~
  regex_3/_regex.c:26289:16: warning: ‘return’ with a value, in function returning void
           return NULL;
                  ^~~~
  regex_3/_regex.c:26230:16: note: declared here
   PyMODINIT_FUNC PyInit__regex(void) {
                  ^~~~~~~~~~~~~
  regex_3/_regex.c:26291:16: warning: ‘return’ with a value, in function returning void
           return NULL;
                  ^~~~
  regex_3/_regex.c:26230:16: note: declared here
   PyMODINIT_FUNC PyInit__regex(void) {
                  ^~~~~~~~~~~~~
  regex_3/_regex.c:26293:16: warning: ‘return’ with a value, in function returning void
           return NULL;
                  ^~~~
  regex_3/_regex.c:26230:16: note: declared here
   PyMODINIT_FUNC PyInit__regex(void) {
                  ^~~~~~~~~~~~~
  regex_3/_regex.c:26295:16: warning: ‘return’ with a value, in function returning void
           return NULL;
                  ^~~~
  regex_3/_regex.c:26230:16: note: declared here
   PyMODINIT_FUNC PyInit__regex(void) {
                  ^~~~~~~~~~~~~
  regex_3/_regex.c:26299:9: warning: implicit declaration of function ‘PyModule_Create’; did you mean ‘PyModule_Check’? [-Wimplicit-function-declaration]
       m = PyModule_Create(&regex_module);
           ^~~~~~~~~~~~~~~
           PyModule_Check
  regex_3/_regex.c:26299:7: warning: assignment to ‘PyObject *’ {aka ‘struct _object *’} from ‘int’ makes pointer from integer without a cast [-Wint-conversion]
       m = PyModule_Create(&regex_module);
         ^
  regex_3/_regex.c:26301:16: warning: ‘return’ with a value, in function returning void
           return NULL;
                  ^~~~
  regex_3/_regex.c:26230:16: note: declared here
   PyMODINIT_FUNC PyInit__regex(void) {
                  ^~~~~~~~~~~~~
  regex_3/_regex.c:26326:16: warning: ‘return’ with a value, in function returning void
           return NULL;
                  ^~~~
  regex_3/_regex.c:26230:16: note: declared here
   PyMODINIT_FUNC PyInit__regex(void) {
                  ^~~~~~~~~~~~~
  regex_3/_regex.c:26329:12: warning: ‘return’ with a value, in function returning void
       return m;
              ^
  regex_3/_regex.c:26230:16: note: declared here
   PyMODINIT_FUNC PyInit__regex(void) {
                  ^~~~~~~~~~~~~
  regex_3/_regex.c: At top level:
  regex_3/_regex.c:26217:27: error: storage size of ‘regex_module’ isn’t known
   static struct PyModuleDef regex_module = {
                             ^~~~~~~~~~~~
  regex_3/_regex.c: In function ‘bytes2_char_at’:
  regex_3/_regex.c:771:1: warning: control reaches end of non-void function [-Wreturn-type]
   }
   ^
  regex_3/_regex.c: In function ‘bytes1_char_at’:
  regex_3/_regex.c:756:1: warning: control reaches end of non-void function [-Wreturn-type]
   }
   ^
  regex_3/_regex.c: In function ‘bytes2_point_to’:
  regex_3/_regex.c:781:1: warning: control reaches end of non-void function [-Wreturn-type]
   }
   ^
  regex_3/_regex.c: In function ‘bytes1_point_to’:
  regex_3/_regex.c:766:1: warning: control reaches end of non-void function [-Wreturn-type]
   }
   ^
  error: command 'x86_64-linux-gnu-gcc' failed with exit status 1
  ----------------------------------------
  ERROR: Failed building wheel for regex
  Running setup.py clean for regex
Failed to build regex
Installing collected packages: regex
    Running setup.py install for regex: started
    Running setup.py install for regex: finished with status 'error'
    ERROR: Command errored out with exit status 1:
     command: /workspace/lims/venv/bin/python -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-wRqfdU/regex/setup.py'"'"'; __file__='"'"'/tmp/pip-install-wRqfdU/regex/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' install --record /tmp/pip-record-PxZeHD/install-record.txt --single-version-externally-managed --compile --install-headers /workspace/lims/venv/include/site/python2.7/regex
         cwd: /tmp/pip-install-wRqfdU/regex/
    Complete output (1469 lines):
    running install
    running build
    running build_py
    creating build
    creating build/lib.linux-x86_64-2.7
    creating build/lib.linux-x86_64-2.7/regex
    copying regex_3/__init__.py -> build/lib.linux-x86_64-2.7/regex
    copying regex_3/regex.py -> build/lib.linux-x86_64-2.7/regex
    copying regex_3/_regex_core.py -> build/lib.linux-x86_64-2.7/regex
    copying regex_3/test_regex.py -> build/lib.linux-x86_64-2.7/regex
    running build_ext
    building 'regex._regex' extension
    creating build/temp.linux-x86_64-2.7
    creating build/temp.linux-x86_64-2.7/regex_3
    x86_64-linux-gnu-gcc -pthread -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fno-strict-aliasing -Wdate-time -D_FORTIFY_SOURCE=2 -g -fdebug-prefix-map=/build/python2.7-2.7.16=. -fstack-protector-strong -Wformat -Werror=format-security -fPIC -I/usr/include/python2.7 -c regex_3/_regex.c -o build/temp.linux-x86_64-2.7/regex_3/_regex.o
    regex_3/_regex.c: In function ‘bytes1_char_at’:
    regex_3/_regex.c:755:15: error: ‘Py_UCS1’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
         return *((Py_UCS1*)text + pos);
                   ^~~~~~~
                   Py_UCS4
    regex_3/_regex.c:755:15: note: each undeclared identifier is reported only once for each function it appears in
    regex_3/_regex.c:755:23: error: expected expression before ‘)’ token
         return *((Py_UCS1*)text + pos);
                           ^
    regex_3/_regex.c: In function ‘bytes1_set_char_at’:
    regex_3/_regex.c:760:8: error: ‘Py_UCS1’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
         *((Py_UCS1*)text + pos) = (Py_UCS1)ch;
            ^~~~~~~
            Py_UCS4
    regex_3/_regex.c:760:16: error: expected expression before ‘)’ token
         *((Py_UCS1*)text + pos) = (Py_UCS1)ch;
                    ^
    regex_3/_regex.c:760:40: error: expected ‘;’ before ‘ch’
         *((Py_UCS1*)text + pos) = (Py_UCS1)ch;
                                            ^~
                                            ;
    regex_3/_regex.c: In function ‘bytes1_point_to’:
    regex_3/_regex.c:765:13: error: ‘Py_UCS1’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
         return (Py_UCS1*)text + pos;
                 ^~~~~~~
                 Py_UCS4
    regex_3/_regex.c:765:21: error: expected expression before ‘)’ token
         return (Py_UCS1*)text + pos;
                         ^
    regex_3/_regex.c: In function ‘bytes2_char_at’:
    regex_3/_regex.c:770:15: error: ‘Py_UCS2’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
         return *((Py_UCS2*)text + pos);
                   ^~~~~~~
                   Py_UCS4
    regex_3/_regex.c:770:23: error: expected expression before ‘)’ token
         return *((Py_UCS2*)text + pos);
                           ^
    regex_3/_regex.c: In function ‘bytes2_set_char_at’:
    regex_3/_regex.c:775:8: error: ‘Py_UCS2’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
         *((Py_UCS2*)text + pos) = (Py_UCS2)ch;
            ^~~~~~~
            Py_UCS4
    regex_3/_regex.c:775:16: error: expected expression before ‘)’ token
         *((Py_UCS2*)text + pos) = (Py_UCS2)ch;
                    ^
    regex_3/_regex.c:775:40: error: expected ‘;’ before ‘ch’
         *((Py_UCS2*)text + pos) = (Py_UCS2)ch;
                                            ^~
                                            ;
    regex_3/_regex.c: In function ‘bytes2_point_to’:
    regex_3/_regex.c:780:13: error: ‘Py_UCS2’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
         return (Py_UCS2*)text + pos;
                 ^~~~~~~
                 Py_UCS4
    regex_3/_regex.c:780:21: error: expected expression before ‘)’ token
         return (Py_UCS2*)text + pos;
                         ^
    regex_3/_regex.c: In function ‘set_error’:
    regex_3/_regex.c:2103:25: error: ‘PyExc_TimeoutError’ undeclared (first use in this function); did you mean ‘PyExc_ImportError’?
             PyErr_SetString(PyExc_TimeoutError, "regex timed out");
                             ^~~~~~~~~~~~~~~~~~
                             PyExc_ImportError
    regex_3/_regex.c: In function ‘match_many_ANY’:
    regex_3/_regex.c:3468:9: error: unknown type name ‘Py_UCS1’; did you mean ‘Py_UCS4’?
             Py_UCS1* text_ptr;
             ^~~~~~~
             Py_UCS4
    regex_3/_regex.c:3469:9: error: unknown type name ‘Py_UCS1’; did you mean ‘Py_UCS4’?
             Py_UCS1* limit_ptr;
             ^~~~~~~
             Py_UCS4
    regex_3/_regex.c:3471:21: error: ‘Py_UCS1’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
             text_ptr = (Py_UCS1*)text + text_pos;
                         ^~~~~~~
                         Py_UCS4
    regex_3/_regex.c:3471:29: error: expected expression before ‘)’ token
             text_ptr = (Py_UCS1*)text + text_pos;
                                 ^
    regex_3/_regex.c:3472:30: error: expected expression before ‘)’ token
             limit_ptr = (Py_UCS1*)text + limit;
                                  ^
    regex_3/_regex.c:3477:40: error: expected expression before ‘)’ token
             text_pos = text_ptr - (Py_UCS1*)text;
                                            ^
    regex_3/_regex.c:3482:9: error: unknown type name ‘Py_UCS2’; did you mean ‘Py_UCS4’?
             Py_UCS2* text_ptr;
             ^~~~~~~
             Py_UCS4
    regex_3/_regex.c:3483:9: error: unknown type name ‘Py_UCS2’; did you mean ‘Py_UCS4’?
             Py_UCS2* limit_ptr;
             ^~~~~~~
             Py_UCS4
    regex_3/_regex.c:3485:21: error: ‘Py_UCS2’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
             text_ptr = (Py_UCS2*)text + text_pos;
                         ^~~~~~~
                         Py_UCS4
    regex_3/_regex.c:3485:29: error: expected expression before ‘)’ token
             text_ptr = (Py_UCS2*)text + text_pos;
                                 ^
    regex_3/_regex.c:3486:30: error: expected expression before ‘)’ token
             limit_ptr = (Py_UCS2*)text + limit;
                                  ^
    regex_3/_regex.c:3491:40: error: expected expression before ‘)’ token
             text_pos = text_ptr - (Py_UCS2*)text;
                                            ^
    regex_3/_regex.c: In function ‘match_many_ANY_REV’:
    regex_3/_regex.c:3523:9: error: unknown type name ‘Py_UCS1’; did you mean ‘Py_UCS4’?
             Py_UCS1* text_ptr;
             ^~~~~~~
             Py_UCS4
    regex_3/_regex.c:3524:9: error: unknown type name ‘Py_UCS1’; did you mean ‘Py_UCS4’?
             Py_UCS1* limit_ptr;
             ^~~~~~~
             Py_UCS4
    regex_3/_regex.c:3526:21: error: ‘Py_UCS1’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
             text_ptr = (Py_UCS1*)text + text_pos;
                         ^~~~~~~
                         Py_UCS4
    regex_3/_regex.c:3526:29: error: expected expression before ‘)’ token
             text_ptr = (Py_UCS1*)text + text_pos;
                                 ^
    regex_3/_regex.c:3527:30: error: expected expression before ‘)’ token
             limit_ptr = (Py_UCS1*)text + limit;
                                  ^
    regex_3/_regex.c:3532:40: error: expected expression before ‘)’ token
             text_pos = text_ptr - (Py_UCS1*)text;
                                            ^
    regex_3/_regex.c:3537:9: error: unknown type name ‘Py_UCS2’; did you mean ‘Py_UCS4’?
             Py_UCS2* text_ptr;
             ^~~~~~~
             Py_UCS4
    regex_3/_regex.c:3538:9: error: unknown type name ‘Py_UCS2’; did you mean ‘Py_UCS4’?
             Py_UCS2* limit_ptr;
             ^~~~~~~
             Py_UCS4
    regex_3/_regex.c:3540:21: error: ‘Py_UCS2’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
             text_ptr = (Py_UCS2*)text + text_pos;
                         ^~~~~~~
                         Py_UCS4
    regex_3/_regex.c:3540:29: error: expected expression before ‘)’ token
             text_ptr = (Py_UCS2*)text + text_pos;
                                 ^
    regex_3/_regex.c:3541:30: error: expected expression before ‘)’ token
             limit_ptr = (Py_UCS2*)text + limit;
                                  ^
    regex_3/_regex.c:3546:40: error: expected expression before ‘)’ token
             text_pos = text_ptr - (Py_UCS2*)text;
                                            ^
    regex_3/_regex.c: In function ‘match_many_ANY_U’:
    regex_3/_regex.c:3580:9: error: unknown type name ‘Py_UCS1’; did you mean ‘Py_UCS4’?
             Py_UCS1* text_ptr;
             ^~~~~~~
             Py_UCS4
    regex_3/_regex.c:3581:9: error: unknown type name ‘Py_UCS1’; did you mean ‘Py_UCS4’?
             Py_UCS1* limit_ptr;
             ^~~~~~~
             Py_UCS4
    regex_3/_regex.c:3583:21: error: ‘Py_UCS1’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
             text_ptr = (Py_UCS1*)text + text_pos;
                         ^~~~~~~
                         Py_UCS4
    regex_3/_regex.c:3583:29: error: expected expression before ‘)’ token
             text_ptr = (Py_UCS1*)text + text_pos;
                                 ^
    regex_3/_regex.c:3584:30: error: expected expression before ‘)’ token
             limit_ptr = (Py_UCS1*)text + limit;
                                  ^
    regex_3/_regex.c:3596:40: error: expected expression before ‘)’ token
             text_pos = text_ptr - (Py_UCS1*)text;
                                            ^
    regex_3/_regex.c:3601:9: error: unknown type name ‘Py_UCS2’; did you mean ‘Py_UCS4’?
             Py_UCS2* text_ptr;
             ^~~~~~~
             Py_UCS4
    regex_3/_regex.c:3602:9: error: unknown type name ‘Py_UCS2’; did you mean ‘Py_UCS4’?
             Py_UCS2* limit_ptr;
             ^~~~~~~
             Py_UCS4
    regex_3/_regex.c:3604:21: error: ‘Py_UCS2’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
             text_ptr = (Py_UCS2*)text + text_pos;
                         ^~~~~~~
                         Py_UCS4
    regex_3/_regex.c:3604:29: error: expected expression before ‘)’ token
             text_ptr = (Py_UCS2*)text + text_pos;
                                 ^
    regex_3/_regex.c:3605:30: error: expected expression before ‘)’ token
             limit_ptr = (Py_UCS2*)text + limit;
                                  ^
    regex_3/_regex.c:3617:40: error: expected expression before ‘)’ token
             text_pos = text_ptr - (Py_UCS2*)text;
                                            ^
    regex_3/_regex.c: In function ‘match_many_ANY_U_REV’:
    regex_3/_regex.c:3658:9: error: unknown type name ‘Py_UCS1’; did you mean ‘Py_UCS4’?
             Py_UCS1* text_ptr;
             ^~~~~~~
             Py_UCS4
    regex_3/_regex.c:3659:9: error: unknown type name ‘Py_UCS1’; did you mean ‘Py_UCS4’?
             Py_UCS1* limit_ptr;
             ^~~~~~~
             Py_UCS4
    regex_3/_regex.c:3661:21: error: ‘Py_UCS1’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
             text_ptr = (Py_UCS1*)text + text_pos;
                         ^~~~~~~
                         Py_UCS4
    regex_3/_regex.c:3661:29: error: expected expression before ‘)’ token
             text_ptr = (Py_UCS1*)text + text_pos;
                                 ^
    regex_3/_regex.c:3662:30: error: expected expression before ‘)’ token
             limit_ptr = (Py_UCS1*)text + limit;
                                  ^
    regex_3/_regex.c:3674:40: error: expected expression before ‘)’ token
             text_pos = text_ptr - (Py_UCS1*)text;
                                            ^
    regex_3/_regex.c:3679:9: error: unknown type name ‘Py_UCS2’; did you mean ‘Py_UCS4’?
             Py_UCS2* text_ptr;
             ^~~~~~~
             Py_UCS4
    regex_3/_regex.c:3680:9: error: unknown type name ‘Py_UCS2’; did you mean ‘Py_UCS4’?
             Py_UCS2* limit_ptr;
             ^~~~~~~
             Py_UCS4
    regex_3/_regex.c:3682:21: error: ‘Py_UCS2’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
             text_ptr = (Py_UCS2*)text + text_pos;
                         ^~~~~~~
                         Py_UCS4
    regex_3/_regex.c:3682:29: error: expected expression before ‘)’ token
             text_ptr = (Py_UCS2*)text + text_pos;
                                 ^
    regex_3/_regex.c:3683:30: error: expected expression before ‘)’ token
             limit_ptr = (Py_UCS2*)text + limit;
                                  ^
    regex_3/_regex.c:3695:40: error: expected expression before ‘)’ token
             text_pos = text_ptr - (Py_UCS2*)text;
                                            ^
    regex_3/_regex.c: In function ‘match_many_CHARACTER’:
    regex_3/_regex.c:3737:9: error: unknown type name ‘Py_UCS1’; did you mean ‘Py_UCS4’?
             Py_UCS1* text_ptr;
             ^~~~~~~
             Py_UCS4
    regex_3/_regex.c:3738:9: error: unknown type name ‘Py_UCS1’; did you mean ‘Py_UCS4’?
             Py_UCS1* limit_ptr;
             ^~~~~~~
             Py_UCS4
    regex_3/_regex.c:3740:21: error: ‘Py_UCS1’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
             text_ptr = (Py_UCS1*)text + text_pos;
                         ^~~~~~~
                         Py_UCS4
    regex_3/_regex.c:3740:29: error: expected expression before ‘)’ token
             text_ptr = (Py_UCS1*)text + text_pos;
                                 ^
    regex_3/_regex.c:3741:30: error: expected expression before ‘)’ token
             limit_ptr = (Py_UCS1*)text + limit;
                                  ^
    regex_3/_regex.c:3746:40: error: expected expression before ‘)’ token
             text_pos = text_ptr - (Py_UCS1*)text;
                                            ^
    regex_3/_regex.c:3751:9: error: unknown type name ‘Py_UCS2’; did you mean ‘Py_UCS4’?
             Py_UCS2* text_ptr;
             ^~~~~~~
             Py_UCS4
    regex_3/_regex.c:3752:9: error: unknown type name ‘Py_UCS2’; did you mean ‘Py_UCS4’?
             Py_UCS2* limit_ptr;
             ^~~~~~~
             Py_UCS4
    regex_3/_regex.c:3754:21: error: ‘Py_UCS2’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
             text_ptr = (Py_UCS2*)text + text_pos;
                         ^~~~~~~
                         Py_UCS4
    regex_3/_regex.c:3754:29: error: expected expression before ‘)’ token
             text_ptr = (Py_UCS2*)text + text_pos;
                                 ^
    regex_3/_regex.c:3755:30: error: expected expression before ‘)’ token
             limit_ptr = (Py_UCS2*)text + limit;
                                  ^
    regex_3/_regex.c:3760:40: error: expected expression before ‘)’ token
             text_pos = text_ptr - (Py_UCS2*)text;
                                            ^
    regex_3/_regex.c: In function ‘match_many_CHARACTER_IGN’:
    regex_3/_regex.c:3797:9: error: unknown type name ‘Py_UCS1’; did you mean ‘Py_UCS4’?
             Py_UCS1* text_ptr;
             ^~~~~~~
             Py_UCS4
    regex_3/_regex.c:3798:9: error: unknown type name ‘Py_UCS1’; did you mean ‘Py_UCS4’?
             Py_UCS1* limit_ptr;
             ^~~~~~~
             Py_UCS4
    regex_3/_regex.c:3800:21: error: ‘Py_UCS1’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
             text_ptr = (Py_UCS1*)text + text_pos;
                         ^~~~~~~
                         Py_UCS4
    regex_3/_regex.c:3800:29: error: expected expression before ‘)’ token
             text_ptr = (Py_UCS1*)text + text_pos;
                                 ^
    regex_3/_regex.c:3801:30: error: expected expression before ‘)’ token
             limit_ptr = (Py_UCS1*)text + limit;
                                  ^
    regex_3/_regex.c:3807:40: error: expected expression before ‘)’ token
             text_pos = text_ptr - (Py_UCS1*)text;
                                            ^
    regex_3/_regex.c:3812:9: error: unknown type name ‘Py_UCS2’; did you mean ‘Py_UCS4’?
             Py_UCS2* text_ptr;
             ^~~~~~~
             Py_UCS4
    regex_3/_regex.c:3813:9: error: unknown type name ‘Py_UCS2’; did you mean ‘Py_UCS4’?
             Py_UCS2* limit_ptr;
             ^~~~~~~
             Py_UCS4
    regex_3/_regex.c:3815:21: error: ‘Py_UCS2’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
             text_ptr = (Py_UCS2*)text + text_pos;
                         ^~~~~~~
                         Py_UCS4
    regex_3/_regex.c:3815:29: error: expected expression before ‘)’ token
             text_ptr = (Py_UCS2*)text + text_pos;
                                 ^
    regex_3/_regex.c:3816:30: error: expected expression before ‘)’ token
             limit_ptr = (Py_UCS2*)text + limit;
                                  ^
    regex_3/_regex.c:3822:40: error: expected expression before ‘)’ token
             text_pos = text_ptr - (Py_UCS2*)text;
                                            ^
    regex_3/_regex.c: In function ‘match_many_CHARACTER_IGN_REV’:
    regex_3/_regex.c:3860:9: error: unknown type name ‘Py_UCS1’; did you mean ‘Py_UCS4’?
             Py_UCS1* text_ptr;
             ^~~~~~~
             Py_UCS4
    regex_3/_regex.c:3861:9: error: unknown type name ‘Py_UCS1’; did you mean ‘Py_UCS4’?
             Py_UCS1* limit_ptr;
             ^~~~~~~
             Py_UCS4
    regex_3/_regex.c:3863:21: error: ‘Py_UCS1’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
             text_ptr = (Py_UCS1*)text + text_pos;
                         ^~~~~~~
                         Py_UCS4
    regex_3/_regex.c:3863:29: error: expected expression before ‘)’ token
             text_ptr = (Py_UCS1*)text + text_pos;
                                 ^
    regex_3/_regex.c:3864:30: error: expected expression before ‘)’ token
             limit_ptr = (Py_UCS1*)text + limit;
                                  ^
    regex_3/_regex.c:3870:40: error: expected expression before ‘)’ token
             text_pos = text_ptr - (Py_UCS1*)text;
                                            ^
    regex_3/_regex.c:3875:9: error: unknown type name ‘Py_UCS2’; did you mean ‘Py_UCS4’?
             Py_UCS2* text_ptr;
             ^~~~~~~
             Py_UCS4
    regex_3/_regex.c:3876:9: error: unknown type name ‘Py_UCS2’; did you mean ‘Py_UCS4’?
             Py_UCS2* limit_ptr;
             ^~~~~~~
             Py_UCS4
    regex_3/_regex.c:3878:21: error: ‘Py_UCS2’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
             text_ptr = (Py_UCS2*)text + text_pos;
                         ^~~~~~~
                         Py_UCS4
    regex_3/_regex.c:3878:29: error: expected expression before ‘)’ token
             text_ptr = (Py_UCS2*)text + text_pos;
                                 ^
    regex_3/_regex.c:3879:30: error: expected expression before ‘)’ token
             limit_ptr = (Py_UCS2*)text + limit;
                                  ^
    regex_3/_regex.c:3885:40: error: expected expression before ‘)’ token
             text_pos = text_ptr - (Py_UCS2*)text;
                                            ^
    regex_3/_regex.c: In function ‘match_many_CHARACTER_REV’:
    regex_3/_regex.c:3921:9: error: unknown type name ‘Py_UCS1’; did you mean ‘Py_UCS4’?
             Py_UCS1* text_ptr;
             ^~~~~~~
             Py_UCS4
    regex_3/_regex.c:3922:9: error: unknown type name ‘Py_UCS1’; did you mean ‘Py_UCS4’?
             Py_UCS1* limit_ptr;
             ^~~~~~~
             Py_UCS4
    regex_3/_regex.c:3924:21: error: ‘Py_UCS1’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
             text_ptr = (Py_UCS1*)text + text_pos;
                         ^~~~~~~
                         Py_UCS4
    regex_3/_regex.c:3924:29: error: expected expression before ‘)’ token
             text_ptr = (Py_UCS1*)text + text_pos;
                                 ^
    regex_3/_regex.c:3925:30: error: expected expression before ‘)’ token
             limit_ptr = (Py_UCS1*)text + limit;
                                  ^
    regex_3/_regex.c:3930:40: error: expected expression before ‘)’ token
             text_pos = text_ptr - (Py_UCS1*)text;
                                            ^
    regex_3/_regex.c:3935:9: error: unknown type name ‘Py_UCS2’; did you mean ‘Py_UCS4’?
             Py_UCS2* text_ptr;
             ^~~~~~~
             Py_UCS4
    regex_3/_regex.c:3936:9: error: unknown type name ‘Py_UCS2’; did you mean ‘Py_UCS4’?
             Py_UCS2* limit_ptr;
             ^~~~~~~
             Py_UCS4
    regex_3/_regex.c:3938:21: error: ‘Py_UCS2’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
             text_ptr = (Py_UCS2*)text + text_pos;
                         ^~~~~~~
                         Py_UCS4
    regex_3/_regex.c:3938:29: error: expected expression before ‘)’ token
             text_ptr = (Py_UCS2*)text + text_pos;
                                 ^
    regex_3/_regex.c:3939:30: error: expected expression before ‘)’ token
             limit_ptr = (Py_UCS2*)text + limit;
                                  ^
    regex_3/_regex.c:3944:40: error: expected expression before ‘)’ token
             text_pos = text_ptr - (Py_UCS2*)text;
                                            ^
    regex_3/_regex.c: In function ‘match_many_PROPERTY’:
    regex_3/_regex.c:3983:9: error: unknown type name ‘Py_UCS1’; did you mean ‘Py_UCS4’?
             Py_UCS1* text_ptr;
             ^~~~~~~
             Py_UCS4
    regex_3/_regex.c:3984:9: error: unknown type name ‘Py_UCS1’; did you mean ‘Py_UCS4’?
             Py_UCS1* limit_ptr;
             ^~~~~~~
             Py_UCS4
    regex_3/_regex.c:3986:21: error: ‘Py_UCS1’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
             text_ptr = (Py_UCS1*)text + text_pos;
                         ^~~~~~~
                         Py_UCS4
    regex_3/_regex.c:3986:29: error: expected expression before ‘)’ token
             text_ptr = (Py_UCS1*)text + text_pos;
                                 ^
    regex_3/_regex.c:3987:30: error: expected expression before ‘)’ token
             limit_ptr = (Py_UCS1*)text + limit;
                                  ^
    regex_3/_regex.c:4004:40: error: expected expression before ‘)’ token
             text_pos = text_ptr - (Py_UCS1*)text;
                                            ^
    regex_3/_regex.c:4009:9: error: unknown type name ‘Py_UCS2’; did you mean ‘Py_UCS4’?
             Py_UCS2* text_ptr;
             ^~~~~~~
             Py_UCS4
    regex_3/_regex.c:4010:9: error: unknown type name ‘Py_UCS2’; did you mean ‘Py_UCS4’?
             Py_UCS2* limit_ptr;
             ^~~~~~~
             Py_UCS4
    regex_3/_regex.c:4012:21: error: ‘Py_UCS2’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
             text_ptr = (Py_UCS2*)text + text_pos;
                         ^~~~~~~
                         Py_UCS4
    regex_3/_regex.c:4012:29: error: expected expression before ‘)’ token
             text_ptr = (Py_UCS2*)text + text_pos;
                                 ^
    regex_3/_regex.c:4013:30: error: expected expression before ‘)’ token
             limit_ptr = (Py_UCS2*)text + limit;
                                  ^
    regex_3/_regex.c:4030:40: error: expected expression before ‘)’ token
             text_pos = text_ptr - (Py_UCS2*)text;
                                            ^
    regex_3/_regex.c: In function ‘match_many_PROPERTY_IGN’:
    regex_3/_regex.c:4081:9: error: unknown type name ‘Py_UCS1’; did you mean ‘Py_UCS4’?
             Py_UCS1* text_ptr;
             ^~~~~~~
             Py_UCS4
    regex_3/_regex.c:4082:9: error: unknown type name ‘Py_UCS1’; did you mean ‘Py_UCS4’?
             Py_UCS1* limit_ptr;
             ^~~~~~~
             Py_UCS4
    regex_3/_regex.c:4084:21: error: ‘Py_UCS1’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
             text_ptr = (Py_UCS1*)text + text_pos;
                         ^~~~~~~
                         Py_UCS4
    regex_3/_regex.c:4084:29: error: expected expression before ‘)’ token
             text_ptr = (Py_UCS1*)text + text_pos;
                                 ^
    regex_3/_regex.c:4085:30: error: expected expression before ‘)’ token
             limit_ptr = (Py_UCS1*)text + limit;
                                  ^
    regex_3/_regex.c:4102:40: error: expected expression before ‘)’ token
             text_pos = text_ptr - (Py_UCS1*)text;
                                            ^
    regex_3/_regex.c:4107:9: error: unknown type name ‘Py_UCS2’; did you mean ‘Py_UCS4’?
             Py_UCS2* text_ptr;
             ^~~~~~~
             Py_UCS4
    regex_3/_regex.c:4108:9: error: unknown type name ‘Py_UCS2’; did you mean ‘Py_UCS4’?
             Py_UCS2* limit_ptr;
             ^~~~~~~
             Py_UCS4
    regex_3/_regex.c:4110:21: error: ‘Py_UCS2’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
             text_ptr = (Py_UCS2*)text + text_pos;
                         ^~~~~~~
                         Py_UCS4
    regex_3/_regex.c:4110:29: error: expected expression before ‘)’ token
             text_ptr = (Py_UCS2*)text + text_pos;
                                 ^
    regex_3/_regex.c:4111:30: error: expected expression before ‘)’ token
             limit_ptr = (Py_UCS2*)text + limit;
                                  ^
    regex_3/_regex.c:4128:40: error: expected expression before ‘)’ token
             text_pos = text_ptr - (Py_UCS2*)text;
                                            ^
    regex_3/_regex.c: In function ‘match_many_PROPERTY_IGN_REV’:
    regex_3/_regex.c:4179:9: error: unknown type name ‘Py_UCS1’; did you mean ‘Py_UCS4’?
             Py_UCS1* text_ptr;
             ^~~~~~~
             Py_UCS4
    regex_3/_regex.c:4180:9: error: unknown type name ‘Py_UCS1’; did you mean ‘Py_UCS4’?
             Py_UCS1* limit_ptr;
             ^~~~~~~
             Py_UCS4
    regex_3/_regex.c:4182:21: error: ‘Py_UCS1’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
             text_ptr = (Py_UCS1*)text + text_pos;
                         ^~~~~~~
                         Py_UCS4
    regex_3/_regex.c:4182:29: error: expected expression before ‘)’ token
             text_ptr = (Py_UCS1*)text + text_pos;
                                 ^
    regex_3/_regex.c:4183:30: error: expected expression before ‘)’ token
             limit_ptr = (Py_UCS1*)text + limit;
                                  ^
    regex_3/_regex.c:4200:40: error: expected expression before ‘)’ token
             text_pos = text_ptr - (Py_UCS1*)text;
                                            ^
    regex_3/_regex.c:4205:9: error: unknown type name ‘Py_UCS2’; did you mean ‘Py_UCS4’?
             Py_UCS2* text_ptr;
             ^~~~~~~
             Py_UCS4
    regex_3/_regex.c:4206:9: error: unknown type name ‘Py_UCS2’; did you mean ‘Py_UCS4’?
             Py_UCS2* limit_ptr;
             ^~~~~~~
             Py_UCS4
    regex_3/_regex.c:4208:21: error: ‘Py_UCS2’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
             text_ptr = (Py_UCS2*)text + text_pos;
                         ^~~~~~~
                         Py_UCS4
    regex_3/_regex.c:4208:29: error: expected expression before ‘)’ token
             text_ptr = (Py_UCS2*)text + text_pos;
                                 ^
    regex_3/_regex.c:4209:30: error: expected expression before ‘)’ token
             limit_ptr = (Py_UCS2*)text + limit;
                                  ^
    regex_3/_regex.c:4226:40: error: expected expression before ‘)’ token
             text_pos = text_ptr - (Py_UCS2*)text;
                                            ^
    regex_3/_regex.c: In function ‘match_many_PROPERTY_REV’:
    regex_3/_regex.c:4277:9: error: unknown type name ‘Py_UCS1’; did you mean ‘Py_UCS4’?
             Py_UCS1* text_ptr;
             ^~~~~~~
             Py_UCS4
    regex_3/_regex.c:4278:9: error: unknown type name ‘Py_UCS1’; did you mean ‘Py_UCS4’?
             Py_UCS1* limit_ptr;
             ^~~~~~~
             Py_UCS4
    regex_3/_regex.c:4280:21: error: ‘Py_UCS1’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
             text_ptr = (Py_UCS1*)text + text_pos;
                         ^~~~~~~
                         Py_UCS4
    regex_3/_regex.c:4280:29: error: expected expression before ‘)’ token
             text_ptr = (Py_UCS1*)text + text_pos;
                                 ^
    regex_3/_regex.c:4281:30: error: expected expression before ‘)’ token
             limit_ptr = (Py_UCS1*)text + limit;
                                  ^
    regex_3/_regex.c:4298:40: error: expected expression before ‘)’ token
             text_pos = text_ptr - (Py_UCS1*)text;
                                            ^
    regex_3/_regex.c:4303:9: error: unknown type name ‘Py_UCS2’; did you mean ‘Py_UCS4’?
             Py_UCS2* text_ptr;
             ^~~~~~~
             Py_UCS4
    regex_3/_regex.c:4304:9: error: unknown type name ‘Py_UCS2’; did you mean ‘Py_UCS4’?
             Py_UCS2* limit_ptr;
             ^~~~~~~
             Py_UCS4
    regex_3/_regex.c:4306:21: error: ‘Py_UCS2’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
             text_ptr = (Py_UCS2*)text + text_pos;
                         ^~~~~~~
                         Py_UCS4
    regex_3/_regex.c:4306:29: error: expected expression before ‘)’ token
             text_ptr = (Py_UCS2*)text + text_pos;
                                 ^
    regex_3/_regex.c:4307:30: error: expected expression before ‘)’ token
             limit_ptr = (Py_UCS2*)text + limit;
                                  ^
    regex_3/_regex.c:4324:40: error: expected expression before ‘)’ token
             text_pos = text_ptr - (Py_UCS2*)text;
                                            ^
    regex_3/_regex.c: In function ‘match_many_RANGE’:
    regex_3/_regex.c:4373:9: error: unknown type name ‘Py_UCS1’; did you mean ‘Py_UCS4’?
             Py_UCS1* text_ptr;
             ^~~~~~~
             Py_UCS4
    regex_3/_regex.c:4374:9: error: unknown type name ‘Py_UCS1’; did you mean ‘Py_UCS4’?
             Py_UCS1* limit_ptr;
             ^~~~~~~
             Py_UCS4
    regex_3/_regex.c:4376:21: error: ‘Py_UCS1’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
             text_ptr = (Py_UCS1*)text + text_pos;
                         ^~~~~~~
                         Py_UCS4
    regex_3/_regex.c:4376:29: error: expected expression before ‘)’ token
             text_ptr = (Py_UCS1*)text + text_pos;
                                 ^
    regex_3/_regex.c:4377:30: error: expected expression before ‘)’ token
             limit_ptr = (Py_UCS1*)text + limit;
                                  ^
    regex_3/_regex.c:4383:40: error: expected expression before ‘)’ token
             text_pos = text_ptr - (Py_UCS1*)text;
                                            ^
    regex_3/_regex.c:4388:9: error: unknown type name ‘Py_UCS2’; did you mean ‘Py_UCS4’?
             Py_UCS2* text_ptr;
             ^~~~~~~
             Py_UCS4
    regex_3/_regex.c:4389:9: error: unknown type name ‘Py_UCS2’; did you mean ‘Py_UCS4’?
             Py_UCS2* limit_ptr;
             ^~~~~~~
             Py_UCS4
    regex_3/_regex.c:4391:21: error: ‘Py_UCS2’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
             text_ptr = (Py_UCS2*)text + text_pos;
                         ^~~~~~~
                         Py_UCS4
    regex_3/_regex.c:4391:29: error: expected expression before ‘)’ token
             text_ptr = (Py_UCS2*)text + text_pos;
                                 ^
    regex_3/_regex.c:4392:30: error: expected expression before ‘)’ token
             limit_ptr = (Py_UCS2*)text + limit;
                                  ^
    regex_3/_regex.c:4398:40: error: expected expression before ‘)’ token
             text_pos = text_ptr - (Py_UCS2*)text;
                                            ^
    regex_3/_regex.c: In function ‘match_many_RANGE_IGN’:
    regex_3/_regex.c:4436:9: error: unknown type name ‘Py_UCS1’; did you mean ‘Py_UCS4’?
             Py_UCS1* text_ptr;
             ^~~~~~~
             Py_UCS4
    regex_3/_regex.c:4437:9: error: unknown type name ‘Py_UCS1’; did you mean ‘Py_UCS4’?
             Py_UCS1* limit_ptr;
             ^~~~~~~
             Py_UCS4
    regex_3/_regex.c:4439:21: error: ‘Py_UCS1’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
             text_ptr = (Py_UCS1*)text + text_pos;
                         ^~~~~~~
                         Py_UCS4
    regex_3/_regex.c:4439:29: error: expected expression before ‘)’ token
             text_ptr = (Py_UCS1*)text + text_pos;
                                 ^
    regex_3/_regex.c:4440:30: error: expected expression before ‘)’ token
             limit_ptr = (Py_UCS1*)text + limit;
                                  ^
    regex_3/_regex.c:4446:40: error: expected expression before ‘)’ token
             text_pos = text_ptr - (Py_UCS1*)text;
                                            ^
    regex_3/_regex.c:4451:9: error: unknown type name ‘Py_UCS2’; did you mean ‘Py_UCS4’?
             Py_UCS2* text_ptr;
             ^~~~~~~
             Py_UCS4
    regex_3/_regex.c:4452:9: error: unknown type name ‘Py_UCS2’; did you mean ‘Py_UCS4’?
             Py_UCS2* limit_ptr;
             ^~~~~~~
             Py_UCS4
    regex_3/_regex.c:4454:21: error: ‘Py_UCS2’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
             text_ptr = (Py_UCS2*)text + text_pos;
                         ^~~~~~~
                         Py_UCS4
    regex_3/_regex.c:4454:29: error: expected expression before ‘)’ token
             text_ptr = (Py_UCS2*)text + text_pos;
                                 ^
    regex_3/_regex.c:4455:30: error: expected expression before ‘)’ token
             limit_ptr = (Py_UCS2*)text + limit;
                                  ^
    regex_3/_regex.c:4461:40: error: expected expression before ‘)’ token
             text_pos = text_ptr - (Py_UCS2*)text;
                                            ^
    regex_3/_regex.c: In function ‘match_many_RANGE_IGN_REV’:
    regex_3/_regex.c:4499:9: error: unknown type name ‘Py_UCS1’; did you mean ‘Py_UCS4’?
             Py_UCS1* text_ptr;
             ^~~~~~~
             Py_UCS4
    regex_3/_regex.c:4500:9: error: unknown type name ‘Py_UCS1’; did you mean ‘Py_UCS4’?
             Py_UCS1* limit_ptr;
             ^~~~~~~
             Py_UCS4
    regex_3/_regex.c:4502:21: error: ‘Py_UCS1’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
             text_ptr = (Py_UCS1*)text + text_pos;
                         ^~~~~~~
                         Py_UCS4
    regex_3/_regex.c:4502:29: error: expected expression before ‘)’ token
             text_ptr = (Py_UCS1*)text + text_pos;
                                 ^
    regex_3/_regex.c:4503:30: error: expected expression before ‘)’ token
             limit_ptr = (Py_UCS1*)text + limit;
                                  ^
    regex_3/_regex.c:4509:40: error: expected expression before ‘)’ token
             text_pos = text_ptr - (Py_UCS1*)text;
                                            ^
    regex_3/_regex.c:4514:9: error: unknown type name ‘Py_UCS2’; did you mean ‘Py_UCS4’?
             Py_UCS2* text_ptr;
             ^~~~~~~
             Py_UCS4
    regex_3/_regex.c:4515:9: error: unknown type name ‘Py_UCS2’; did you mean ‘Py_UCS4’?
             Py_UCS2* limit_ptr;
             ^~~~~~~
             Py_UCS4
    regex_3/_regex.c:4517:21: error: ‘Py_UCS2’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
             text_ptr = (Py_UCS2*)text + text_pos;
                         ^~~~~~~
                         Py_UCS4
    regex_3/_regex.c:4517:29: error: expected expression before ‘)’ token
             text_ptr = (Py_UCS2*)text + text_pos;
                                 ^
    regex_3/_regex.c:4518:30: error: expected expression before ‘)’ token
             limit_ptr = (Py_UCS2*)text + limit;
                                  ^
    regex_3/_regex.c:4524:40: error: expected expression before ‘)’ token
             text_pos = text_ptr - (Py_UCS2*)text;
                                            ^
    regex_3/_regex.c: In function ‘match_many_RANGE_REV’:
    regex_3/_regex.c:4562:9: error: unknown type name ‘Py_UCS1’; did you mean ‘Py_UCS4’?
             Py_UCS1* text_ptr;
             ^~~~~~~
             Py_UCS4
    regex_3/_regex.c:4563:9: error: unknown type name ‘Py_UCS1’; did you mean ‘Py_UCS4’?
             Py_UCS1* limit_ptr;
             ^~~~~~~
             Py_UCS4
    regex_3/_regex.c:4565:21: error: ‘Py_UCS1’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
             text_ptr = (Py_UCS1*)text + text_pos;
                         ^~~~~~~
                         Py_UCS4
    regex_3/_regex.c:4565:29: error: expected expression before ‘)’ token
             text_ptr = (Py_UCS1*)text + text_pos;
                                 ^
    regex_3/_regex.c:4566:30: error: expected expression before ‘)’ token
             limit_ptr = (Py_UCS1*)text + limit;
                                  ^
    regex_3/_regex.c:4572:40: error: expected expression before ‘)’ token
             text_pos = text_ptr - (Py_UCS1*)text;
                                            ^
    regex_3/_regex.c:4577:9: error: unknown type name ‘Py_UCS2’; did you mean ‘Py_UCS4’?
             Py_UCS2* text_ptr;
             ^~~~~~~
             Py_UCS4
    regex_3/_regex.c:4578:9: error: unknown type name ‘Py_UCS2’; did you mean ‘Py_UCS4’?
             Py_UCS2* limit_ptr;
             ^~~~~~~
             Py_UCS4
    regex_3/_regex.c:4580:21: error: ‘Py_UCS2’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
             text_ptr = (Py_UCS2*)text + text_pos;
                         ^~~~~~~
                         Py_UCS4
    regex_3/_regex.c:4580:29: error: expected expression before ‘)’ token
             text_ptr = (Py_UCS2*)text + text_pos;
                                 ^
    regex_3/_regex.c:4581:30: error: expected expression before ‘)’ token
             limit_ptr = (Py_UCS2*)text + limit;
                                  ^
    regex_3/_regex.c:4587:40: error: expected expression before ‘)’ token
             text_pos = text_ptr - (Py_UCS2*)text;
                                            ^
    regex_3/_regex.c: In function ‘match_many_SET’:
    regex_3/_regex.c:4625:9: error: unknown type name ‘Py_UCS1’; did you mean ‘Py_UCS4’?
             Py_UCS1* text_ptr;
             ^~~~~~~
             Py_UCS4
    regex_3/_regex.c:4626:9: error: unknown type name ‘Py_UCS1’; did you mean ‘Py_UCS4’?
             Py_UCS1* limit_ptr;
             ^~~~~~~
             Py_UCS4
    regex_3/_regex.c:4628:21: error: ‘Py_UCS1’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
             text_ptr = (Py_UCS1*)text + text_pos;
                         ^~~~~~~
                         Py_UCS4
    regex_3/_regex.c:4628:29: error: expected expression before ‘)’ token
             text_ptr = (Py_UCS1*)text + text_pos;
                                 ^
    regex_3/_regex.c:4629:30: error: expected expression before ‘)’ token
             limit_ptr = (Py_UCS1*)text + limit;
                                  ^
    regex_3/_regex.c:4635:40: error: expected expression before ‘)’ token
             text_pos = text_ptr - (Py_UCS1*)text;
                                            ^
    regex_3/_regex.c:4640:9: error: unknown type name ‘Py_UCS2’; did you mean ‘Py_UCS4’?
             Py_UCS2* text_ptr;
             ^~~~~~~
             Py_UCS4
    regex_3/_regex.c:4641:9: error: unknown type name ‘Py_UCS2’; did you mean ‘Py_UCS4’?
             Py_UCS2* limit_ptr;
             ^~~~~~~
             Py_UCS4
    regex_3/_regex.c:4643:21: error: ‘Py_UCS2’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
             text_ptr = (Py_UCS2*)text + text_pos;
                         ^~~~~~~
                         Py_UCS4
    regex_3/_regex.c:4643:29: error: expected expression before ‘)’ token
             text_ptr = (Py_UCS2*)text + text_pos;
                                 ^
    regex_3/_regex.c:4644:30: error: expected expression before ‘)’ token
             limit_ptr = (Py_UCS2*)text + limit;
                                  ^
    regex_3/_regex.c:4650:40: error: expected expression before ‘)’ token
             text_pos = text_ptr - (Py_UCS2*)text;
                                            ^
    regex_3/_regex.c: In function ‘match_many_SET_IGN’:
    regex_3/_regex.c:4688:9: error: unknown type name ‘Py_UCS1’; did you mean ‘Py_UCS4’?
             Py_UCS1* text_ptr;
             ^~~~~~~
             Py_UCS4
    regex_3/_regex.c:4689:9: error: unknown type name ‘Py_UCS1’; did you mean ‘Py_UCS4’?
             Py_UCS1* limit_ptr;
             ^~~~~~~
             Py_UCS4
    regex_3/_regex.c:4691:21: error: ‘Py_UCS1’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
             text_ptr = (Py_UCS1*)text + text_pos;
                         ^~~~~~~
                         Py_UCS4
    regex_3/_regex.c:4691:29: error: expected expression before ‘)’ token
             text_ptr = (Py_UCS1*)text + text_pos;
                                 ^
    regex_3/_regex.c:4692:30: error: expected expression before ‘)’ token
             limit_ptr = (Py_UCS1*)text + limit;
                                  ^
    regex_3/_regex.c:4698:40: error: expected expression before ‘)’ token
             text_pos = text_ptr - (Py_UCS1*)text;
                                            ^
    regex_3/_regex.c:4703:9: error: unknown type name ‘Py_UCS2’; did you mean ‘Py_UCS4’?
             Py_UCS2* text_ptr;
             ^~~~~~~
             Py_UCS4
    regex_3/_regex.c:4704:9: error: unknown type name ‘Py_UCS2’; did you mean ‘Py_UCS4’?
             Py_UCS2* limit_ptr;
             ^~~~~~~
             Py_UCS4
    regex_3/_regex.c:4706:21: error: ‘Py_UCS2’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
             text_ptr = (Py_UCS2*)text + text_pos;
                         ^~~~~~~
                         Py_UCS4
    regex_3/_regex.c:4706:29: error: expected expression before ‘)’ token
             text_ptr = (Py_UCS2*)text + text_pos;
                                 ^
    regex_3/_regex.c:4707:30: error: expected expression before ‘)’ token
             limit_ptr = (Py_UCS2*)text + limit;
                                  ^
    regex_3/_regex.c:4713:40: error: expected expression before ‘)’ token
             text_pos = text_ptr - (Py_UCS2*)text;
                                            ^
    regex_3/_regex.c: In function ‘match_many_SET_IGN_REV’:
    regex_3/_regex.c:4751:9: error: unknown type name ‘Py_UCS1’; did you mean ‘Py_UCS4’?
             Py_UCS1* text_ptr;
             ^~~~~~~
             Py_UCS4
    regex_3/_regex.c:4752:9: error: unknown type name ‘Py_UCS1’; did you mean ‘Py_UCS4’?
             Py_UCS1* limit_ptr;
             ^~~~~~~
             Py_UCS4
    regex_3/_regex.c:4754:21: error: ‘Py_UCS1’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
             text_ptr = (Py_UCS1*)text + text_pos;
                         ^~~~~~~
                         Py_UCS4
    regex_3/_regex.c:4754:29: error: expected expression before ‘)’ token
             text_ptr = (Py_UCS1*)text + text_pos;
                                 ^
    regex_3/_regex.c:4755:30: error: expected expression before ‘)’ token
             limit_ptr = (Py_UCS1*)text + limit;
                                  ^
    regex_3/_regex.c:4761:40: error: expected expression before ‘)’ token
             text_pos = text_ptr - (Py_UCS1*)text;
                                            ^
    regex_3/_regex.c:4766:9: error: unknown type name ‘Py_UCS2’; did you mean ‘Py_UCS4’?
             Py_UCS2* text_ptr;
             ^~~~~~~
             Py_UCS4
    regex_3/_regex.c:4767:9: error: unknown type name ‘Py_UCS2’; did you mean ‘Py_UCS4’?
             Py_UCS2* limit_ptr;
             ^~~~~~~
             Py_UCS4
    regex_3/_regex.c:4769:21: error: ‘Py_UCS2’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
             text_ptr = (Py_UCS2*)text + text_pos;
                         ^~~~~~~
                         Py_UCS4
    regex_3/_regex.c:4769:29: error: expected expression before ‘)’ token
             text_ptr = (Py_UCS2*)text + text_pos;
                                 ^
    regex_3/_regex.c:4770:30: error: expected expression before ‘)’ token
             limit_ptr = (Py_UCS2*)text + limit;
                                  ^
    regex_3/_regex.c:4776:40: error: expected expression before ‘)’ token
             text_pos = text_ptr - (Py_UCS2*)text;
                                            ^
    regex_3/_regex.c: In function ‘match_many_SET_REV’:
    regex_3/_regex.c:4814:9: error: unknown type name ‘Py_UCS1’; did you mean ‘Py_UCS4’?
             Py_UCS1* text_ptr;
             ^~~~~~~
             Py_UCS4
    regex_3/_regex.c:4815:9: error: unknown type name ‘Py_UCS1’; did you mean ‘Py_UCS4’?
             Py_UCS1* limit_ptr;
             ^~~~~~~
             Py_UCS4
    regex_3/_regex.c:4817:21: error: ‘Py_UCS1’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
             text_ptr = (Py_UCS1*)text + text_pos;
                         ^~~~~~~
                         Py_UCS4
    regex_3/_regex.c:4817:29: error: expected expression before ‘)’ token
             text_ptr = (Py_UCS1*)text + text_pos;
                                 ^
    regex_3/_regex.c:4818:30: error: expected expression before ‘)’ token
             limit_ptr = (Py_UCS1*)text + limit;
                                  ^
    regex_3/_regex.c:4824:40: error: expected expression before ‘)’ token
             text_pos = text_ptr - (Py_UCS1*)text;
                                            ^
    regex_3/_regex.c:4829:9: error: unknown type name ‘Py_UCS2’; did you mean ‘Py_UCS4’?
             Py_UCS2* text_ptr;
             ^~~~~~~
             Py_UCS4
    regex_3/_regex.c:4830:9: error: unknown type name ‘Py_UCS2’; did you mean ‘Py_UCS4’?
             Py_UCS2* limit_ptr;
             ^~~~~~~
             Py_UCS4
    regex_3/_regex.c:4832:21: error: ‘Py_UCS2’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
             text_ptr = (Py_UCS2*)text + text_pos;
                         ^~~~~~~
                         Py_UCS4
    regex_3/_regex.c:4832:29: error: expected expression before ‘)’ token
             text_ptr = (Py_UCS2*)text + text_pos;
                                 ^
    regex_3/_regex.c:4833:30: error: expected expression before ‘)’ token
             limit_ptr = (Py_UCS2*)text + limit;
                                  ^
    regex_3/_regex.c:4839:40: error: expected expression before ‘)’ token
             text_pos = text_ptr - (Py_UCS2*)text;
                                            ^
    regex_3/_regex.c: In function ‘simple_string_search’:
    regex_3/_regex.c:5120:9: error: unknown type name ‘Py_UCS1’; did you mean ‘Py_UCS4’?
             Py_UCS1* text = (Py_UCS1*)state->text;
             ^~~~~~~
             Py_UCS4
    regex_3/_regex.c:5120:26: error: ‘Py_UCS1’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
             Py_UCS1* text = (Py_UCS1*)state->text;
                              ^~~~~~~
                              Py_UCS4
    regex_3/_regex.c:5120:34: error: expected expression before ‘)’ token
             Py_UCS1* text = (Py_UCS1*)state->text;
                                      ^
    regex_3/_regex.c:5121:18: error: ‘text_ptr’ undeclared (first use in this function); did you mean ‘text_pos’?
             Py_UCS1* text_ptr = text + text_pos;
                      ^~~~~~~~
                      text_pos
    regex_3/_regex.c:5122:18: error: ‘limit_ptr’ undeclared (first use in this function); did you mean ‘limit’?
             Py_UCS1* limit_ptr = text + limit;
                      ^~~~~~~~~
                      limit
    regex_3/_regex.c:5161:9: error: unknown type name ‘Py_UCS2’; did you mean ‘Py_UCS4’?
             Py_UCS2* text = (Py_UCS2*)state->text;
             ^~~~~~~
             Py_UCS4
    regex_3/_regex.c:5161:26: error: ‘Py_UCS2’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
             Py_UCS2* text = (Py_UCS2*)state->text;
                              ^~~~~~~
                              Py_UCS4
    regex_3/_regex.c:5161:34: error: expected expression before ‘)’ token
             Py_UCS2* text = (Py_UCS2*)state->text;
                                      ^
    regex_3/_regex.c: In function ‘simple_string_search_ign’:
    regex_3/_regex.c:5274:9: error: unknown type name ‘Py_UCS1’; did you mean ‘Py_UCS4’?
             Py_UCS1* text = (Py_UCS1*)state->text;
             ^~~~~~~
             Py_UCS4
    regex_3/_regex.c:5274:26: error: ‘Py_UCS1’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
             Py_UCS1* text = (Py_UCS1*)state->text;
                              ^~~~~~~
                              Py_UCS4
    regex_3/_regex.c:5274:34: error: expected expression before ‘)’ token
             Py_UCS1* text = (Py_UCS1*)state->text;
                                      ^
    regex_3/_regex.c:5275:18: error: ‘text_ptr’ undeclared (first use in this function); did you mean ‘text_pos’?
             Py_UCS1* text_ptr = text + text_pos;
                      ^~~~~~~~
                      text_pos
    regex_3/_regex.c:5276:18: error: ‘limit_ptr’ undeclared (first use in this function); did you mean ‘limit’?
             Py_UCS1* limit_ptr = text + limit;
                      ^~~~~~~~~
                      limit
    regex_3/_regex.c:5316:9: error: unknown type name ‘Py_UCS2’; did you mean ‘Py_UCS4’?
             Py_UCS2* text = (Py_UCS2*)state->text;
             ^~~~~~~
             Py_UCS4
    regex_3/_regex.c:5316:26: error: ‘Py_UCS2’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
             Py_UCS2* text = (Py_UCS2*)state->text;
                              ^~~~~~~
                              Py_UCS4
    regex_3/_regex.c:5316:34: error: expected expression before ‘)’ token
             Py_UCS2* text = (Py_UCS2*)state->text;
                                      ^
    regex_3/_regex.c: In function ‘simple_string_search_ign_rev’:
    regex_3/_regex.c:5431:9: error: unknown type name ‘Py_UCS1’; did you mean ‘Py_UCS4’?
             Py_UCS1* text = (Py_UCS1*)state->text;
             ^~~~~~~
             Py_UCS4
    regex_3/_regex.c:5431:26: error: ‘Py_UCS1’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
             Py_UCS1* text = (Py_UCS1*)state->text;
                              ^~~~~~~
                              Py_UCS4
    regex_3/_regex.c:5431:34: error: expected expression before ‘)’ token
             Py_UCS1* text = (Py_UCS1*)state->text;
                                      ^
    regex_3/_regex.c:5432:18: error: ‘text_ptr’ undeclared (first use in this function); did you mean ‘text_pos’?
             Py_UCS1* text_ptr = text + text_pos;
                      ^~~~~~~~
                      text_pos
    regex_3/_regex.c:5433:18: error: ‘limit_ptr’ undeclared (first use in this function); did you mean ‘limit’?
             Py_UCS1* limit_ptr = text + limit;
                      ^~~~~~~~~
                      limit
    regex_3/_regex.c:5473:9: error: unknown type name ‘Py_UCS2’; did you mean ‘Py_UCS4’?
             Py_UCS2* text = (Py_UCS2*)state->text;
             ^~~~~~~
             Py_UCS4
    regex_3/_regex.c:5473:26: error: ‘Py_UCS2’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
             Py_UCS2* text = (Py_UCS2*)state->text;
                              ^~~~~~~
                              Py_UCS4
    regex_3/_regex.c:5473:34: error: expected expression before ‘)’ token
             Py_UCS2* text = (Py_UCS2*)state->text;
                                      ^
    regex_3/_regex.c: In function ‘simple_string_search_rev’:
    regex_3/_regex.c:5583:9: error: unknown type name ‘Py_UCS1’; did you mean ‘Py_UCS4’?
             Py_UCS1* text = (Py_UCS1*)state->text;
             ^~~~~~~
             Py_UCS4
    regex_3/_regex.c:5583:26: error: ‘Py_UCS1’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
             Py_UCS1* text = (Py_UCS1*)state->text;
                              ^~~~~~~
                              Py_UCS4
    regex_3/_regex.c:5583:34: error: expected expression before ‘)’ token
             Py_UCS1* text = (Py_UCS1*)state->text;
                                      ^
    regex_3/_regex.c:5584:18: error: ‘text_ptr’ undeclared (first use in this function); did you mean ‘text_pos’?
             Py_UCS1* text_ptr = text + text_pos;
                      ^~~~~~~~
                      text_pos
    regex_3/_regex.c:5585:18: error: ‘limit_ptr’ undeclared (first use in this function); did you mean ‘limit’?
             Py_UCS1* limit_ptr = text + limit;
                      ^~~~~~~~~
                      limit
    regex_3/_regex.c:5625:9: error: unknown type name ‘Py_UCS2’; did you mean ‘Py_UCS4’?
             Py_UCS2* text = (Py_UCS2*)state->text;
             ^~~~~~~
             Py_UCS4
    regex_3/_regex.c:5625:26: error: ‘Py_UCS2’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
             Py_UCS2* text = (Py_UCS2*)state->text;
                              ^~~~~~~
                              Py_UCS4
    regex_3/_regex.c:5625:34: error: expected expression before ‘)’ token
             Py_UCS2* text = (Py_UCS2*)state->text;
                                      ^
    regex_3/_regex.c: In function ‘fast_string_search’:
    regex_3/_regex.c:5742:9: error: unknown type name ‘Py_UCS1’; did you mean ‘Py_UCS4’?
             Py_UCS1* text_ptr;
             ^~~~~~~
             Py_UCS4
    regex_3/_regex.c:5743:9: error: unknown type name ‘Py_UCS1’; did you mean ‘Py_UCS4’?
             Py_UCS1* limit_ptr;
             ^~~~~~~
             Py_UCS4
    regex_3/_regex.c:5745:21: error: ‘Py_UCS1’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
             text_ptr = (Py_UCS1*)text + text_pos;
                         ^~~~~~~
                         Py_UCS4
    regex_3/_regex.c:5745:29: error: expected expression before ‘)’ token
             text_ptr = (Py_UCS1*)text + text_pos;
                                 ^
    regex_3/_regex.c:5746:30: error: expected expression before ‘)’ token
             limit_ptr = (Py_UCS1*)text + limit;
                                  ^
    regex_3/_regex.c:5760:48: error: expected expression before ‘)’ token
                         return text_ptr - (Py_UCS1*)text;
                                                    ^
    regex_3/_regex.c:5770:9: error: unknown type name ‘Py_UCS2’; did you mean ‘Py_UCS4’?
             Py_UCS2* text_ptr;
             ^~~~~~~
             Py_UCS4
    regex_3/_regex.c:5771:9: error: unknown type name ‘Py_UCS2’; did you mean ‘Py_UCS4’?
             Py_UCS2* limit_ptr;
             ^~~~~~~
             Py_UCS4
    regex_3/_regex.c:5773:21: error: ‘Py_UCS2’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
             text_ptr = (Py_UCS2*)text + text_pos;
                         ^~~~~~~
                         Py_UCS4
    regex_3/_regex.c:5773:29: error: expected expression before ‘)’ token
             text_ptr = (Py_UCS2*)text + text_pos;
                                 ^
    regex_3/_regex.c:5774:30: error: expected expression before ‘)’ token
             limit_ptr = (Py_UCS2*)text + limit;
                                  ^
    regex_3/_regex.c:5788:48: error: expected expression before ‘)’ token
                         return text_ptr - (Py_UCS2*)text;
                                                    ^
    regex_3/_regex.c: In function ‘fast_string_search_ign’:
    regex_3/_regex.c:5857:9: error: unknown type name ‘Py_UCS1’; did you mean ‘Py_UCS4’?
             Py_UCS1* text_ptr;
             ^~~~~~~
             Py_UCS4
    regex_3/_regex.c:5858:9: error: unknown type name ‘Py_UCS1’; did you mean ‘Py_UCS4’?
             Py_UCS1* limit_ptr;
             ^~~~~~~
             Py_UCS4
    regex_3/_regex.c:5860:21: error: ‘Py_UCS1’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
             text_ptr = (Py_UCS1*)text + text_pos;
                         ^~~~~~~
                         Py_UCS4
    regex_3/_regex.c:5860:29: error: expected expression before ‘)’ token
             text_ptr = (Py_UCS1*)text + text_pos;
                                 ^
    regex_3/_regex.c:5861:30: error: expected expression before ‘)’ token
             limit_ptr = (Py_UCS1*)text + limit;
                                  ^
    regex_3/_regex.c:5876:48: error: expected expression before ‘)’ token
                         return text_ptr - (Py_UCS1*)text;
                                                    ^
    regex_3/_regex.c:5886:9: error: unknown type name ‘Py_UCS2’; did you mean ‘Py_UCS4’?
             Py_UCS2* text_ptr;
             ^~~~~~~
             Py_UCS4
    regex_3/_regex.c:5887:9: error: unknown type name ‘Py_UCS2’; did you mean ‘Py_UCS4’?
             Py_UCS2* limit_ptr;
             ^~~~~~~
             Py_UCS4
    regex_3/_regex.c:5889:21: error: ‘Py_UCS2’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
             text_ptr = (Py_UCS2*)text + text_pos;
                         ^~~~~~~
                         Py_UCS4
    regex_3/_regex.c:5889:29: error: expected expression before ‘)’ token
             text_ptr = (Py_UCS2*)text + text_pos;
                                 ^
    regex_3/_regex.c:5890:30: error: expected expression before ‘)’ token
             limit_ptr = (Py_UCS2*)text + limit;
                                  ^
    regex_3/_regex.c:5905:48: error: expected expression before ‘)’ token
                         return text_ptr - (Py_UCS2*)text;
                                                    ^
    regex_3/_regex.c: In function ‘fast_string_search_ign_rev’:
    regex_3/_regex.c:5973:9: error: unknown type name ‘Py_UCS1’; did you mean ‘Py_UCS4’?
             Py_UCS1* text_ptr;
             ^~~~~~~
             Py_UCS4
    regex_3/_regex.c:5974:9: error: unknown type name ‘Py_UCS1’; did you mean ‘Py_UCS4’?
             Py_UCS1* limit_ptr;
             ^~~~~~~
             Py_UCS4
    regex_3/_regex.c:5976:21: error: ‘Py_UCS1’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
             text_ptr = (Py_UCS1*)text + text_pos;
                         ^~~~~~~
                         Py_UCS4
    regex_3/_regex.c:5976:29: error: expected expression before ‘)’ token
             text_ptr = (Py_UCS1*)text + text_pos;
                                 ^
    regex_3/_regex.c:5977:30: error: expected expression before ‘)’ token
             limit_ptr = (Py_UCS1*)text + limit;
                                  ^
    regex_3/_regex.c:5992:48: error: expected expression before ‘)’ token
                         return text_ptr - (Py_UCS1*)text + length;
                                                    ^
    regex_3/_regex.c:6002:9: error: unknown type name ‘Py_UCS2’; did you mean ‘Py_UCS4’?
             Py_UCS2* text_ptr;
             ^~~~~~~
             Py_UCS4
    regex_3/_regex.c:6003:9: error: unknown type name ‘Py_UCS2’; did you mean ‘Py_UCS4’?
             Py_UCS2* limit_ptr;
             ^~~~~~~
             Py_UCS4
    regex_3/_regex.c:6005:21: error: ‘Py_UCS2’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
             text_ptr = (Py_UCS2*)text + text_pos;
                         ^~~~~~~
                         Py_UCS4
    regex_3/_regex.c:6005:29: error: expected expression before ‘)’ token
             text_ptr = (Py_UCS2*)text + text_pos;
                                 ^
    regex_3/_regex.c:6006:30: error: expected expression before ‘)’ token
             limit_ptr = (Py_UCS2*)text + limit;
                                  ^
    regex_3/_regex.c:6021:48: error: expected expression before ‘)’ token
                         return text_ptr - (Py_UCS2*)text + length;
                                                    ^
    regex_3/_regex.c: In function ‘fast_string_search_rev’:
    regex_3/_regex.c:6084:9: error: unknown type name ‘Py_UCS1’; did you mean ‘Py_UCS4’?
             Py_UCS1* text_ptr;
             ^~~~~~~
             Py_UCS4
    regex_3/_regex.c:6085:9: error: unknown type name ‘Py_UCS1’; did you mean ‘Py_UCS4’?
             Py_UCS1* limit_ptr;
             ^~~~~~~
             Py_UCS4
    regex_3/_regex.c:6087:21: error: ‘Py_UCS1’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
             text_ptr = (Py_UCS1*)text + text_pos;
                         ^~~~~~~
                         Py_UCS4
    regex_3/_regex.c:6087:29: error: expected expression before ‘)’ token
             text_ptr = (Py_UCS1*)text + text_pos;
                                 ^
    regex_3/_regex.c:6088:30: error: expected expression before ‘)’ token
             limit_ptr = (Py_UCS1*)text + limit;
                                  ^
    regex_3/_regex.c:6102:48: error: expected expression before ‘)’ token
                         return text_ptr - (Py_UCS1*)text + length;
                                                    ^
    regex_3/_regex.c:6112:9: error: unknown type name ‘Py_UCS2’; did you mean ‘Py_UCS4’?
             Py_UCS2* text_ptr;
             ^~~~~~~
             Py_UCS4
    regex_3/_regex.c:6113:9: error: unknown type name ‘Py_UCS2’; did you mean ‘Py_UCS4’?
             Py_UCS2* limit_ptr;
             ^~~~~~~
             Py_UCS4
    regex_3/_regex.c:6115:21: error: ‘Py_UCS2’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
             text_ptr = (Py_UCS2*)text + text_pos;
                         ^~~~~~~
                         Py_UCS4
    regex_3/_regex.c:6115:29: error: expected expression before ‘)’ token
             text_ptr = (Py_UCS2*)text + text_pos;
                                 ^
    regex_3/_regex.c:6116:30: error: expected expression before ‘)’ token
             limit_ptr = (Py_UCS2*)text + limit;
                                  ^
    regex_3/_regex.c:6130:48: error: expected expression before ‘)’ token
                         return text_ptr - (Py_UCS2*)text + length;
                                                    ^
    regex_3/_regex.c: In function ‘build_unicode_value’:
    regex_3/_regex.c:9478:16: error: ‘PyUnicode_1BYTE_KIND’ undeclared (first use in this function); did you mean ‘PyUnicode_GET_SIZE’?
             kind = PyUnicode_1BYTE_KIND;
                    ^~~~~~~~~~~~~~~~~~~~
                    PyUnicode_GET_SIZE
    regex_3/_regex.c:9481:16: error: ‘PyUnicode_2BYTE_KIND’ undeclared (first use in this function); did you mean ‘PyUnicode_GET_SIZE’?
             kind = PyUnicode_2BYTE_KIND;
                    ^~~~~~~~~~~~~~~~~~~~
                    PyUnicode_GET_SIZE
    regex_3/_regex.c:9484:16: error: ‘PyUnicode_4BYTE_KIND’ undeclared (first use in this function); did you mean ‘PyUnicode_GET_SIZE’?
             kind = PyUnicode_4BYTE_KIND;
                    ^~~~~~~~~~~~~~~~~~~~
                    PyUnicode_GET_SIZE
    regex_3/_regex.c:9491:12: warning: implicit declaration of function ‘PyUnicode_FromKindAndData’; did you mean ‘PyUnicode_FromOrdinal’? [-Wimplicit-function-declaration]
         return PyUnicode_FromKindAndData(kind, buffer, len);
                ^~~~~~~~~~~~~~~~~~~~~~~~~
                PyUnicode_FromOrdinal
    regex_3/_regex.c:9491:12: warning: returning ‘int’ from a function with return type ‘PyObject *’ {aka ‘struct _object *’} makes pointer from integer without a cast [-Wint-conversion]
         return PyUnicode_FromKindAndData(kind, buffer, len);
                ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    regex_3/_regex.c: In function ‘build_bytes_value’:
    regex_3/_regex.c:9499:5: error: unknown type name ‘Py_UCS1’; did you mean ‘Py_UCS4’?
         Py_UCS1* byte_buffer;
         ^~~~~~~
         Py_UCS4
    regex_3/_regex.c:9514:9: error: unknown type name ‘Py_UCS2’; did you mean ‘Py_UCS4’?
             Py_UCS2 c = ((Py_UCS2*)buffer)[i];
             ^~~~~~~
             Py_UCS4
    regex_3/_regex.c:9514:23: error: ‘Py_UCS2’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
             Py_UCS2 c = ((Py_UCS2*)buffer)[i];
                           ^~~~~~~
                           Py_UCS4
    regex_3/_regex.c:9514:31: error: expected expression before ‘)’ token
             Py_UCS2 c = ((Py_UCS2*)buffer)[i];
                                   ^
    regex_3/_regex.c:9518:27: error: ‘Py_UCS1’ undeclared (first use in this function); did you mean ‘Py_UCS4’?
             byte_buffer[i] = (Py_UCS1)c;
                               ^~~~~~~
                               Py_UCS4
    regex_3/_regex.c:9518:35: error: expected ‘;’ before ‘c’
             byte_buffer[i] = (Py_UCS1)c;
                                       ^
                                       ;
    regex_3/_regex.c: In function ‘get_string’:
    regex_3/_regex.c:18037:13: warning: implicit declaration of function ‘PyUnicode_READY’; did you mean ‘PyUnicode_Check’? [-Wimplicit-function-declaration]
             if (PyUnicode_READY(string) == -1)
                 ^~~~~~~~~~~~~~~
                 PyUnicode_Check
    regex_3/_regex.c:18040:39: warning: implicit declaration of function ‘PyUnicode_DATA’; did you mean ‘PyUnicode_AS_DATA’? [-Wimplicit-function-declaration]
             str_info->characters = (void*)PyUnicode_DATA(string);
                                           ^~~~~~~~~~~~~~
                                           PyUnicode_AS_DATA
    regex_3/_regex.c:18040:32: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
             str_info->characters = (void*)PyUnicode_DATA(string);
                                    ^
    regex_3/_regex.c:18041:28: warning: implicit declaration of function ‘PyUnicode_GET_LENGTH’; did you mean ‘PyUnicode_GET_SIZE’? [-Wimplicit-function-declaration]
             str_info->length = PyUnicode_GET_LENGTH(string);
                                ^~~~~~~~~~~~~~~~~~~~
                                PyUnicode_GET_SIZE
    regex_3/_regex.c:18042:30: warning: implicit declaration of function ‘PyUnicode_KIND’; did you mean ‘PyUnicode_Join’? [-Wimplicit-function-declaration]
             str_info->charsize = PyUnicode_KIND(string);
                                  ^~~~~~~~~~~~~~
                                  PyUnicode_Join
    regex_3/_regex.c: In function ‘ensure_immutable’:
    regex_3/_regex.c:18557:22: warning: implicit declaration of function ‘PyBytes_FromObject’; did you mean ‘PyBuffer_FromObject’? [-Wimplicit-function-declaration]
             new_string = PyBytes_FromObject(string);
                          ^~~~~~~~~~~~~~~~~~
                          PyBuffer_FromObject
    regex_3/_regex.c:18557:20: warning: assignment to ‘PyObject *’ {aka ‘struct _object *’} from ‘int’ makes pointer from integer without a cast [-Wint-conversion]
             new_string = PyBytes_FromObject(string);
                        ^
    regex_3/_regex.c: In function ‘unicode_slice’:
    regex_3/_regex.c:18585:12: warning: implicit declaration of function ‘PyUnicode_Substring’; did you mean ‘PyUnicode_FromString’? [-Wimplicit-function-declaration]
         return PyUnicode_Substring(string, start, end);
                ^~~~~~~~~~~~~~~~~~~
                PyUnicode_FromString
    regex_3/_regex.c:18585:12: warning: returning ‘int’ from a function with return type ‘PyObject *’ {aka ‘struct _object *’} makes pointer from integer without a cast [-Wint-conversion]
         return PyUnicode_Substring(string, start, end);
                ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    regex_3/_regex.c: In function ‘add_to_join_list’:
    regex_3/_regex.c:19408:22: warning: assignment to ‘PyObject *’ {aka ‘struct _object *’} from ‘int’ makes pointer from integer without a cast [-Wint-conversion]
                 new_item = PyBytes_FromObject(item);
                          ^
    regex_3/_regex.c: In function ‘join_list_info’:
    regex_3/_regex.c:19475:22: warning: implicit declaration of function ‘PyUnicode_New’; did you mean ‘PyCode_New’? [-Wimplicit-function-declaration]
                 joiner = PyUnicode_New(0, 0);
                          ^~~~~~~~~~~~~
                          PyCode_New
    regex_3/_regex.c:19475:20: warning: assignment to ‘PyObject *’ {aka ‘struct _object *’} from ‘int’ makes pointer from integer without a cast [-Wint-conversion]
                 joiner = PyUnicode_New(0, 0);
                        ^
    regex_3/_regex.c:19505:16: warning: returning ‘int’ from a function with return type ‘PyObject *’ {aka ‘struct _object *’} makes pointer from integer without a cast [-Wint-conversion]
             return PyUnicode_New(0, 0);
                    ^~~~~~~~~~~~~~~~~~~
    regex_3/_regex.c: In function ‘match_get_group_slice’:
    regex_3/_regex.c:19809:30: warning: passing argument 1 of ‘PySlice_GetIndicesEx’ from incompatible pointer type [-Wincompatible-pointer-types]
         if (PySlice_GetIndicesEx(slice, (Py_ssize_t)self->group_count + 1, &start,
                                  ^~~~~
    In file included from /usr/include/python2.7/Python.h:115,
                     from regex_3/_regex.c:50:
    /usr/include/python2.7/sliceobject.h:37:53: note: expected ‘PySliceObject *’ {aka ‘struct <anonymous> *’} but argument is of type ‘PyObject *’ {aka ‘struct _object *’}
     PyAPI_FUNC(int) PySlice_GetIndicesEx(PySliceObject *r, Py_ssize_t length,
                                          ~~~~~~~~~~~~~~~^
    regex_3/_regex.c: In function ‘index_to_integer’:
    regex_3/_regex.c:21024:19: warning: implicit declaration of function ‘PyLong_FromUnicodeObject’; did you mean ‘PyLong_FromUnicode’? [-Wimplicit-function-declaration]
             int_obj = PyLong_FromUnicodeObject(item, 0);
                       ^~~~~~~~~~~~~~~~~~~~~~~~
                       PyLong_FromUnicode
    regex_3/_regex.c:21024:17: warning: assignment to ‘PyObject *’ {aka ‘struct _object *’} from ‘int’ makes pointer from integer without a cast [-Wint-conversion]
             int_obj = PyLong_FromUnicodeObject(item, 0);
                     ^
    regex_3/_regex.c: In function ‘pattern_sizeof’:
    regex_3/_regex.c:22280:13: warning: implicit declaration of function ‘PyLong_AsSize_t’; did you mean ‘PyLong_AsSsize_t’? [-Wimplicit-function-declaration]
         size += PyLong_AsSize_t(result);
                 ^~~~~~~~~~~~~~~
                 PyLong_AsSsize_t
    regex_3/_regex.c: At top level:
    regex_3/_regex.c:26217:15: error: variable ‘regex_module’ has initializer but incomplete type
     static struct PyModuleDef regex_module = {
                   ^~~~~~~~~~~
    regex_3/_regex.c:26218:5: error: ‘PyModuleDef_HEAD_INIT’ undeclared here (not in a function); did you mean ‘PyObject_HEAD_INIT’?
         PyModuleDef_HEAD_INIT,
         ^~~~~~~~~~~~~~~~~~~~~
         PyObject_HEAD_INIT
    regex_3/_regex.c:26218:5: warning: excess elements in struct initializer
    regex_3/_regex.c:26218:5: note: (near initialization for ‘regex_module’)
    regex_3/_regex.c:26219:5: warning: excess elements in struct initializer
         "_regex",
         ^~~~~~~~
    regex_3/_regex.c:26219:5: note: (near initialization for ‘regex_module’)
    regex_3/_regex.c:26220:5: warning: excess elements in struct initializer
         NULL,
         ^~~~
    regex_3/_regex.c:26220:5: note: (near initialization for ‘regex_module’)
    regex_3/_regex.c:26221:5: warning: excess elements in struct initializer
         -1,
         ^
    regex_3/_regex.c:26221:5: note: (near initialization for ‘regex_module’)
    regex_3/_regex.c:26222:5: warning: excess elements in struct initializer
         _functions,
         ^~~~~~~~~~
    regex_3/_regex.c:26222:5: note: (near initialization for ‘regex_module’)
    regex_3/_regex.c:26223:5: warning: excess elements in struct initializer
         NULL,
         ^~~~
    regex_3/_regex.c:26223:5: note: (near initialization for ‘regex_module’)
    regex_3/_regex.c:26224:5: warning: excess elements in struct initializer
         NULL,
         ^~~~
    regex_3/_regex.c:26224:5: note: (near initialization for ‘regex_module’)
    regex_3/_regex.c:26225:5: warning: excess elements in struct initializer
         NULL,
         ^~~~
    regex_3/_regex.c:26225:5: note: (near initialization for ‘regex_module’)
    regex_3/_regex.c:26226:5: warning: excess elements in struct initializer
         NULL
         ^~~~
    regex_3/_regex.c:26226:5: note: (near initialization for ‘regex_module’)
    regex_3/_regex.c: In function ‘PyInit__regex’:
    regex_3/_regex.c:26287:16: warning: ‘return’ with a value, in function returning void
             return NULL;
                    ^~~~
    regex_3/_regex.c:26230:16: note: declared here
     PyMODINIT_FUNC PyInit__regex(void) {
                    ^~~~~~~~~~~~~
    regex_3/_regex.c:26289:16: warning: ‘return’ with a value, in function returning void
             return NULL;
                    ^~~~
    regex_3/_regex.c:26230:16: note: declared here
     PyMODINIT_FUNC PyInit__regex(void) {
                    ^~~~~~~~~~~~~
    regex_3/_regex.c:26291:16: warning: ‘return’ with a value, in function returning void
             return NULL;
                    ^~~~
    regex_3/_regex.c:26230:16: note: declared here
     PyMODINIT_FUNC PyInit__regex(void) {
                    ^~~~~~~~~~~~~
    regex_3/_regex.c:26293:16: warning: ‘return’ with a value, in function returning void
             return NULL;
                    ^~~~
    regex_3/_regex.c:26230:16: note: declared here
     PyMODINIT_FUNC PyInit__regex(void) {
                    ^~~~~~~~~~~~~
    regex_3/_regex.c:26295:16: warning: ‘return’ with a value, in function returning void
             return NULL;
                    ^~~~
    regex_3/_regex.c:26230:16: note: declared here
     PyMODINIT_FUNC PyInit__regex(void) {
                    ^~~~~~~~~~~~~
    regex_3/_regex.c:26299:9: warning: implicit declaration of function ‘PyModule_Create’; did you mean ‘PyModule_Check’? [-Wimplicit-function-declaration]
         m = PyModule_Create(&regex_module);
             ^~~~~~~~~~~~~~~
             PyModule_Check
    regex_3/_regex.c:26299:7: warning: assignment to ‘PyObject *’ {aka ‘struct _object *’} from ‘int’ makes pointer from integer without a cast [-Wint-conversion]
         m = PyModule_Create(&regex_module);
           ^
    regex_3/_regex.c:26301:16: warning: ‘return’ with a value, in function returning void
             return NULL;
                    ^~~~
    regex_3/_regex.c:26230:16: note: declared here
     PyMODINIT_FUNC PyInit__regex(void) {
                    ^~~~~~~~~~~~~
    regex_3/_regex.c:26326:16: warning: ‘return’ with a value, in function returning void
             return NULL;
                    ^~~~
    regex_3/_regex.c:26230:16: note: declared here
     PyMODINIT_FUNC PyInit__regex(void) {
                    ^~~~~~~~~~~~~
    regex_3/_regex.c:26329:12: warning: ‘return’ with a value, in function returning void
         return m;
                ^
    regex_3/_regex.c:26230:16: note: declared here
     PyMODINIT_FUNC PyInit__regex(void) {
                    ^~~~~~~~~~~~~
    regex_3/_regex.c: At top level:
    regex_3/_regex.c:26217:27: error: storage size of ‘regex_module’ isn’t known
     static struct PyModuleDef regex_module = {
                               ^~~~~~~~~~~~
    regex_3/_regex.c: In function ‘bytes2_char_at’:
    regex_3/_regex.c:771:1: warning: control reaches end of non-void function [-Wreturn-type]
     }
     ^
    regex_3/_regex.c: In function ‘bytes1_char_at’:
    regex_3/_regex.c:756:1: warning: control reaches end of non-void function [-Wreturn-type]
     }
     ^
    regex_3/_regex.c: In function ‘bytes2_point_to’:
    regex_3/_regex.c:781:1: warning: control reaches end of non-void function [-Wreturn-type]
     }
     ^
    regex_3/_regex.c: In function ‘bytes1_point_to’:
    regex_3/_regex.c:766:1: warning: control reaches end of non-void function [-Wreturn-type]
     }
     ^
    error: command 'x86_64-linux-gnu-gcc' failed with exit status 1
    ----------------------------------------
ERROR: Command errored out with exit status 1: /workspace/lims/venv/bin/python -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-wRqfdU/regex/setup.py'"'"'; __file__='"'"'/tmp/pip-install-wRqfdU/regex/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' install --record /tmp/pip-record-PxZeHD/install-record.txt --single-version-externally-managed --compile --install-headers /workspace/lims/venv/include/site/python2.7/regex Check the logs for full command output.