Thank you for your patch. I will study it and eventually incorporate it when preparing the next release. For now I do not see anything wrong with it. Kind regards Jose M Calhariz On 18/07/17 03:12, Dengke Du wrote: > glibc time.h header has an undocumented __isleap macro > that we are using anf musl is missing it. > Since it is undocumented & does not appear > on any other libc, stop using it and just define the macro in > locally instead. > > Signed-off-by: Khem Raj <raj.khem@gmail.com> > > Signed-off-by: Dengke Du <dengke.du@windriver.com> > --- > parsetime.y | 11 +++++++---- > 1 file changed, 7 insertions(+), 4 deletions(-) > > diff --git a/parsetime.y b/parsetime.y > index 7005e88..324e6d3 100644 > --- a/parsetime.y > +++ b/parsetime.y > @@ -8,6 +8,9 @@ > > #define YYDEBUG 1 > > +#define is_leap_year(y) \ > + ((y) % 4 == 0 && ((y) % 100 != 0 || (y) % 400 == 0)) > + > struct tm exectm; > static int isgmt; > static int yearspec; > @@ -217,8 +220,8 @@ date : month_name day_number > mnum == 12) && dnum > 31) > || ((mnum == 4 || mnum == 6 || mnum == 9 || > mnum == 11) && dnum > 30) > - || (mnum == 2 && dnum > 29 && __isleap(ynum+1900)) > - || (mnum == 2 && dnum > 28 && !__isleap(ynum+1900)) > + || (mnum == 2 && dnum > 29 && is_leap_year(ynum+1900)) > + || (mnum == 2 && dnum > 28 && !is_leap_year(ynum+1900)) > ) > { > yyerror("Error in day of month"); > @@ -261,8 +264,8 @@ date : month_name day_number > mnum == 12) && dnum > 31) > || ((mnum == 4 || mnum == 6 || mnum == 9 || > mnum == 11) && dnum > 30) > - || (mnum == 2 && dnum > 29 && __isleap(ynum+1900)) > - || (mnum == 2 && dnum > 28 && !__isleap(ynum+1900)) > + || (mnum == 2 && dnum > 29 && is_leap_year(ynum+1900)) > + || (mnum == 2 && dnum > 28 && !is_leap_year(ynum+1900)) > ) > { > yyerror("Error in day of month");
Attachment:
signature.asc
Description: OpenPGP digital signature