diff --git a/extra/modern/modern-tests.factor b/extra/modern/modern-tests.factor index ff71231544..79db4dd6dc 100644 --- a/extra/modern/modern-tests.factor +++ b/extra/modern/modern-tests.factor @@ -241,3 +241,12 @@ IN: modern.tests { "" } } } [ "foo:: [ 0 ] [ 1 ] [ 2 ] [ 3 ] " string>literals >strings ] unit-test + + +{ t } [ "![[ ]]" [ rewrite-string-exact ] keep sequence= ] unit-test +{ t } [ "![=[ ]=]" [ rewrite-string-exact ] keep sequence= ] unit-test +{ t } [ "![==[ ]==]" [ rewrite-string-exact ] keep sequence= ] unit-test + +{ t } [ "foo[[ ]]" [ rewrite-string-exact ] keep sequence= ] unit-test +{ t } [ "foo[=[ ]=]" [ rewrite-string-exact ] keep sequence= ] unit-test +{ t } [ "foo[==[ ]==]" [ rewrite-string-exact ] keep sequence= ] unit-test diff --git a/extra/modern/modern.factor b/extra/modern/modern.factor index 7a45e5a6c4..b42817026a 100644 --- a/extra/modern/modern.factor +++ b/extra/modern/modern.factor @@ -131,7 +131,7 @@ MACRO:: read-matched ( ch -- quot: ( n string tag -- n' string slice' ) ) : take-comment ( n string slice -- n' string comment ) 2over ?nth char: \[ = [ - [ 1 + ] 2dip 2over ?nth read-double-matched-bracket + [ 1 + ] 2dip 1 modify-to 2over ?nth read-double-matched-bracket ] [ [ slice-til-eol drop ] dip swap 2array ] if ;