-

   rss_herm1t

 - e-mail

 

 -

 LiveInternet.ru:
: 15.10.2009
:
:
: 1

:


, 30 2018 . 18:43 +
- , - . ("Recompiling the metamorphism", 2012). . ˸ , . abstract syntax tree, . , gas. , - . : constant unfolding, top level declarations, , CFG. -. :-) , , :
static void *copy_dict(void *v, void *(*ele)(void*))
{
	Dict *r = NULL;
	if (v == NULL || ((r = hash_get(v)) != NULL))
		return r;
	r = store(v, sizeof(Dict));
	r->map = copy_map(r->map, ele);
	r->key = copy_vector(r->key, copy_string);
	return r;
}

static void *copy_type(void *v)
{
	Type *r = NULL;
	if (v == NULL || ((r = hash_get(v)) != NULL))
		return r;
	r = store(v, sizeof(Type));
	r->ptr = copy_type(r->ptr);
	r->fields = copy_dict(r->fields, copy_type);
	r->rettype = copy_type(r->rettype);
	r->params = copy_vector(r->params, copy_type);
	return r;
}


http://lj.rossia.org/users/herm1t/80970.html


: 13

: [1] []
 

:
: 

: ( )

:

  URL