diff --git a/core/modern/modern.factor b/core/modern/modern.factor index af002e9e15..04c0e4864c 100644 --- a/core/modern/modern.factor +++ b/core/modern/modern.factor @@ -452,14 +452,14 @@ ERROR: mismatched-terminator lexer slice ; ] if ; : gt-terminator ( lexer slice -- slice/f ) - dupd merge-lex-til-whitespace dup top-level-greater-than? [ + dup top-level-greater-than? [ 2dup [ dup peek-tag ] dip delimiters-match? [ nip terminator-literal make-tag-class-literal ] [ roll-back-lexer f ] if ] [ - nip make-tag-literal + >>partial [ 1 + ] change-n lex-factor ] if ; : ?blank? ( ch/f -- blank/f ) diff --git a/core/modern/out/out-tests.factor b/core/modern/out/out-tests.factor index aa2c90d79f..c70dfd550d 100644 --- a/core/modern/out/out-tests.factor +++ b/core/modern/out/out-tests.factor @@ -78,3 +78,6 @@ in: modern.out.tests { t } [ "a!" rewrite-same-string ] unit-test { t } [ "!" rewrite-same-string ] unit-test { t } [ "!a" rewrite-same-string ] unit-test + +{ t } [ "->[ ]" rewrite-same-string ] unit-test +{ t } [ "abc>[ ]" rewrite-same-string ] unit-test \ No newline at end of file