90 lines
		
	
	
	
		
			1.2 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
			
		
		
	
	
			90 lines
		
	
	
	
		
			1.2 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
@@
 | 
						|
expression dst, src, n, E;
 | 
						|
@@
 | 
						|
  memcpy(dst, src, n * sizeof(
 | 
						|
- E[...]
 | 
						|
+ *(E)
 | 
						|
  ))
 | 
						|
 | 
						|
@@
 | 
						|
type T;
 | 
						|
T *ptr;
 | 
						|
T[] arr;
 | 
						|
expression E, n;
 | 
						|
@@
 | 
						|
(
 | 
						|
  memcpy(ptr, E,
 | 
						|
- n * sizeof(*(ptr))
 | 
						|
+ n * sizeof(T)
 | 
						|
  )
 | 
						|
|
 | 
						|
  memcpy(arr, E,
 | 
						|
- n * sizeof(*(arr))
 | 
						|
+ n * sizeof(T)
 | 
						|
  )
 | 
						|
|
 | 
						|
  memcpy(E, ptr,
 | 
						|
- n * sizeof(*(ptr))
 | 
						|
+ n * sizeof(T)
 | 
						|
  )
 | 
						|
|
 | 
						|
  memcpy(E, arr,
 | 
						|
- n * sizeof(*(arr))
 | 
						|
+ n * sizeof(T)
 | 
						|
  )
 | 
						|
)
 | 
						|
 | 
						|
@@
 | 
						|
type T;
 | 
						|
T *dst_ptr;
 | 
						|
T *src_ptr;
 | 
						|
T[] dst_arr;
 | 
						|
T[] src_arr;
 | 
						|
expression n;
 | 
						|
@@
 | 
						|
(
 | 
						|
- memcpy(dst_ptr, src_ptr, (n) * sizeof(T))
 | 
						|
+ COPY_ARRAY(dst_ptr, src_ptr, n)
 | 
						|
|
 | 
						|
- memcpy(dst_ptr, src_arr, (n) * sizeof(T))
 | 
						|
+ COPY_ARRAY(dst_ptr, src_arr, n)
 | 
						|
|
 | 
						|
- memcpy(dst_arr, src_ptr, (n) * sizeof(T))
 | 
						|
+ COPY_ARRAY(dst_arr, src_ptr, n)
 | 
						|
|
 | 
						|
- memcpy(dst_arr, src_arr, (n) * sizeof(T))
 | 
						|
+ COPY_ARRAY(dst_arr, src_arr, n)
 | 
						|
)
 | 
						|
 | 
						|
@@
 | 
						|
type T;
 | 
						|
T *dst;
 | 
						|
T *src;
 | 
						|
expression n;
 | 
						|
@@
 | 
						|
(
 | 
						|
- memmove(dst, src, (n) * sizeof(*dst));
 | 
						|
+ MOVE_ARRAY(dst, src, n);
 | 
						|
|
 | 
						|
- memmove(dst, src, (n) * sizeof(*src));
 | 
						|
+ MOVE_ARRAY(dst, src, n);
 | 
						|
|
 | 
						|
- memmove(dst, src, (n) * sizeof(T));
 | 
						|
+ MOVE_ARRAY(dst, src, n);
 | 
						|
)
 | 
						|
 | 
						|
@@
 | 
						|
type T;
 | 
						|
T *ptr;
 | 
						|
expression n;
 | 
						|
@@
 | 
						|
- ptr = xmalloc((n) * sizeof(*ptr));
 | 
						|
+ ALLOC_ARRAY(ptr, n);
 | 
						|
 | 
						|
@@
 | 
						|
type T;
 | 
						|
T *ptr;
 | 
						|
expression n;
 | 
						|
@@
 | 
						|
- ptr = xmalloc((n) * sizeof(T));
 | 
						|
+ ALLOC_ARRAY(ptr, n);
 |