X-Git-Url: https://yaffs.net/gitweb/?p=yaffs2.git;a=blobdiff_plain;f=yaffs_guts.c;fp=yaffs_guts.c;h=b83fa6388a22f7861cc00d89001678d927568584;hp=41ceb5b526caca8d3a644ca1ae01eeeb55b2b52a;hb=3619653fc6a2759bd90e725c760fd1a57030e396;hpb=e12e51da5815d80399ec8f5b0da69c7cd7a0f42e diff --git a/yaffs_guts.c b/yaffs_guts.c index 41ceb5b..b83fa63 100644 --- a/yaffs_guts.c +++ b/yaffs_guts.c @@ -4902,10 +4902,15 @@ static void yaffs_oh_time_load(u32 *yst_time, u32 *win_time, YTIME_T timeval) u32 lower; lower = timeval & 0xffffffff; - if (sizeof(YTIME_T) > sizeof(u32)) - upper = (timeval >> 32) & 0xffffffff; - else - upper = 0; + /* we have to use #defines here insted of an if statement + otherwise the compiler throws an error saying that + right shift count >= width of type when we are using 32 bit time. + */ + #ifdef CONFIG_YAFFS_USE_32_BIT_TIME_T + upper = 0; + #else + upper = (timeval >> 32) & 0xffffffff; + #endif *yst_time = lower; win_time[0] = lower;