Thread View: gnu.g++.lib.bug
1 messages
1 total messages
Started by Rainer Orth
Fri, 02 Oct 1992 11:05
libg++ 2.2 on Solaris 2.0 with gcc 2.2.2 ss-920925
Author: Rainer Orth
Date: Fri, 02 Oct 1992 11:05
Date: Fri, 02 Oct 1992 11:05
71 lines
3541 bytes
3541 bytes
Recently I tried to build libg++ 2.2 on a SPARCstation ELC running Solaris 2.0
with gcc 2.2.2 ss-920925. When doing so, I ran into a few problems, mainly
with the includes:
* libg++/g++-include/sys/socket.h declares
int getsockopt (int, int, int, void *, int *)
int recv (int, void *, int, int)
but <sys/socket.h> has
int getsockopt (int, int, int, char *, int *)
int recv (int, char *, int, int)
* libg++/g++-include/unistd.h has
int vhangup (void)
contrary to <unistd.h>
void vhangup(void)
The following diffs fix those inconsistencies:
===================================================================
RCS file: libg++/g++-include/sys/RCS/socket.h,v
retrieving revision 1.1
diff -u -r1.1 libg++/g++-include/sys/socket.h
--- libg++/g++-include/sys/socket.h 1992/06/18 01:41:56 1.1
+++ libg++/g++-include/sys/socket.h 1992/09/30 19:49:05
@@ -26,10 +26,10 @@
int connect _G_ARGS((int, struct sockaddr*, int));
int getsockname _G_ARGS((int, struct sockaddr*, int*));
int getpeername _G_ARGS((int, struct sockaddr*, int*));
-int getsockopt(int, int, int, void*, int*);
+int getsockopt _G_ARGS((int, int, int, void*, int*));
int listen(int, int);
int rcmd _G_ARGS((char**, int, const char*, const char*, const char*, int*));
-int recv(int, void*, int, int);
+int recv _G_ARGS((int, void*, int, int));
int recvfrom _G_ARGS((int, void*, int, int, void*, int *));
int recvmsg(int, struct msghdr*, int);
int rexec(char**, int, const char*, const char*, const char*, int*);
===================================================================
RCS file: libg++/g++-include/RCS/unistd.h,v
retrieving revision 1.1
diff -u -r1.1 libg++/g++-include/unistd.h
--- libg++/g++-include/unistd.h 1992/06/20 06:13:42 1.1
+++ libg++/g++-include/unistd.h 1992/09/30 19:11:56
@@ -135,7 +135,7 @@
extern int unlink _G_ARGS((const char*));
extern _G_pid_t vfork _G_ARGS((void));
extern int vadvise _G_ARGS((int));
-extern int vhangup _G_ARGS((void));
+//extern int vhangup _G_ARGS((void)); /* commented out for now; wrong for Solaris 2.0 */
extern _G_off_t lseek _G_ARGS((int, long, int));
extern _G_ssize_t read _G_ARGS((int, void*, _G_size_t));
extern _G_ssize_t write _G_ARGS((int, const void*, _G_size_t));
The library cannot currently be built with gcc -g since the compiler
produces invalid debugging info in some cases. gcc gets a segmentation
violation when compiling libg++/src/{Integer, Rational, Complex, Fix,
CursesW}.cc, both with and without -O. Worst of all,
libg++/test-install/foo_main aborts with an assertion failure since the
constructors and destructors aren't called, but this problem can be solved
easily. I've already reported these bugs to bug-g++.
-----------------------------------------------------------------------------
Rainer Orth, Technical Computer Science, University of Bielefeld
Internet: ro@TechFak.Uni-Bielefeld.DE
Thread Navigation
This is a paginated view of messages in the thread with full content displayed inline.
Messages are displayed in chronological order, with the original post highlighted in green.
Use pagination controls to navigate through all messages in large threads.
Back to All Threads