[Bug libstdc++/31117] c++locale.o thread-unsafe in libstdc++

2007-03-22 Thread craig dot lawson at centrify dot com
--- Comment #28 from craig dot lawson at centrify dot com 2007-03-22 23:44 --- For HP-UX, SunOS, and Irix: #if !defined(_POSIX_C_SOURCE) # define _POSIX_C_SOURCE 199506L #elif _POSIX_C_SOURCE199506L # error Conflict #endif (why would anyone compile C++ with POSIX 1995.06

[Bug libstdc++/31117] c++locale.o thread-unsafe in libstdc++

2007-03-15 Thread craig dot lawson at centrify dot com
--- Comment #16 from craig dot lawson at centrify dot com 2007-03-15 18:15 --- (In reply to comment #15) Tried it. Did not work. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31117

[Bug libstdc++/31117] c++locale.o thread-unsafe in libstdc++

2007-03-15 Thread craig dot lawson at centrify dot com
--- Comment #18 from craig dot lawson at centrify dot com 2007-03-15 18:39 --- (In reply to comment #17) Why? Don't know. The file and change were included as expected. Without fully understanding how CPP is evaluating these files, we're shooting in the dark. gcc's -E and -CC

[Bug libstdc++/31117] c++locale.o thread-unsafe in libstdc++

2007-03-15 Thread craig dot lawson at centrify dot com
--- Comment #21 from craig dot lawson at centrify dot com 2007-03-15 19:07 --- (In reply to comment #17) Why? OK, now I know why. Reason is that os_defines.h is included after errno.h. Here's the include sequence: c++locale.cc cerrno /usr/include/errno.h-- extern

[Bug libstdc++/31117] c++locale.o thread-unsafe in libstdc++

2007-03-15 Thread craig dot lawson at centrify dot com
--- Comment #23 from craig dot lawson at centrify dot com 2007-03-15 19:26 --- (In reply to comment #22) Oh yes, you are totally right. The problem is that cerrno is one of the very few c headers not including bits/c++config.h first. We can easily fix that. Why did cerrno

[Bug libstdc++/31117] c++locale.o thread-unsafe in libstdc++

2007-03-15 Thread craig dot lawson at centrify dot com
--- Comment #25 from craig dot lawson at centrify dot com 2007-03-15 20:28 --- (In reply to comment #24) Oh, that's excellent news, because we have to include bits/c++config.h first in cerrno anyway... But now you make me curious!!! If you look at c++config.h it doesn't appear do

[Bug libstdc++/31117] c++locale.o thread-unsafe in libstdc++

2007-03-15 Thread craig dot lawson at centrify dot com
--- Comment #27 from craig dot lawson at centrify dot com 2007-03-15 21:17 --- (In reply to comment #26) I understand. I'll collect this information from the systems I have, and then post it here ... -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31117

[Bug libstdc++/31117] c++locale.o thread-unsafe in libstdc++

2007-03-14 Thread craig dot lawson at centrify dot com
--- Comment #10 from craig dot lawson at centrify dot com 2007-03-14 18:13 --- Found it. The problem is that the library is not be ing properly compiled for multi-threaded use, but that by some luck basic_file.cc happened to be compiled that way anyway. c++locale.cc was not so lucky

[Bug c++/31177] New: make install fails on Solaris 10 SPARC

2007-03-14 Thread craig dot lawson at centrify dot com
10 SPARC Product: gcc Version: 4.1.2 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++ AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: craig dot lawson at centrify dot com http://gcc.gnu.org

[Bug target/31177] make install fails on Solaris 10 SPARC

2007-03-14 Thread craig dot lawson at centrify dot com
--- Comment #3 from craig dot lawson at centrify dot com 2007-03-14 20:00 --- Yeah... I missed that one. I have bash installed. If bash works, why can't the configure script find it automatically? -- craig dot lawson at centrify dot com changed: What|Removed

[Bug target/31177] make install fails on Solaris 10 SPARC

2007-03-14 Thread craig dot lawson at centrify dot com
--- Comment #4 from craig dot lawson at centrify dot com 2007-03-14 20:01 --- Yeah... I missed that one. I have bash installed. If bash works, why can't the configure script find it automatically? -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31177

[Bug target/31177] make install fails on Solaris 10 SPARC

2007-03-14 Thread craig dot lawson at centrify dot com
--- Comment #5 from craig dot lawson at centrify dot com 2007-03-14 20:01 --- (oops. hit verified by mistake.) -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31177

[Bug libstdc++/31117] c++locale.o thread-unsafe in libstdc++

2007-03-14 Thread craig dot lawson at centrify dot com
--- Comment #13 from craig dot lawson at centrify dot com 2007-03-15 02:02 --- (reply to comment #11) Shear luck: Fair enough. I don't claim to understand it all, either, especially how it came to be this way. What appears to be happening on Solaris 10 is that bits/c++config.h

[Bug libstdc++/31117] c++locale.o thread-unsafe in libstdc++

2007-03-12 Thread craig dot lawson at centrify dot com
--- Comment #4 from craig dot lawson at centrify dot com 2007-03-12 18:26 --- Perhaps there are different degrees of thread safety here. If I write my multi-threaded program such that only one thread does stream I/O with libstdc++, I would expect it to operate safely with respect

[Bug c/31153] New: -Wconversion does not catch return value mismatch

2007-03-12 Thread craig dot lawson at centrify dot com
does not catch return value mismatch Product: gcc Version: unknown Status: UNCONFIRMED Severity: normal Priority: P3 Component: c AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: craig dot lawson at centrify dot

[Bug c/31153] -Wconversion does not catch return value mismatch

2007-03-12 Thread craig dot lawson at centrify dot com
--- Comment #1 from craig dot lawson at centrify dot com 2007-03-12 18:53 --- Test program (Create a New Attachment is not working for me today): const int i = -1; unsigned int slip_one_by() { return i; } unsigned int caught_me() { return -1; } $ gcc -c unsigned_return.c

[Bug libstdc++/31117] c++locale.o thread-unsafe in libstdc++

2007-03-12 Thread craig dot lawson at centrify dot com
--- Comment #6 from craig dot lawson at centrify dot com 2007-03-12 19:23 --- Anyway, what happens in the GNU systems is that errno is a per-thread variable and the __convert_to_v code has to do nothing special, just safely use it. I agree. The problem is that this is not happening

[Bug libstdc++/31117] c++locale.o thread-unsafe in libstdc++

2007-03-12 Thread craig dot lawson at centrify dot com
--- Comment #8 from craig dot lawson at centrify dot com 2007-03-12 20:07 --- Not on Linux: correct. I could give it a try, but I haven't built this library before. If you could point me to a brief how-to, I could give it a try on a Solaris 10 SPARC. Rather than code around it, I

[Bug libstdc++/31117] New: c++locale.o thread-unsafe in libstdc++

2007-03-09 Thread craig dot lawson at centrify dot com
dot lawson at centrify dot com http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31117

[Bug libstdc++/31117] c++locale.o thread-unsafe in libstdc++

2007-03-09 Thread craig dot lawson at centrify dot com
--- Comment #2 from craig dot lawson at centrify dot com 2007-03-10 00:15 --- Seems like that define should come from gcc's -pthread option so it applies to all source files. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31117