if (size < sizeof(Embryo_Header)) return NULL;
if (size < (int)sizeof(Embryo_Header)) return NULL;
embryo_program_new(void *data, int size){   Embryo_Program *ep;   void *code_data;      if (size < sizeof(Embryo_Header)) return NULL;      ep = calloc(1, sizeof(Embryo_Program));   if (!ep) return NULL;      code_data = malloc(size);   if (!code_data)     {	free(ep);	return NULL;     }   memcpy(code_data, data, size);   if (_embryo_program_init(ep, code_data)) return ep;   free(code_data);   free(ep);   return NULL;}