diff --git a/grammar.js b/grammar.js index 80e4ffa..e5a60e5 100644 --- a/grammar.js +++ b/grammar.js @@ -1454,7 +1454,7 @@ module.exports = grammar({ character: $ => seq( "'", - choice(/[^\\']/, $.escape_sequence), + repeat(choice(/[^\\']/, $.escape_sequence)), "'" ), diff --git a/test/corpus/literals.txt b/test/corpus/literals.txt index 5e40d76..1bbf616 100644 --- a/test/corpus/literals.txt +++ b/test/corpus/literals.txt @@ -185,6 +185,9 @@ Characters '\\' 'Ж' '😬' +'\o021' +'\179' +'\u{1F600}' --- @@ -193,7 +196,10 @@ Characters (expression_statement (character (escape_sequence))) (expression_statement (character (escape_sequence))) (expression_statement (character)) - (expression_statement (character))) + (expression_statement (character)) + (expression_statement (character (escape_sequence))) + (expression_statement (character (escape_sequence))) + (expression_statement (character (escape_sequence)))) ============================================ Polyvars