From 8ec5dc19694c7d68c91bfa6d1b24ff1e67e42f42 Mon Sep 17 00:00:00 2001 From: narimiran Date: Sat, 12 Sep 2020 08:42:43 +0200 Subject: [PATCH] Revert "[backport] fix #15064, strscans.scanf edge case for '$+' (#15223)" This reverts commit f713c5416620d0b81327fefa822681a423d0e68f. --- lib/pure/strscans.nim | 2 +- tests/stdlib/tstrscans.nim | 16 +--------------- 2 files changed, 2 insertions(+), 16 deletions(-) diff --git a/lib/pure/strscans.nim b/lib/pure/strscans.nim index f078b0d207..0125a19266 100644 --- a/lib/pure/strscans.nim +++ b/lib/pure/strscans.nim @@ -396,7 +396,7 @@ macro scanf*(input: string; pattern: static[string]; results: varargs[typed]): b var resLen = genSym(nskLet, "resLen") conds.add newLetStmt(resLen, newCall(bindSym"parseUntil", inp, results[i], newLit(token), idx)) - conds.add newCall(bindSym">=", resLen, newLit min) + conds.add newCall(bindSym"!=", resLen, newLit min) conds.add resLen else: matchError diff --git a/tests/stdlib/tstrscans.nim b/tests/stdlib/tstrscans.nim index 6f952368c9..08fc14e455 100644 --- a/tests/stdlib/tstrscans.nim +++ b/tests/stdlib/tstrscans.nim @@ -79,22 +79,8 @@ block EmptyTuple: block Arrow: let text = "foo;bar;baz;" var idx = 0 + var res = "" doAssert scanp(text, idx, +(~{';','\0'} -> (discard $_)), ';') doAssert scanp(text, idx, +(~{';','\0'} -> (discard $_)), ';') doAssert scanp(text, idx, +(~{';','\0'} -> (discard $_)), ';') doAssert scanp(text, idx, +(~{';','\0'} -> (discard $_)), ';') == false - - -block issue15064: - var nick1, msg1: string - doAssert scanf(" a", "<$+> $+", nick1, msg1) - doAssert nick1 == "abcd" - doAssert msg1 == "a" - - var nick2, msg2: string - doAssert(not scanf(" ", "<$+> $+", nick2, msg2)) - - var nick3, msg3: string - doAssert scanf(" ", "<$+> $*", nick3, msg3) - doAssert nick3 == "abcd" - doAssert msg3 == ""