Upgrade rust/crates/regex-syntax to 0.6.22

Test: make
Change-Id: I4979a9897fa2edeb552d795b067abcdd6036de0a
diff --git a/.cargo_vcs_info.json b/.cargo_vcs_info.json
index 0a27b5e..c70aafb 100644
--- a/.cargo_vcs_info.json
+++ b/.cargo_vcs_info.json
@@ -1,5 +1,5 @@
 {
   "git": {
-    "sha1": "d03ae186b5d9f4d92cb1312ca77e8d9b05efc84d"
+    "sha1": "d27882cbd870cf867975a10ce019c05e86016372"
   }
 }
diff --git a/Android.bp b/Android.bp
index a38d4e2..ba0cc5d 100644
--- a/Android.bp
+++ b/Android.bp
@@ -24,6 +24,9 @@
     srcs: ["src/lib.rs"],
     test_suites: ["general-tests"],
     auto_gen_config: true,
+    test_options: {
+        unit_test: true,
+    },
     edition: "2015",
     features: [
         "default",
diff --git a/Cargo.toml b/Cargo.toml
index f4b1476..0420a2f 100644
--- a/Cargo.toml
+++ b/Cargo.toml
@@ -12,7 +12,7 @@
 
 [package]
 name = "regex-syntax"
-version = "0.6.21"
+version = "0.6.22"
 authors = ["The Rust Project Developers"]
 description = "A regular expression parser."
 homepage = "https://github.com/rust-lang/regex"
diff --git a/Cargo.toml.orig b/Cargo.toml.orig
index 7b56f32..765eb37 100644
--- a/Cargo.toml.orig
+++ b/Cargo.toml.orig
@@ -1,6 +1,6 @@
 [package]
 name = "regex-syntax"
-version = "0.6.21"  #:version
+version = "0.6.22"  #:version
 authors = ["The Rust Project Developers"]
 license = "MIT/Apache-2.0"
 repository = "https://github.com/rust-lang/regex"
diff --git a/METADATA b/METADATA
index dda6e41..1c7218b 100644
--- a/METADATA
+++ b/METADATA
@@ -7,13 +7,13 @@
   }
   url {
     type: ARCHIVE
-    value: "https://static.crates.io/crates/regex-syntax/regex-syntax-0.6.21.crate"
+    value: "https://static.crates.io/crates/regex-syntax/regex-syntax-0.6.22.crate"
   }
-  version: "0.6.21"
+  version: "0.6.22"
   license_type: NOTICE
   last_upgrade_date {
-    year: 2020
-    month: 11
-    day: 2
+    year: 2021
+    month: 1
+    day: 8
   }
 }
diff --git a/TEST_MAPPING b/TEST_MAPPING
index fff6ba4..03d7e78 100644
--- a/TEST_MAPPING
+++ b/TEST_MAPPING
@@ -1,16 +1,11 @@
-// Generated by cargo2android.py for tests in Android.bp
+// Generated by cargo2android.py for tests that depend on this crate.
 {
   "presubmit": [
     {
-      "host": true,
-      "name": "regex-syntax_host_test_src_lib"
-    },
-    {
-      "host": true,
-      "name": "libsqlite3-sys_host_test_src_lib"
-    },
-    {
       "name": "libsqlite3-sys_device_test_src_lib"
+    },
+    {
+      "name": "keystore2_test"
     }
   ]
 }
diff --git a/src/lib.rs b/src/lib.rs
index f35c913..edf1b99 100644
--- a/src/lib.rs
+++ b/src/lib.rs
@@ -155,6 +155,7 @@
 */
 
 #![deny(missing_docs)]
+#![warn(missing_debug_implementations)]
 #![forbid(unsafe_code)]
 
 pub use error::{Error, Result};
diff --git a/src/utf8.rs b/src/utf8.rs
index 489729e..89862af 100644
--- a/src/utf8.rs
+++ b/src/utf8.rs
@@ -84,6 +84,7 @@
 
 use std::char;
 use std::fmt;
+use std::iter::FusedIterator;
 use std::slice;
 
 const MAX_UTF8_BYTES: usize = 4;
@@ -295,6 +296,7 @@
 /// illustrative. In practice, you could just try to decode your byte sequence
 /// and compare it with the scalar value range directly. However, this is not
 /// always possible (for example, in a byte based automaton).
+#[derive(Debug)]
 pub struct Utf8Sequences {
     range_stack: Vec<ScalarRange>,
 }
@@ -388,6 +390,8 @@
     }
 }
 
+impl FusedIterator for Utf8Sequences {}
+
 impl ScalarRange {
     /// split splits this range if it overlaps with a surrogate codepoint.
     ///