On Thu, Apr 6, 2017 at 6:30 PM, Joel Sherrill <j...@rtems.org> wrote: > Following up on my own post. You can avoid some casts. > This is also an example of how pulling a thread can lead > somewhere more complicated. :) > > %z should work portably for size_t and should avoid a cast. > > libdl already has this in libdl/rtl-shell.c which tries to provide a > C99 inttypes.h like constant. > > if defined(__moxie__) > #define PRIdoff_t PRIo32 > #else > #define PRIdoff_t PRIo64 > #endif > > Unfortunately, there is something similar defined in > testsuites/psxtests/include/pmacros.h which looks to be > better done. > > Searching in cpukit for similar code turns up a number of > other types and repetitions. > > grep -r "#define PRI" . | grep -v PRIORITY | grep -v PRINT > > I would suggest the more elegant solution for the PRI constant > off_t, time_t, and mode_t would be > cpukit/include/rtems/inttypes_extensions.h > and that the best of all the duplicated definitions be moved there. > That centralizes them and them everyone uses the same ones. > It would be good to consolidate these. I'd suggest it comes in through #include <rtems/inttypes.h> without the _extensions bit is unnecessary if this is part of the "RTEMS" headers.
I think there are some problems with _ in file names for some platforms? > I suspect that many of the remaining printf format warnings can then > be resolved using these helpers or by adding more. > Yes, and the rtems/inttypes.h should ideally pull in "Standard" inttypes.h and then extends them. This would be my preference. > This idea needs a review and approval by at least one other > developer. Especially the file name. > > --joel > > > On Thu, Apr 6, 2017 at 4:10 PM, Cillian O'Donnell <cpodonne...@gmail.com> > wrote: >> >> 2 of the warnings cropped up on further testing of other BSPs. Sorry, >> should of been more careful. >> Also git send-email format. >> --- >> cpukit/libdl/rtl-obj-cache.c | 18 +++++++++--------- >> 1 file changed, 9 insertions(+), 9 deletions(-) >> >> diff --git a/cpukit/libdl/rtl-obj-cache.c b/cpukit/libdl/rtl-obj-cache.c >> index a4676cf..d3cd953 100644 >> --- a/cpukit/libdl/rtl-obj-cache.c >> +++ b/cpukit/libdl/rtl-obj-cache.c >> @@ -78,11 +78,11 @@ rtems_rtl_obj_cache_read (rtems_rtl_obj_cache_t* >> cache, >> struct stat sb; >> >> if (rtems_rtl_trace (RTEMS_RTL_TRACE_CACHE)) >> - printf ("rtl: cache: %2d: fd=%d offset=%d length=%d area=[%d,%d] >> cache=[%d,%d] size=%d\n", >> - fd, cache->fd, (int) offset, (int) *length, >> - (int) offset, (int) offset + *length, >> - (int) cache->offset, (int) cache->offset + cache->level, >> - (int) cache->file_size); >> + printf ("rtl: cache: %2d: fd=%d offset=%llu length=%d area=[%d,%llu] >> cache=[%llu,%llu] size=%lu\n", >> + fd, cache->fd, offset, (int) *length, >> + (int) offset, offset + *length, >> + cache->offset, cache->offset + cache->level, >> + (unsigned long) cache->file_size); >> >> if (*length > cache->size) >> { >> @@ -172,10 +172,10 @@ rtems_rtl_obj_cache_read (rtems_rtl_obj_cache_t* >> cache, >> } >> >> if (rtems_rtl_trace (RTEMS_RTL_TRACE_CACHE)) >> - printf ("rtl: cache: %2d: seek: offset=%d buffer_offset=%d read=%d >> cache=[%d,%d] dist=%d\n", >> - fd, (int) offset + buffer_offset, (int) buffer_offset, >> (int) buffer_read, >> - (int) offset, (int) offset + buffer_read, >> - (int) (cache->file_size - offset)); >> + printf ("rtl: cache: %2d: seek: offset=%llu buffer_offset=%lu >> read=%d cache=[%d,%llu] dist=%llu\n", >> + fd, offset + buffer_offset, (unsigned long) buffer_offset, >> (int) buffer_read, >> + (int) offset, offset + buffer_read, >> + (cache->file_size - offset)); >> >> if (lseek (fd, offset + buffer_offset, SEEK_SET) < 0) >> { >> -- >> 2.7.4 >> >> _______________________________________________ >> devel mailing list >> devel@rtems.org >> http://lists.rtems.org/mailman/listinfo/devel > > > > _______________________________________________ > devel mailing list > devel@rtems.org > http://lists.rtems.org/mailman/listinfo/devel _______________________________________________ devel mailing list devel@rtems.org http://lists.rtems.org/mailman/listinfo/devel