CODE_HASH_LEAVE(existing) = code->chars.size();
code->chars.insert(code->chars.end(), str, str + strlen(str) + 1);
CODE_HASH_LEAVE(existing) = code->chars.size();
code->chars.insert(code->chars.end(), str, str + strlen(str) + 1);
util_htseth(code->string_cache, str, hash, CODE_HASH_ENTER(existing));
return CODE_HASH_LEAVE(existing);
util_htseth(code->string_cache, str, hash, CODE_HASH_ENTER(existing));
return CODE_HASH_LEAVE(existing);
bool code_write(code_t *code, const char *filename, const char *lnofile) {
prog_header_t code_header;
bool code_write(code_t *code, const char *filename, const char *lnofile) {
prog_header_t code_header;
code_create_header(code, &code_header, filename, lnofile);
code_create_header(code, &code_header, filename, lnofile);