aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/tokens.rs4
-rw-r--r--test-suite/tests/invalid-misc.rs2
2 files changed, 4 insertions, 2 deletions
diff --git a/src/tokens.rs b/src/tokens.rs
index 1b5a755..79aeb60 100644
--- a/src/tokens.rs
+++ b/src/tokens.rs
@@ -331,7 +331,7 @@ impl<'a> Tokenizer<'a> {
fn literal_string(&mut self, start: usize) -> Result<Token<'a>, Error> {
self.read_string('\'', start, &mut |_me, val, _multi, i, ch| {
- if ch == '\u{09}' || ('\u{20}' <= ch && ch <= '\u{10ffff}') {
+ if ch == '\u{09}' || ('\u{20}' <= ch && ch <= '\u{10ffff}' && ch != '\u{7f}') {
val.push(ch);
Ok(())
} else {
@@ -373,7 +373,7 @@ impl<'a> Tokenizer<'a> {
}
Ok(())
}
- ch if '\u{20}' <= ch && ch <= '\u{10ffff}' => {
+ ch if '\u{20}' <= ch && ch <= '\u{10ffff}' && ch != '\u{7f}' => {
val.push(ch);
Ok(())
}
diff --git a/test-suite/tests/invalid-misc.rs b/test-suite/tests/invalid-misc.rs
index 18edf90..218be4f 100644
--- a/test-suite/tests/invalid-misc.rs
+++ b/test-suite/tests/invalid-misc.rs
@@ -11,4 +11,6 @@ fn bad() {
bad("a = 1_");
bad("''");
bad("a = 9e99999");
+ bad("a = \"\u{7f}\"");
+ bad("a = '\u{7f}'");
}