On Tuesday, June 12, 2001, at 12:54  PM, Nicholas Clark wrote:

> On Tue, Jun 12, 2001 at 12:41:27PM -0700, Edward Moy wrote:
>> I made a private copy of stdint.h and changed:
>>
>> < #define INT32_MIN        -2147483648
>> ---
>>> #define INT32_MIN        -2147483647
>>
>> After setting cflags to use my stdint.h, I rebuilt, and the build
>> succeeded!  There were no "decimal constant is so large that it is
>> unsigned" warnings.
>>
>> I ran make test, and (after remembering to unsetenv LANG, which without 
>> it,
>>   causes bogus test failures), I get:
>>
>>      Failed 3 test scripts out of 371, 99.19% okay.
>
> try
>
> #define INT32_MIN -2147483647-1
>
> It stands a reasonable chance of fixing some problems you may have found.
> [In that I know some bits of perl's implementation are assuming that 
> IV_MIN
> is a negative power of 2, and that -IV_MIN [the value] can be got
> with the expression (UV)-IV_MIN
> And some are assuming that (UV)-IV_MIN is bigger than IV_MAX. Not equal/
> And these assumptions may break. They may well be wrong assumptions, but
> they are there. And how many systems with 1s complement integers or
> sign and magnitude integers are there out there wanting to run perl?
>
> [these things will work on a 2s complement system, but is undefined 
> behaviour
> by the gospel according to ANSI.]

I should have stated that I used -2147483647 just to see if it would get 
passed the current roadblock, not as a permanent solution.  But I did 
recompile with -2147483647-1 and it also finishes building.  3 test 
scripts still fail:

pragma/warnings.......PROG:
# pp_hot.c [pp_print]
use warnings 'io' ;
print STDIN "anc";
print <STDOUT>;
print <STDERR>;
open(FOO, ">&STDOUT") and print <FOO>;
print getc(STDERR);
print getc(FOO);
####################################################################
# The next test is known to fail on some systems (Linux+old glibc, #
# some *BSDs (including Mac OS X and NeXT), among others.          #
# We skip it for now (on the grounds that it is "just" a warning). #
####################################################################
#read(FOO,$_,1);
no warnings 'io' ;
print STDIN "anc";
EXPECTED:
Filehandle STDIN opened only for input at - line 3.
Filehandle STDOUT opened only for output at - line 4.
Filehandle STDERR opened only for output at - line 5.
Filehandle FOO opened only for output at - line 6.
Filehandle STDERR opened only for output at - line 7.
Filehandle FOO opened only for output at - line 8.
GOT:
Filehandle STDIN opened only for input at - line 3.
Filehandle STDOUT opened only for output at - line 4.
Filehandle STDERR opened only for output at - line 5.
Filehandle STDERR opened only for output at - line 7.
FAILED at test 308
lib/db-btree..........FAILED at test 0
lib/posix.............FAILED at test 10
--------------------------------------------------------------------------
Edward Moy
Apple Computer, Inc.
[EMAIL PROTECTED]

(This message is from me as a reader of this list, and not a statement
from Apple.)

Reply via email to