Casting to IV doesn't actually hurt anything (unless there is an alignment
issue); however, casting to char* is the more idiomatic way of doing it.
I'll commit this unless Simon says he is going to handle it in "The Great
Renaming".

Tanton 

-----Original Message-----
From: Bryan C. Warnock
To: [EMAIL PROTECTED]
Sent: 9/30/2001 10:31 PM
Subject: [PATCH] Bad cast

Casting to IV is not the way to do this.

Index: strnative.c
===================================================================
RCS file: /home/perlcvs/parrot/strnative.c,v
retrieving revision 1.12
diff -c -r1.12 strnative.c
*** strnative.c 2001/09/18 13:42:41     1.12
--- strnative.c 2001/10/01 03:28:58
***************
*** 44,50 ****
      }
      /* b is now in native format */
      string_grow(a, a->strlen + b->strlen);
!     mem_sys_memcopy((void*)((IV)a->bufstart + a->strlen), b->bufstart,

b->strlen);
      a->strlen = a->bufused = a->strlen + b->strlen;
      return a;
  }
--- 44,51 ----
      }
      /* b is now in native format */
      string_grow(a, a->strlen + b->strlen);
!     mem_sys_memcopy((void *)((char *)a->bufstart + a->strlen),
!                         b->bufstart, b->strlen);
      a->strlen = a->bufused = a->strlen + b->strlen;
      return a;
  }
***************
*** 73,79 ****

      /* Offset and length have already been "normalized" */
      string_grow(dest, length);
!     mem_sys_memcopy(dest->bufstart, (void*)((IV)src->bufstart +
offset), 
length);
      dest->strlen = dest->bufused = length;

      return dest;
--- 74,81 ----

      /* Offset and length have already been "normalized" */
      string_grow(dest, length);
!     mem_sys_memcopy(dest->bufstart,
!                         (void *)((char *)src->bufstart + offset),
length);
      dest->strlen = dest->bufused = length;
 
      return dest;
-- 
Bryan C. Warnock
[EMAIL PROTECTED]

Reply via email to