Hi, all.
I ran across a number of seeming anomalies in the header files for
lsb-base-1.3.4.1. This came about in an effort to build the Adaptive
Communication Environment (http://www.cs.wustl.edu/~schmidt/ACE.html) with
the LinuxBase development environment.
When using lsbdev-base-1.3.4-1, the following anomalies were encountered:
In pthread.h, the function prototypes for:
_pthread_cleanup_pop
_pthread_cleanup_push
conflict with macros defined earlier in the header file and cannot work.
In signal.h, the function prototypes, according to the relevant
specification, "CAE System Interfaces and Headers, Issue 5", are incorrect:
The third parameter is extra:
extern int sigwaitinfo (const sigset_t *, siginfo_t *,
const struct timespec *);
The first argument should be a const pointer type:
extern int sigtimedwait (sigset_t *, siginfo_t *, struct timespec *);
extern int sigwaitinfo (const sigset_t *, siginfo_t *,
const struct timespec *);
extern int sigtimedwait (sigset_t *, siginfo_t *, struct timespec *);
Similarly, is defined:
extern int sigaction (int, struct sigaction *, struct sigaction *);
but the second parameter should be a const type:
extern int sigaction (int, const struct sigaction *, struct sigaction *);
In ctime.h:
The ctime function prototypes should be corrected to take pointers to
const time_t values:
extern char *ctime (const time_t *);
extern char *ctime_r (const time_t *, char *);
Are these known issues or am I misinterpreting the standard?
Thanks,
John
lmpx.com only provides a reader for public news (NNTP) servers. It is not
affiliated with the servers or forums shown here and is not responsible for
the content of articles, which is written by their respective authors.