Mercurial > repos > rhope
comparison runtime/array.c @ 53:70af7fa155d0
Cleaned up some C warnings and added a simple compile script
author | Mike Pavone <pavone@retrodev.com> |
---|---|
date | Thu, 29 Apr 2010 04:32:54 +0000 |
parents | 3e20ed8959c4 |
children | 4d5ea487f810 |
comparison
equal
deleted
inserted
replaced
52:079200bc3e75 | 53:70af7fa155d0 |
---|---|
14 } | 14 } |
15 | 15 |
16 object * _internal_array_getboxed(object * array, int32_t index) | 16 object * _internal_array_getboxed(object * array, int32_t index) |
17 { | 17 { |
18 object * ret; | 18 object * ret; |
19 object ** intarr = (object *)(((char *) array) + sizeof(t_Array)); | 19 object ** intarr = (object **)(((char *) array) + sizeof(t_Array)); |
20 ret = add_ref(intarr[index]); | 20 ret = add_ref(intarr[index]); |
21 release_ref(array); | 21 release_ref(array); |
22 return ret; | 22 return ret; |
23 } | 23 } |
24 | 24 |
25 void _internal_array_setboxed(object *array, int32_t index, object * val) | 25 void _internal_array_setboxed(object *array, int32_t index, object * val) |
26 { | 26 { |
27 object ** intarr = (object *)(((char *) array) + sizeof(t_Array)); | 27 object ** intarr = (object **)(((char *) array) + sizeof(t_Array)); |
28 intarr[index] = val; | 28 intarr[index] = val; |
29 } | 29 } |
30 | 30 |
31 object *_internal_array_allocboxed(int32_t size) | 31 object *_internal_array_allocboxed(int32_t size) |
32 { | 32 { |
33 t_Array * ret = (t_Array *)new_multisize(TYPE_ARRAY, sizeof(nt_Array)+sizeof(object *)*size); | 33 t_Array * ret = (t_Array *)new_multisize(TYPE_ARRAY, sizeof(nt_Array)+sizeof(object *)*size); |
34 ret->payload.Length = 0; | 34 ret->payload.Length = 0; |
35 ret->payload.Storage = size; | 35 ret->payload.Storage = size; |
36 ret->payload.Eltype = (t_Blueprint *)make_Blueprint(0); | 36 ret->payload.Eltype = (t_Blueprint *)make_Blueprint(0); |
37 | 37 |
38 return ret; | 38 return (object *)ret; |
39 } | 39 } |
40 | 40 |
41 object * _internal_array_allocnaked(int32_t size , object * type) | 41 object * _internal_array_allocnaked(int32_t size , object * type) |
42 { | 42 { |
43 t_Array * ret; | 43 t_Array * ret; |