From ce1423d5608ea9ef8d87603fe76526e096508c28 Mon Sep 17 00:00:00 2001 From: Logan Smyth Date: Sat, 13 Feb 2016 10:08:05 -0800 Subject: [PATCH] Properly fail to parse >== and <== - fixes T2921 --- packages/babylon/src/tokenizer/index.js | 3 ++- packages/babylon/test/fixtures/core/regression/T2921/actual.js | 1 + .../babylon/test/fixtures/core/regression/T2921/options.json | 3 +++ 3 files changed, 6 insertions(+), 1 deletion(-) create mode 100644 packages/babylon/test/fixtures/core/regression/T2921/actual.js create mode 100644 packages/babylon/test/fixtures/core/regression/T2921/options.json diff --git a/packages/babylon/src/tokenizer/index.js b/packages/babylon/src/tokenizer/index.js index 7203e30aac..7da2c16f3e 100644 --- a/packages/babylon/src/tokenizer/index.js +++ b/packages/babylon/src/tokenizer/index.js @@ -373,7 +373,8 @@ export default class Tokenizer { } if (next === 61) { - size = this.input.charCodeAt(this.state.pos + 2) === 61 ? 3 : 2; + // <= | >= + size = 2; } return this.finishOp(tt.relational, size); diff --git a/packages/babylon/test/fixtures/core/regression/T2921/actual.js b/packages/babylon/test/fixtures/core/regression/T2921/actual.js new file mode 100644 index 0000000000..55e31634f5 --- /dev/null +++ b/packages/babylon/test/fixtures/core/regression/T2921/actual.js @@ -0,0 +1 @@ +a <== b; diff --git a/packages/babylon/test/fixtures/core/regression/T2921/options.json b/packages/babylon/test/fixtures/core/regression/T2921/options.json new file mode 100644 index 0000000000..27a7b64d71 --- /dev/null +++ b/packages/babylon/test/fixtures/core/regression/T2921/options.json @@ -0,0 +1,3 @@ +{ + "throws": "Unexpected token (1:4)" +}