6.4.2 under solaris
Volker Stolz
vs at foldr.org
Thu Apr 20 05:38:32 EDT 2006
Am 20. Apr 2006 um 11:19 CEST schrieb Christian Maeder:
> Volker Stolz wrote:
> >Without the 3rd arg is according to POSIX (check your Solaris man page).
> >'buf' is required to be at least 26 bytes.
>
> You're right, but it does not compile without the 3rd argument! Maybe
> this is due to gcc_4.0.3_s10 ? Should one simply rely on ctime?
Now I'm confused...or is the patch reverted? It said:
#if HAVE_CTIME_R
- ctime_r(&now, nowstr, 26);
+ ctime_r(&now, nowstr);
#else
This has got nothing to do with GCC, it's only related to system headers.
Quoth SunOS 5.9:
SYNOPSIS
#include <time.h>
char *ctime_r(const time_t *clock, char *buf, int buflen);
...
POSIX
cc [ flag... ] file... -D_POSIX_PTHREAD_SEMANTICS [ library... ]
char *ctime_r(const time_t *clock, char *buf);
>From my understanding of the patch above (*removing* the 3rd arg), I assumed
that -D_POSIX_PTHREAD_SEMANTICS was set. It should probably be set like
somewhere else (in libraries/bases/cbits/dirUtils.c), but I strongly suggest
not doing this in the same (ie. through #define), but rather indeed setting it
as a compiler flag. Otherwise, one of those days we'll get bitten by compiling
something with skewed headers. Due to the plethora of variables in rts/Makefile,
I'm a bit at a loss where to stick this in.
--
Volker Stolz * http://www-i2.informatik.rwth-aachen.de/stolz/ * PGP * S/MIME
More information about the Glasgow-haskell-users
mailing list