miscellaneous fixes + switching modes
- switching modes inside pattern (pattern:
(?i)AB(?c)ABmatches string:"abAB") - better detection of char8_t support
- fix build failure in libc++ debug mode
- remove some shadowing warnings
(?i)AB(?c)AB matches string: "abAB")