diff -up libical-2.0.0/src/libical/icalrecur.c.arm libical-2.0.0/src/libical/icalrecur.c --- libical-2.0.0/src/libical/icalrecur.c.arm 2016-01-18 15:37:30.117898162 +0100 +++ libical-2.0.0/src/libical/icalrecur.c 2016-01-18 15:37:36.730897882 +0100 @@ -491,8 +491,8 @@ static int icalrecur_add_bydayrules(stru while (n != 0) { int sign = 1; - char weekno; /* note: Novell/Groupwise sends BYDAY=255SU, - so we fit in a signed char to get -1 SU for last Sun */ + signed char weekno; /* note: Novell/Groupwise sends BYDAY=255SU, + so we fit in a signed char to get -1 SU for last Sun */ icalrecurrencetype_weekday wd; if (i == ICAL_BY_DAY_SIZE) { @@ -510,7 +510,7 @@ static int icalrecur_add_bydayrules(stru } /* Get Optional weekno */ - weekno = (char)strtol(t, &t, 10); + weekno = (signed char)strtol(t, &t, 10); if (weekno < 0) { weekno = -weekno; sign = -1;