Explicitly specify the char arguments to __objc_code_char and __objc_code_char as...
authorOvidiu Predescu <ovidiu@cup.hp.com>
Fri, 26 Mar 1999 23:44:04 +0000 (23:44 +0000)
committerOvidiu Predescu <ovidiu@gcc.gnu.org>
Fri, 26 Mar 1999 23:44:04 +0000 (23:44 +0000)
From-SVN: r26008

libobjc/ChangeLog
libobjc/archive.c

index 29fb2cfd2555e52483c6d8a296cce585b6a8f448..8becfbc52fbde16d86ee803b8558fd84fa71f5a5 100644 (file)
@@ -1,3 +1,9 @@
+Fri Mar 26 23:41:07 1999 Ovidiu Predescu <ovidiu@cup.hp.com>
+
+       * archive.c (__objc_code_char, __objc_write_char): Explicitly specify
+       the char as being signed (patch from Daniel Jacobowitz
+       <drow@false.org>).
+
 Wed Mar 24 22:41:28 1999  Mumit Khan  <khan@xraylith.wisc.edu>
 
        * configure.in (AC_PREREQ): Update to 2.13.
index 626f6bafea3e2324a1b5ae2436c533d41eee1114..10106c1145e7f2880c4929a4031821cd81944b51 100644 (file)
@@ -91,7 +91,7 @@ objc_write_unsigned_char (struct objc_typed_stream* stream,
 }
 
 static __inline__ int
-__objc_code_char (unsigned char* buf, char val)
+__objc_code_char (unsigned char* buf, signed char val)
 {
   if (val >= 0)
     return __objc_code_unsigned_char (buf, val);
@@ -104,7 +104,7 @@ __objc_code_char (unsigned char* buf, char val)
 }
 
 int
-objc_write_char (struct objc_typed_stream* stream, char value)
+objc_write_char (struct objc_typed_stream* stream, signed char value)
 {
   unsigned char buf[sizeof (char)+1];
   int len = __objc_code_char (buf, value);
@@ -1000,7 +1000,7 @@ objc_write_type(TypedStream* stream, const char* type, const void* data)
     break;
 
   case _C_CHR:
-    return objc_write_char(stream, *(char*)data);
+    return objc_write_char(stream, *(signed char*)data);
     break;
     
   case _C_UCHR: