aboutsummaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorAlon Zakai <alonzakai@gmail.com>2013-07-19 18:11:27 -0700
committerAlon Zakai <alonzakai@gmail.com>2013-07-19 18:12:16 -0700
commitd9d0118d035d5b71edcabd7de7fdb07db0dcffce (patch)
tree0976be258a6b494d9f4e33f75deb3f242b539a11 /tests
parente59bfd4f6cd7afe39411e34b65a161b09ccbbedf (diff)
handle %Nc in sscanf; fixes #1407
Diffstat (limited to 'tests')
-rwxr-xr-xtests/runner.py19
1 files changed, 19 insertions, 0 deletions
diff --git a/tests/runner.py b/tests/runner.py
index b1a9e6b1..9feaeaed 100755
--- a/tests/runner.py
+++ b/tests/runner.py
@@ -6785,6 +6785,25 @@ Pass: 0.000012 0.000012''')
'''
self.do_run(src, '2, , black\n2, ., #001100\n2, X, #111100');
+ def test_sscanf_6(self):
+ src = r'''
+ #include <stdio.h>
+
+ int main()
+ {
+ char *date = "18.07.2013w";
+ char c[10];
+ int y, m, d, i;
+ i = sscanf(date, "%d.%d.%4d%c", &d, &m, &y, c);
+ printf("date: %s; day %2d, month %2d, year %4d, extra: %c, %d\n", date, d, m, y, c[0], i);
+ i = sscanf(date, "%d.%d.%3c", &d, &m, c);
+ printf("date: %s; day %2d, month %2d, year %4d, extra: %s, %d\n", date, d, m, y, c, i);
+ }
+ '''
+ self.do_run(src, '''date: 18.07.2013w; day 18, month 7, year 2013, extra: w, 4
+date: 18.07.2013w; day 18, month 7, year 2013, extra: 201, 3
+''');
+
def test_sscanf_skip(self):
if Settings.USE_TYPED_ARRAYS != 2: return self.skip("need ta2 for full i64")