diff options
-rw-r--r-- | cpukit/ChangeLog | 7 | ||||
-rw-r--r-- | cpukit/libcsupport/src/newlibc.c | 4 |
2 files changed, 9 insertions, 2 deletions
diff --git a/cpukit/ChangeLog b/cpukit/ChangeLog index 5b0b80c306..9eae818b9a 100644 --- a/cpukit/ChangeLog +++ b/cpukit/ChangeLog @@ -1,3 +1,10 @@ +2007-04-09 Ralf Corsépius <ralf.corsepius@rtems.org> + + * libcsupport/src/newlibc.c: Add __ATTRIBUTE_IMPURE_PTR__ + (Fixes "relocation truncated to fit: R_MIPS_GPREL16" agains + impure_ptr bug). + Fix abuse of _REENT_INIT(). + 2007-04-05 Joel Sherrill <joel@OARcorp.com> * itron/src/itrontime.c: Fix typo. diff --git a/cpukit/libcsupport/src/newlibc.c b/cpukit/libcsupport/src/newlibc.c index ef151c6e81..35fa3ee1b5 100644 --- a/cpukit/libcsupport/src/newlibc.c +++ b/cpukit/libcsupport/src/newlibc.c @@ -51,7 +51,7 @@ int _fwalk(struct _reent *ptr, int (*function) (FILE *) ); int libc_reentrant; /* do we think we are reentrant? */ -struct _reent libc_global_reent; +struct _reent libc_global_reent __ATTRIBUTE_IMPURE_PTR__ = _REENT_INIT(libc_global_reent); /* * CYGNUS newlib routine that does atexit() processing and flushes @@ -305,7 +305,7 @@ libc_init(int reentrant) rtems_status_code rc; rtems_id extension_id; - libc_global_reent = (struct _reent) _REENT_INIT((libc_global_reent)); +/* libc_global_reent = _REENT_INIT(libc_global_reent); */ _REENT = &libc_global_reent; if (reentrant) { |