On Fri, Sep 22, 2000 at 02:05:32PM +0200, Lehnert, Hartmut wrote:
> I 've built OpenSSL 0.9.6-beta3 on Sun Solaris 7 and used gcc version
> 2.95.2.
I've tried to compile OpenSSL 0.9.6 in that configuration, and even
this did not work automatically because of compiler bugs.
Compiling tmpdiff.c works only if -O is substituted for -O3;
both the original -O3 and -O2 lead to the following error message:
gcc: Internal compiler error: program cc1 got fatal signal 11
A similar error occured for b_print.c. Also the line "num = SSIZE_MAX"
in cryptio/bio/bss_bio.c (where num is an ssize_t) got a warning
bss_bio.c:258: warning: overflow in implicit constant conversion
(similarly for line 419). Close examination by using "#if"s showed
that all of the following statements are true (according to the
preprocessor):
SSIZE_MAX == LONG_MAX
LONG_MAX != INT_MAX
LONG_MAX>>32 == INT_MAX
LONG_BIT == 32
WORD_BIT == 32
According /usr/include/limits.h, LONG_MAX and INT_MAX (and, of course,
SSIZE_MAX) should have the same value if _LP64 is not defined (which
it isn't when bss_bio.c is compiled); and if _LP64 were defined,
LONG_BIT would have to be 64.
So it appears that this compiler is utterly broken. Maybe there's
something wrong in the system header files or the OpenSSL header files
or the combination of these, I don't have time right now to go into
this in that much detail. OpenSSL compiled with Sun's WorkShop
Compilers 4.2 works without problems so far. (I usually use gcc to
compile the applications, so gcc is not totally broken.)
______________________________________________________________________
OpenSSL Project http://www.openssl.org
Development Mailing List [EMAIL PROTECTED]
Automated List Manager [EMAIL PROTECTED]