This is the mail archive of the newlib@sourceware.org mailing list for the newlib project.
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
Other format: | [Raw text] |
On 12/15/2014 9:14 AM, Corinna Vinschen wrote: > Hi Joel, > > On Dec 14 23:19, Joel Sherrill wrote: >> Hi >> >> I haven't investigated which other targets have this inconsistency yet. >> But the following code gives a printf format warning on i386-rtems but not >> on sparc-rtems. >> >> #include <stdint.h> >> #include <inttypes.h> >> #include <stdio.h> >> >> void f(uintptr_t me) >> { >> printf( "A: %" PRIdPTR " B: %" PRIdPTR "\n", me, 1 - me ); >> } >> >> This is because intptr_t and uintptr_t are defined as just unsigned int >> on sparc but long unsigned int on i386. >> >> $ sparc-rtems4.11-gcc -dM -E - </dev/null | grep INTPTR >> #define __INTPTR_MAX__ 2147483647 >> #define __INTPTR_TYPE__ int >> #define __UINTPTR_MAX__ 4294967295U >> #define __UINTPTR_TYPE__ unsigned int >> $ i386-rtems4.11-gcc -dM -E - </dev/null | grep INTPTR >> #define __INTPTR_MAX__ 2147483647L >> #define __INTPTR_TYPE__ long int >> #define __UINTPTR_MAX__ 4294967295UL >> #define __UINTPTR_TYPE__ long unsigned int >> >> I don't know whether to start sweeping through gcc and try to get >> these all to just unsigned int or add target architecture specific logic >> to fine tune the inttypes.h that newlib has. It looks like the configure.in >> logic I added a few months cleared up a lot of these but not all. > It's arguably a bug in gcc if the definitions don't match the base type. > I think a patch to gcc would be preferable, but an additional workaround > in newlib, if it's not too convoluted, wouldn't hurt, I guess. > > Just to make sure we both are on the same page, you think that GCC should define it to "unsigned int", not "unsigned long int". I have attached output from a test script trying the test program on every RTEMS target. The results show that GCC is inconsistent to say the least. I can file a GCC PR with this information but I would like to include some other folks as CC' on it because I think it will take some persuading. :) > Corinna > -- Joel Sherrill, Ph.D. Director of Research & Development joel.sherrill@OARcorp.com On-Line Applications Research Ask me about RTEMS: a free RTOS Huntsville AL 35805 Support Available (256) 722-9985
Attachment:
output.txt
Description: Text document
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |